87 lines
3.9 KiB
Java
87 lines
3.9 KiB
Java
package com.discord.stores;
|
|
|
|
import android.content.Context;
|
|
import com.discord.models.domain.ModelBan;
|
|
import com.discord.stores.updates.ObservationDeck;
|
|
import com.discord.utilities.rest.RestAPI;
|
|
import com.discord.utilities.rx.ObservableExtensionsKt;
|
|
import d0.z.d.m;
|
|
import java.util.HashMap;
|
|
import java.util.Iterator;
|
|
import java.util.Map;
|
|
import kotlin.jvm.functions.Function0;
|
|
import kotlin.jvm.functions.Function1;
|
|
import rx.Observable;
|
|
/* compiled from: StoreBans.kt */
|
|
public final class StoreBans extends StoreV2 {
|
|
private final HashMap<Long, HashMap<Long, ModelBan>> bannedUsers = new HashMap<>();
|
|
private HashMap<Long, HashMap<Long, ModelBan>> bannedUsersSnapshot = new HashMap<>();
|
|
private final Dispatcher dispatcher;
|
|
private final ObservationDeck observationDeck;
|
|
|
|
public StoreBans(Dispatcher dispatcher, ObservationDeck observationDeck) {
|
|
m.checkNotNullParameter(dispatcher, "dispatcher");
|
|
m.checkNotNullParameter(observationDeck, "observationDeck");
|
|
this.dispatcher = dispatcher;
|
|
this.observationDeck = observationDeck;
|
|
}
|
|
|
|
public static final /* synthetic */ HashMap access$getBannedUsers$p(StoreBans storeBans) {
|
|
return storeBans.bannedUsers;
|
|
}
|
|
|
|
public static final /* synthetic */ HashMap access$getBannedUsersSnapshot$p(StoreBans storeBans) {
|
|
return storeBans.bannedUsersSnapshot;
|
|
}
|
|
|
|
public static final /* synthetic */ Dispatcher access$getDispatcher$p(StoreBans storeBans) {
|
|
return storeBans.dispatcher;
|
|
}
|
|
|
|
public static final /* synthetic */ void access$setBannedUsersSnapshot$p(StoreBans storeBans, HashMap hashMap) {
|
|
storeBans.bannedUsersSnapshot = hashMap;
|
|
}
|
|
|
|
@StoreThread
|
|
public final void handleBanAdd(ModelBan modelBan) {
|
|
m.checkNotNullParameter(modelBan, "ban");
|
|
if (this.bannedUsers.get(Long.valueOf(modelBan.getGuildId())) != null) {
|
|
HashMap<Long, ModelBan> hashMap = this.bannedUsers.get(Long.valueOf(modelBan.getGuildId()));
|
|
if (hashMap != null) {
|
|
hashMap.put(Long.valueOf(modelBan.getUser().i()), modelBan);
|
|
}
|
|
markChanged();
|
|
}
|
|
}
|
|
|
|
@StoreThread
|
|
public final void handleBanRemove(ModelBan modelBan) {
|
|
m.checkNotNullParameter(modelBan, "ban");
|
|
if (this.bannedUsers.get(Long.valueOf(modelBan.getGuildId())) != null) {
|
|
HashMap<Long, ModelBan> hashMap = this.bannedUsers.get(Long.valueOf(modelBan.getGuildId()));
|
|
if (hashMap != null) {
|
|
hashMap.remove(Long.valueOf(modelBan.getUser().i()));
|
|
}
|
|
markChanged();
|
|
}
|
|
}
|
|
|
|
public final Observable<Map<Long, ModelBan>> observeBans(long j) {
|
|
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().getBans(j), false, 1, null), StoreBans.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new StoreBans$observeBans$1(this, j), 62, (Object) null);
|
|
return ObservationDeck.connectRx$default(this.observationDeck, new ObservationDeck.UpdateSource[]{this}, false, null, null, new StoreBans$observeBans$2(this, j), 14, null);
|
|
}
|
|
|
|
/* JADX DEBUG: Multi-variable search result rejected for r0v0, resolved type: java.util.HashMap<java.lang.Long, java.util.HashMap<java.lang.Long, com.discord.models.domain.ModelBan>> */
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
@Override // com.discord.stores.StoreV2
|
|
public void snapshotData() {
|
|
super.snapshotData();
|
|
HashMap<Long, HashMap<Long, ModelBan>> hashMap = new HashMap<>(this.bannedUsers);
|
|
Iterator<T> it = this.bannedUsers.entrySet().iterator();
|
|
while (it.hasNext()) {
|
|
Map.Entry entry = (Map.Entry) it.next();
|
|
hashMap.put(entry.getKey(), new HashMap((HashMap) entry.getValue()));
|
|
}
|
|
this.bannedUsersSnapshot = hashMap;
|
|
}
|
|
}
|