discord-jadx/app/src/main/java/com/discord/stores/StoreUserConnections.java

121 lines
6.5 KiB
Java

package com.discord.stores;
import android.content.Context;
import com.discord.models.domain.ModelConnectedAccount;
import com.discord.models.domain.ModelPayload;
import com.discord.restapi.RestAPIParams;
import com.discord.stores.updates.ObservationDeck;
import com.discord.stores.updates.ObservationDeckProvider;
import com.discord.utilities.rest.RestAPI;
import com.discord.utilities.rx.ObservableExtensionsKt;
import d0.z.d.m;
import java.util.ArrayList;
import java.util.List;
import kotlin.jvm.functions.Function0;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.internal.DefaultConstructorMarker;
import rx.Observable;
/* compiled from: StoreUserConnections.kt */
public final class StoreUserConnections extends StoreV2 {
private List<ModelConnectedAccount> connectedAccounts;
private List<ModelConnectedAccount> connectedAccountsSnapshot;
private final Dispatcher dispatcher;
private final ObservationDeck observationDeck;
private final StoreStream stream;
public StoreUserConnections(StoreStream storeStream, Dispatcher dispatcher, ObservationDeck observationDeck) {
m.checkNotNullParameter(storeStream, "stream");
m.checkNotNullParameter(dispatcher, "dispatcher");
m.checkNotNullParameter(observationDeck, "observationDeck");
this.stream = storeStream;
this.dispatcher = dispatcher;
this.observationDeck = observationDeck;
this.connectedAccounts = new ArrayList();
this.connectedAccountsSnapshot = new ArrayList();
}
/* JADX INFO: this call moved to the top of the method (can break code semantics) */
public /* synthetic */ StoreUserConnections(StoreStream storeStream, Dispatcher dispatcher, ObservationDeck observationDeck, int i, DefaultConstructorMarker defaultConstructorMarker) {
this(storeStream, dispatcher, (i & 4) != 0 ? ObservationDeckProvider.get() : observationDeck);
}
public static final /* synthetic */ List access$getConnectedAccountsSnapshot$p(StoreUserConnections storeUserConnections) {
return storeUserConnections.connectedAccountsSnapshot;
}
public static final /* synthetic */ void access$setConnectedAccountsSnapshot$p(StoreUserConnections storeUserConnections, List list) {
storeUserConnections.connectedAccountsSnapshot = list;
}
public final void authorizeConnection(String str, Context context) {
m.checkNotNullParameter(str, "platformName");
m.checkNotNullParameter(context, "context");
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().authorizeConnection(str), false, 1, null), StoreUserConnections.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new StoreUserConnections$authorizeConnection$1(context), 62, (Object) null);
}
public final void deleteUserConnection(String str, String str2) {
m.checkNotNullParameter(str, "platformName");
m.checkNotNullParameter(str2, "connectionId");
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().deleteConnection(str, str2), false, 1, null), StoreUserConnections.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new StoreUserConnections$deleteUserConnection$1(this), 62, (Object) null);
}
public final void fetchConnectedAccounts() {
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().getConnections(), false, 1, null), StoreUserConnections.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new StoreUserConnections$fetchConnectedAccounts$1(this), 62, (Object) null);
}
public final List<ModelConnectedAccount> getConnectedAccounts() {
return this.connectedAccountsSnapshot;
}
public final Dispatcher getDispatcher() {
return this.dispatcher;
}
public final StoreStream getStream() {
return this.stream;
}
@StoreThread
public final void handleConnectionOpen(ModelPayload modelPayload) {
m.checkNotNullParameter(modelPayload, "payload");
List<ModelConnectedAccount> connectedAccounts = modelPayload.getConnectedAccounts();
m.checkNotNullExpressionValue(connectedAccounts, "payload.connectedAccounts");
handleUserConnections(connectedAccounts);
}
@StoreThread
public final void handleUserConnections(List<ModelConnectedAccount> list) {
m.checkNotNullParameter(list, "accounts");
this.connectedAccounts = list;
markChanged();
}
@Override // com.discord.stores.Store
public void init(Context context) {
m.checkNotNullParameter(context, "context");
super.init(context);
ObservableExtensionsKt.appSubscribe$default(this.stream.getGatewaySocket$app_productionBetaRelease().getUserConnectionUpdate(), StoreUserConnections.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new StoreUserConnections$init$1(this), 62, (Object) null);
}
public final Observable<List<ModelConnectedAccount>> observeConnectedAccounts() {
return ObservationDeck.connectRx$default(this.observationDeck, new ObservationDeck.UpdateSource[]{this}, false, null, null, new StoreUserConnections$observeConnectedAccounts$1(this), 14, null);
}
@Override // com.discord.stores.StoreV2
@StoreThread
public void snapshotData() {
super.snapshotData();
this.connectedAccountsSnapshot = new ArrayList(this.connectedAccounts);
}
public final void updateUserConnection(ModelConnectedAccount modelConnectedAccount, boolean z2, boolean z3, boolean z4) {
m.checkNotNullParameter(modelConnectedAccount, "connectedAccount");
RestAPI api = RestAPI.Companion.getApi();
String type = modelConnectedAccount.getType();
m.checkNotNullExpressionValue(type, "connectedAccount.type");
String id2 = modelConnectedAccount.getId();
m.checkNotNullExpressionValue(id2, "connectedAccount.id");
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(api.updateConnection(type, id2, RestAPIParams.ConnectedAccount.Companion.create(modelConnectedAccount, z2, z3, z4 ? 1 : 0)), false, 1, null), StoreUserConnections.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new StoreUserConnections$updateUserConnection$1(this), 62, (Object) null);
}
}