discord-jadx/app/src/main/java/com/discord/stores/StoreDirectories.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);
}
}