102 lines
4.4 KiB
Java
102 lines
4.4 KiB
Java
|
package com.discord.stores;
|
||
|
|
||
|
import com.discord.api.directory.DirectoryEntry;
|
||
|
import com.discord.stores.updates.ObservationDeck;
|
||
|
import com.discord.stores.utilities.RestCallState;
|
||
|
import com.discord.stores.utilities.RestCallStateKt;
|
||
|
import com.discord.utilities.persister.Persister;
|
||
|
import com.discord.utilities.rest.RestAPI;
|
||
|
import d0.t.h0;
|
||
|
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: StoreDirectories.kt */
|
||
|
public final class StoreDirectories extends StoreV2 {
|
||
|
public static final Companion Companion = new Companion(null);
|
||
|
private static final String DISCORD_HUB_VERIFICATION_CLICKED_KEY = "hub_verification_clicked_key";
|
||
|
private Map<Long, RestCallState<List<DirectoryEntry>>> directoriesMap;
|
||
|
private Map<Long, ? extends RestCallState<? extends List<DirectoryEntry>>> directoriesMapSnapshot;
|
||
|
private final Persister<Boolean> discordHubClickedPersister;
|
||
|
private final Dispatcher dispatcher;
|
||
|
private final ObservationDeck observationDeck;
|
||
|
private final RestAPI restApi;
|
||
|
|
||
|
/* compiled from: StoreDirectories.kt */
|
||
|
public static final class Companion {
|
||
|
private Companion() {
|
||
|
}
|
||
|
|
||
|
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
|
||
|
this();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public StoreDirectories(Dispatcher dispatcher, ObservationDeck observationDeck, RestAPI restAPI) {
|
||
|
m.checkNotNullParameter(dispatcher, "dispatcher");
|
||
|
m.checkNotNullParameter(observationDeck, "observationDeck");
|
||
|
m.checkNotNullParameter(restAPI, "restApi");
|
||
|
this.dispatcher = dispatcher;
|
||
|
this.observationDeck = observationDeck;
|
||
|
this.restApi = restAPI;
|
||
|
this.directoriesMapSnapshot = h0.emptyMap();
|
||
|
this.directoriesMap = new LinkedHashMap();
|
||
|
this.discordHubClickedPersister = new Persister<>("hub_verification_clicked_key", Boolean.FALSE);
|
||
|
}
|
||
|
|
||
|
/* JADX INFO: this call moved to the top of the method (can break code semantics) */
|
||
|
public /* synthetic */ StoreDirectories(Dispatcher dispatcher, ObservationDeck observationDeck, RestAPI restAPI, int i, DefaultConstructorMarker defaultConstructorMarker) {
|
||
|
this(dispatcher, observationDeck, (i & 4) != 0 ? RestAPI.Companion.getApi() : restAPI);
|
||
|
}
|
||
|
|
||
|
public static final /* synthetic */ Map access$getDirectoriesMap$p(StoreDirectories storeDirectories) {
|
||
|
return storeDirectories.directoriesMap;
|
||
|
}
|
||
|
|
||
|
public static final /* synthetic */ Map access$getDirectoriesMapSnapshot$p(StoreDirectories storeDirectories) {
|
||
|
return storeDirectories.directoriesMapSnapshot;
|
||
|
}
|
||
|
|
||
|
public static final /* synthetic */ Dispatcher access$getDispatcher$p(StoreDirectories storeDirectories) {
|
||
|
return storeDirectories.dispatcher;
|
||
|
}
|
||
|
|
||
|
public static final /* synthetic */ void access$setDirectoriesMap$p(StoreDirectories storeDirectories, Map map) {
|
||
|
storeDirectories.directoriesMap = map;
|
||
|
}
|
||
|
|
||
|
public static final /* synthetic */ void access$setDirectoriesMapSnapshot$p(StoreDirectories storeDirectories, Map map) {
|
||
|
storeDirectories.directoriesMapSnapshot = map;
|
||
|
}
|
||
|
|
||
|
public final void fetchDirectoriesForChannel(long j) {
|
||
|
RestCallStateKt.executeRequest(this.restApi.getDirectoryEntries(j), new StoreDirectories$fetchDirectoriesForChannel$1(this, j));
|
||
|
}
|
||
|
|
||
|
public final RestCallState<List<DirectoryEntry>> getDirectoriesForChannel(long j) {
|
||
|
return (RestCallState) this.directoriesMapSnapshot.get(Long.valueOf(j));
|
||
|
}
|
||
|
|
||
|
public final void markDiscordHubClicked() {
|
||
|
Persister.set$default(this.discordHubClickedPersister, Boolean.TRUE, false, 2, null);
|
||
|
}
|
||
|
|
||
|
public final ObservationDeck.Observer observeDirectoriesForChannel(long j) {
|
||
|
return ObservationDeck.connect$default(this.observationDeck, new ObservationDeck.UpdateSource[]{this}, false, null, new StoreDirectories$observeDirectoriesForChannel$1(this, j), 6, null);
|
||
|
}
|
||
|
|
||
|
public final Observable<Boolean> observeDiscordHubClicked() {
|
||
|
Observable<Boolean> r = this.discordHubClickedPersister.getObservable().r();
|
||
|
m.checkNotNullExpressionValue(r, "discordHubClickedPersist… .distinctUntilChanged()");
|
||
|
return r;
|
||
|
}
|
||
|
|
||
|
@Override // com.discord.stores.StoreV2
|
||
|
public void snapshotData() {
|
||
|
this.directoriesMapSnapshot = new HashMap(this.directoriesMap);
|
||
|
}
|
||
|
}
|