forked from Juby210/discord-jadx
131 lines
6.0 KiB
Java
131 lines
6.0 KiB
Java
package com.discord.stores;
|
|
|
|
import com.discord.BuildConfig;
|
|
import com.discord.api.embeddedactivities.EmbeddedActivityInGuild;
|
|
import com.discord.api.embeddedactivities.EmbeddedActivityInboundUpdate;
|
|
import com.discord.api.guild.Guild;
|
|
import com.discord.models.domain.ModelPayload;
|
|
import com.discord.models.embeddedactivities.EmbeddedActivity;
|
|
import com.discord.stores.updates.ObservationDeck;
|
|
import com.discord.stores.updates.ObservationDeckProvider;
|
|
import d0.t.h0;
|
|
import d0.t.n;
|
|
import d0.z.d.m;
|
|
import java.util.HashMap;
|
|
import java.util.LinkedHashMap;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import rx.Observable;
|
|
/* compiled from: StoreEmbeddedActivities.kt */
|
|
public final class StoreEmbeddedActivities extends StoreV2 {
|
|
private final Map<Long, Map<Long, EmbeddedActivity>> embeddedActivitiesByChannel;
|
|
private Map<Long, ? extends Map<Long, EmbeddedActivity>> embeddedActivitiesByChannelSnapshot;
|
|
private final ObservationDeck observationDeck;
|
|
|
|
public StoreEmbeddedActivities() {
|
|
this(null, 1, null);
|
|
}
|
|
|
|
public StoreEmbeddedActivities(ObservationDeck observationDeck) {
|
|
m.checkNotNullParameter(observationDeck, "observationDeck");
|
|
this.observationDeck = observationDeck;
|
|
this.embeddedActivitiesByChannelSnapshot = h0.emptyMap();
|
|
this.embeddedActivitiesByChannel = new LinkedHashMap();
|
|
}
|
|
|
|
/* JADX INFO: this call moved to the top of the method (can break code semantics) */
|
|
public /* synthetic */ StoreEmbeddedActivities(ObservationDeck observationDeck, int i, DefaultConstructorMarker defaultConstructorMarker) {
|
|
this((i & 1) != 0 ? ObservationDeckProvider.get() : observationDeck);
|
|
}
|
|
|
|
private final String getUrlForApplication(long j) {
|
|
if (BuildConfig.EMBEDDED_ACTIVITY_APPLICATION_HOST.length() == 0) {
|
|
return null;
|
|
}
|
|
return "https://" + j + '.' + BuildConfig.EMBEDDED_ACTIVITY_APPLICATION_HOST;
|
|
}
|
|
|
|
@StoreThread
|
|
private final void handleEmbeddedActivitiesForGuild(Guild guild) {
|
|
List<EmbeddedActivityInGuild> j = guild.j();
|
|
if (j == null) {
|
|
j = n.emptyList();
|
|
}
|
|
for (EmbeddedActivityInGuild embeddedActivityInGuild : j) {
|
|
handleEmbeddedActivityForChannel(embeddedActivityInGuild.a(), embeddedActivityInGuild.c(), embeddedActivityInGuild.b(), guild.r());
|
|
}
|
|
}
|
|
|
|
@StoreThread
|
|
private final void handleEmbeddedActivityForChannel(long j, List<Long> list, com.discord.api.embeddedactivities.EmbeddedActivity embeddedActivity, long j2) {
|
|
String urlForApplication = getUrlForApplication(embeddedActivity.a());
|
|
if (urlForApplication != null) {
|
|
EmbeddedActivity fromApiEmbeddedActivity = EmbeddedActivity.Companion.fromApiEmbeddedActivity(embeddedActivity, list, urlForApplication, j2);
|
|
Map<Long, EmbeddedActivity> map = this.embeddedActivitiesByChannel.get(Long.valueOf(j));
|
|
if (map == null) {
|
|
map = new LinkedHashMap<>();
|
|
}
|
|
long applicationId = fromApiEmbeddedActivity.getApplicationId();
|
|
if (!list.isEmpty()) {
|
|
map.put(Long.valueOf(applicationId), fromApiEmbeddedActivity);
|
|
} else {
|
|
map.remove(Long.valueOf(applicationId));
|
|
}
|
|
this.embeddedActivitiesByChannel.put(Long.valueOf(j), map);
|
|
markChanged();
|
|
}
|
|
}
|
|
|
|
/* JADX DEBUG: Type inference failed for r0v0. Raw type applied. Possible types: java.util.Map<java.lang.Long, ? extends java.util.Map<java.lang.Long, com.discord.models.embeddedactivities.EmbeddedActivity>>, java.util.Map<java.lang.Long, java.util.Map<java.lang.Long, com.discord.models.embeddedactivities.EmbeddedActivity>> */
|
|
public final Map<Long, Map<Long, EmbeddedActivity>> getEmbeddedActivities() {
|
|
return this.embeddedActivitiesByChannelSnapshot;
|
|
}
|
|
|
|
@StoreThread
|
|
public final void handleConnectionOpen(ModelPayload modelPayload) {
|
|
m.checkNotNullParameter(modelPayload, "payload");
|
|
this.embeddedActivitiesByChannel.clear();
|
|
List<Guild> guilds = modelPayload.getGuilds();
|
|
m.checkNotNullExpressionValue(guilds, "payload.guilds");
|
|
for (Guild guild : guilds) {
|
|
m.checkNotNullExpressionValue(guild, "guild");
|
|
handleEmbeddedActivitiesForGuild(guild);
|
|
}
|
|
markChanged();
|
|
}
|
|
|
|
@StoreThread
|
|
public final void handleEmbeddedActivityInboundUpdate(EmbeddedActivityInboundUpdate embeddedActivityInboundUpdate) {
|
|
m.checkNotNullParameter(embeddedActivityInboundUpdate, "embeddedActivityInboundUpdate");
|
|
handleEmbeddedActivityForChannel(embeddedActivityInboundUpdate.a(), embeddedActivityInboundUpdate.d(), embeddedActivityInboundUpdate.b(), embeddedActivityInboundUpdate.c());
|
|
}
|
|
|
|
@StoreThread
|
|
public final void handleGuildCreate(Guild guild) {
|
|
m.checkNotNullParameter(guild, "guild");
|
|
handleEmbeddedActivitiesForGuild(guild);
|
|
}
|
|
|
|
public final Observable<Map<Long, Map<Long, EmbeddedActivity>>> observeEmbeddedActivities() {
|
|
return ObservationDeck.connectRx$default(this.observationDeck, new ObservationDeck.UpdateSource[]{this}, false, null, null, new StoreEmbeddedActivities$observeEmbeddedActivities$1(this), 14, null);
|
|
}
|
|
|
|
public final Observable<Map<Long, EmbeddedActivity>> observeEmbeddedActivitiesForChannel(long j) {
|
|
Observable<R> F = observeEmbeddedActivities().F(new StoreEmbeddedActivities$observeEmbeddedActivitiesForChannel$1(j));
|
|
m.checkNotNullExpressionValue(F, "observeEmbeddedActivitie…] ?: emptyMap()\n }");
|
|
return F;
|
|
}
|
|
|
|
@Override // com.discord.stores.StoreV2
|
|
@StoreThread
|
|
public void snapshotData() {
|
|
super.snapshotData();
|
|
HashMap hashMap = new HashMap();
|
|
for (Map.Entry<Long, Map<Long, EmbeddedActivity>> entry : this.embeddedActivitiesByChannel.entrySet()) {
|
|
hashMap.put(entry.getKey(), new HashMap(entry.getValue()));
|
|
}
|
|
this.embeddedActivitiesByChannelSnapshot = hashMap;
|
|
}
|
|
}
|