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

106 lines
4.7 KiB
Java

package com.discord.stores;
import com.discord.api.friendsuggestions.FriendSuggestionDelete;
import com.discord.api.friendsuggestions.FriendSuggestionReason;
import com.discord.models.domain.ModelPayload;
import com.discord.models.friendsuggestions.FriendSuggestion;
import com.discord.models.user.CoreUser;
import com.discord.utilities.friendsuggestions.FriendSuggestionsFetcher;
import d0.t.h0;
import d0.t.u;
import d0.z.d.m;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/* compiled from: StoreFriendSuggestions.kt */
public final class StoreFriendSuggestions extends StoreV2 {
private final Dispatcher dispatcher;
private final FriendSuggestionsFetcher friendSuggestionsFetcher;
private final StoreStream storeStream;
private final Map<Long, FriendSuggestion> suggestions = new HashMap();
private Map<Long, FriendSuggestion> suggestionsSnapshot = h0.emptyMap();
public StoreFriendSuggestions(StoreStream storeStream, Dispatcher dispatcher, FriendSuggestionsFetcher friendSuggestionsFetcher) {
m.checkNotNullParameter(storeStream, "storeStream");
m.checkNotNullParameter(dispatcher, "dispatcher");
m.checkNotNullParameter(friendSuggestionsFetcher, "friendSuggestionsFetcher");
this.storeStream = storeStream;
this.dispatcher = dispatcher;
this.friendSuggestionsFetcher = friendSuggestionsFetcher;
}
public static final /* synthetic */ StoreStream access$getStoreStream$p(StoreFriendSuggestions storeFriendSuggestions) {
return storeFriendSuggestions.storeStream;
}
private final FriendSuggestion convertApiFriendSuggestion(com.discord.api.friendsuggestions.FriendSuggestion friendSuggestion) {
CoreUser coreUser = new CoreUser(friendSuggestion.b());
FriendSuggestionReason friendSuggestionReason = (FriendSuggestionReason) u.firstOrNull((List<? extends Object>) friendSuggestion.a());
return new FriendSuggestion(coreUser, friendSuggestionReason != null ? friendSuggestionReason.a() : null);
}
public final Map<Long, FriendSuggestion> getFriendSuggestions() {
return this.suggestionsSnapshot;
}
public final FriendSuggestionsFetcher getFriendSuggestionsFetcher() {
return this.friendSuggestionsFetcher;
}
@StoreThread
public final void handleConnectionOpen(ModelPayload modelPayload) {
m.checkNotNullParameter(modelPayload, "readyPayload");
this.suggestions.clear();
if (modelPayload.getFriendSuggestionCount() > 0) {
this.friendSuggestionsFetcher.maybeFetch();
}
markChanged();
}
@StoreThread
public final void handleFriendSuggestionCreate(com.discord.api.friendsuggestions.FriendSuggestion friendSuggestion) {
m.checkNotNullParameter(friendSuggestion, "friendSuggestionCreate");
CoreUser coreUser = new CoreUser(friendSuggestion.b());
FriendSuggestionReason friendSuggestionReason = (FriendSuggestionReason) u.firstOrNull((List<? extends Object>) friendSuggestion.a());
FriendSuggestion friendSuggestion2 = new FriendSuggestion(coreUser, friendSuggestionReason != null ? friendSuggestionReason.a() : null);
this.suggestions.put(Long.valueOf(friendSuggestion2.getUser().getId()), friendSuggestion2);
markChanged();
}
@StoreThread
public final void handleFriendSuggestionDelete(FriendSuggestionDelete friendSuggestionDelete) {
m.checkNotNullParameter(friendSuggestionDelete, "friendSuggestionDelete");
if (this.suggestions.remove(Long.valueOf(friendSuggestionDelete.a())) != null) {
markChanged();
}
}
@StoreThread
public final void handleFriendSuggestionsLoadFailure() {
this.suggestions.clear();
markChanged();
}
@StoreThread
public final void handleFriendSuggestionsLoaded(List<com.discord.api.friendsuggestions.FriendSuggestion> list) {
m.checkNotNullParameter(list, "loadedSuggestions");
this.suggestions.clear();
Map<Long, FriendSuggestion> map = this.suggestions;
for (com.discord.api.friendsuggestions.FriendSuggestion friendSuggestion : list) {
map.put(Long.valueOf(friendSuggestion.b().i()), convertApiFriendSuggestion(friendSuggestion));
}
markChanged();
}
@Override // com.discord.stores.StoreV2
public void snapshotData() {
super.snapshotData();
this.suggestionsSnapshot = new HashMap(this.suggestions);
}
public final void updateFriendSuggestions(List<com.discord.api.friendsuggestions.FriendSuggestion> list) {
m.checkNotNullParameter(list, "suggestions");
this.dispatcher.schedule(new StoreFriendSuggestions$updateFriendSuggestions$1(this, list));
}
}