package com.discord.stores; import com.discord.api.emoji.GuildEmoji; import com.discord.api.emoji.GuildEmojisUpdate; import com.discord.api.guild.Guild; import com.discord.models.domain.ModelPayload; import com.discord.models.domain.emoji.ModelEmojiCustom; import com.discord.models.member.GuildMember; import com.discord.utilities.persister.Persister; import d0.d0.f; import d0.t.g0; import d0.t.h0; import d0.t.n; import d0.t.o; import d0.z.d.m; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import kotlin.Unit; import kotlin.jvm.internal.DefaultConstructorMarker; import rx.Observable; /* compiled from: StoreEmojiCustom.kt */ public final class StoreEmojiCustom extends StoreV2 { public static final Companion Companion = new Companion(null); private static final long NO_ROLE = 0; private final Map> allGuildEmoji = new LinkedHashMap(); private Map> allGuildEmojiSnapshot = h0.emptyMap(); private final Persister>> allowedGuildEmojiPersister = new Persister<>("STORE_EMOJI_AVAILABLE_V5", new HashMap()); private final Map>> allowedGuildEmojis = new LinkedHashMap(); /* renamed from: me reason: collision with root package name */ private long f2118me; private final StoreStream stream; /* compiled from: StoreEmojiCustom.kt */ public static final class Companion { private Companion() { } public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) { this(); } } public StoreEmojiCustom(StoreStream storeStream) { m.checkNotNullParameter(storeStream, "stream"); this.stream = storeStream; } private final void updateAllowedGuildEmojis(long j, List list, Collection collection) { Object obj; Map>> map = this.allowedGuildEmojis; Long valueOf = Long.valueOf(j); Map> map2 = map.get(valueOf); if (map2 == null) { map2 = new HashMap<>(); map.put(valueOf, map2); } Map> map3 = map2; map3.clear(); StoreEmojiCustom$updateAllowedGuildEmojis$1 storeEmojiCustom$updateAllowedGuildEmojis$1 = new StoreEmojiCustom$updateAllowedGuildEmojis$1(this, map3); for (ModelEmojiCustom modelEmojiCustom : collection) { List roles = modelEmojiCustom.getRoles(); if (roles.isEmpty()) { storeEmojiCustom$updateAllowedGuildEmojis$1.invoke(0, modelEmojiCustom); } else { Iterator it = list.iterator(); while (true) { if (!it.hasNext()) { obj = null; break; } obj = it.next(); if (roles.contains(Long.valueOf(((Number) obj).longValue()))) { break; } } Long l = (Long) obj; if (l != null) { storeEmojiCustom$updateAllowedGuildEmojis$1.invoke(l.longValue(), modelEmojiCustom); } } } } private final void updateGlobalEmojis(long j, Collection collection) { if (collection.isEmpty()) { this.allGuildEmoji.remove(Long.valueOf(j)); } else { Map> map = this.allGuildEmoji; Long valueOf = Long.valueOf(j); LinkedHashMap linkedHashMap = new LinkedHashMap(f.coerceAtLeast(g0.mapCapacity(o.collectionSizeOrDefault(collection, 10)), 16)); for (Object obj : collection) { linkedHashMap.put(Long.valueOf(((ModelEmojiCustom) obj).getId()), obj); } map.put(valueOf, linkedHashMap); } markChanged(); } /* JADX DEBUG: Type inference failed for r0v0. Raw type applied. Possible types: java.util.Map>, java.util.Map> */ public final Map> getAllGuildEmoji() { return this.allGuildEmojiSnapshot; } @StoreThread public final Map> getAllGuildEmojiInternal() { return this.allGuildEmoji; } public final Map getEmojiForGuild(long j) { Map map = getAllGuildEmoji().get(Long.valueOf(j)); return map != null ? map : h0.emptyMap(); } @StoreThread public final Map getEmojiForGuildInternal(long j) { return this.allGuildEmoji.get(Long.valueOf(j)); } @StoreThread public final void handleConnectionOpen(ModelPayload modelPayload) { m.checkNotNullParameter(modelPayload, "payload"); this.f2118me = modelPayload.getMe().i(); for (Guild guild : modelPayload.getGuilds()) { m.checkNotNullExpressionValue(guild, "guild"); handleGuildAdd(guild); } } @StoreThread public final void handleEmojiUpdate(GuildEmojisUpdate guildEmojisUpdate) { GuildMember guildMember; m.checkNotNullParameter(guildEmojisUpdate, "emojiUpdate"); long c2 = guildEmojisUpdate.c(); Map map = this.stream.getGuilds$app_productionBetaRelease().getGuildMembersComputedInternal$app_productionBetaRelease().get(Long.valueOf(c2)); List a = guildEmojisUpdate.a(); ArrayList arrayList = new ArrayList(o.collectionSizeOrDefault(a, 10)); for (GuildEmoji guildEmoji : a) { arrayList.add(new ModelEmojiCustom(guildEmoji, c2)); } if (!(map == null || (guildMember = map.get(Long.valueOf(this.f2118me))) == null)) { updateGlobalEmojis(c2, arrayList); updateAllowedGuildEmojis(c2, guildMember.getRoles(), arrayList); } } @StoreThread public final Unit handleGuildAdd(Guild guild) { Object obj; Collection collection; boolean z2; m.checkNotNullParameter(guild, "guild"); List s2 = guild.s(); if (s2 == null) { return null; } Iterator it = s2.iterator(); while (true) { if (!it.hasNext()) { obj = null; break; } obj = it.next(); if (((com.discord.api.guildmember.GuildMember) obj).j().i() == this.f2118me) { z2 = true; continue; } else { z2 = false; continue; } if (z2) { break; } } com.discord.api.guildmember.GuildMember guildMember = (com.discord.api.guildmember.GuildMember) obj; if (guildMember == null) { return null; } long o = guild.o(); List j = guild.j(); if (j != null) { collection = new ArrayList<>(o.collectionSizeOrDefault(j, 10)); for (GuildEmoji guildEmoji : j) { collection.add(new ModelEmojiCustom(guildEmoji, o)); } } else { collection = n.emptyList(); } updateGlobalEmojis(o, collection); updateAllowedGuildEmojis(o, guildMember.i(), collection); return Unit.a; } @StoreThread public final void handleGuildMemberAdd(com.discord.api.guildmember.GuildMember guildMember) { Collection values; m.checkNotNullParameter(guildMember, "member"); if (guildMember.j().i() == this.f2118me) { long c2 = guildMember.c(); Map map = this.allGuildEmoji.get(Long.valueOf(c2)); if (map != null && (values = map.values()) != null) { updateAllowedGuildEmojis(c2, guildMember.i(), values); } } } @StoreThread public final void handleGuildRemove(Guild guild) { m.checkNotNullParameter(guild, "guild"); long o = guild.o(); if (this.allowedGuildEmojis.containsKey(Long.valueOf(o))) { this.allowedGuildEmojis.remove(Long.valueOf(o)); markChanged(); } if (this.allGuildEmoji.containsKey(Long.valueOf(o))) { this.allGuildEmoji.remove(Long.valueOf(o)); markChanged(); } } public final Observable>> observeAllowedGuildEmoji() { return this.allowedGuildEmojiPersister.getObservable(); } @Override // com.discord.stores.StoreV2 public void snapshotData() { super.snapshotData(); LinkedHashMap linkedHashMap = new LinkedHashMap(); for (Map.Entry> entry : this.allGuildEmoji.entrySet()) { linkedHashMap.put(Long.valueOf(entry.getKey().longValue()), h0.toMap(entry.getValue())); } this.allGuildEmojiSnapshot = linkedHashMap; LinkedHashMap linkedHashMap2 = new LinkedHashMap(); for (Map.Entry>> entry2 : this.allowedGuildEmojis.entrySet()) { long longValue = entry2.getKey().longValue(); LinkedHashMap linkedHashMap3 = new LinkedHashMap(); for (Map.Entry> entry3 : entry2.getValue().entrySet()) { linkedHashMap3.putAll(entry3.getValue()); } linkedHashMap2.put(Long.valueOf(longValue), linkedHashMap3); } Persister.set$default(this.allowedGuildEmojiPersister, linkedHashMap2, false, 2, null); } }