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

252 lines
9.7 KiB
Java

package com.discord.stores;
import c.d.b.a.a;
import com.airbnb.lottie.parser.AnimatableValueParser;
import com.discord.api.voice.state.VoiceState;
import com.discord.rtcconnection.VideoMetadata;
import com.discord.stores.updates.ObservationDeck;
import com.discord.stores.updates.ObservationDeckProvider;
import d0.t.h0;
import d0.z.d.m;
import java.util.HashMap;
import java.util.Map;
import kotlin.jvm.internal.DefaultConstructorMarker;
import rx.Observable;
/* compiled from: StoreVideoStreams.kt */
public final class StoreVideoStreams extends StoreV2 {
private final ObservationDeck observationDeck;
private final HashMap<Long, UserStreams> userStreamsByUser;
private Map<Long, UserStreams> userStreamsByUserSnapshot;
/* compiled from: StoreVideoStreams.kt */
public static final class UserStreams {
public static final Companion Companion = new Companion(null);
private static final UserStreams Empty = new UserStreams(null, null, null, null);
private final Integer applicationStreamId;
private final VideoMetadata applicationStreamMetadata;
private final Integer callStreamId;
private final VideoMetadata callStreamMetadata;
private final boolean isEmpty = m.areEqual(this, Empty);
/* compiled from: StoreVideoStreams.kt */
public static final class Companion {
private Companion() {
}
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
this();
}
public final UserStreams getEmpty() {
return UserStreams.access$getEmpty$cp();
}
}
public UserStreams(Integer num, VideoMetadata videoMetadata, Integer num2, VideoMetadata videoMetadata2) {
this.callStreamId = num;
this.callStreamMetadata = videoMetadata;
this.applicationStreamId = num2;
this.applicationStreamMetadata = videoMetadata2;
}
public static final /* synthetic */ UserStreams access$getEmpty$cp() {
return Empty;
}
public static /* synthetic */ UserStreams copy$default(UserStreams userStreams, Integer num, VideoMetadata videoMetadata, Integer num2, VideoMetadata videoMetadata2, int i, Object obj) {
if ((i & 1) != 0) {
num = userStreams.callStreamId;
}
if ((i & 2) != 0) {
videoMetadata = userStreams.callStreamMetadata;
}
if ((i & 4) != 0) {
num2 = userStreams.applicationStreamId;
}
if ((i & 8) != 0) {
videoMetadata2 = userStreams.applicationStreamMetadata;
}
return userStreams.copy(num, videoMetadata, num2, videoMetadata2);
}
public final Integer component1() {
return this.callStreamId;
}
public final VideoMetadata component2() {
return this.callStreamMetadata;
}
public final Integer component3() {
return this.applicationStreamId;
}
public final VideoMetadata component4() {
return this.applicationStreamMetadata;
}
public final UserStreams copy(Integer num, VideoMetadata videoMetadata, Integer num2, VideoMetadata videoMetadata2) {
return new UserStreams(num, videoMetadata, num2, videoMetadata2);
}
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!(obj instanceof UserStreams)) {
return false;
}
UserStreams userStreams = (UserStreams) obj;
return m.areEqual(this.callStreamId, userStreams.callStreamId) && m.areEqual(this.callStreamMetadata, userStreams.callStreamMetadata) && m.areEqual(this.applicationStreamId, userStreams.applicationStreamId) && m.areEqual(this.applicationStreamMetadata, userStreams.applicationStreamMetadata);
}
public final Integer getApplicationStreamId() {
return this.applicationStreamId;
}
public final VideoMetadata getApplicationStreamMetadata() {
return this.applicationStreamMetadata;
}
public final Integer getCallStreamId() {
return this.callStreamId;
}
public final VideoMetadata getCallStreamMetadata() {
return this.callStreamMetadata;
}
public int hashCode() {
Integer num = this.callStreamId;
int i = 0;
int hashCode = (num != null ? num.hashCode() : 0) * 31;
VideoMetadata videoMetadata = this.callStreamMetadata;
int hashCode2 = (hashCode + (videoMetadata != null ? videoMetadata.hashCode() : 0)) * 31;
Integer num2 = this.applicationStreamId;
int hashCode3 = (hashCode2 + (num2 != null ? num2.hashCode() : 0)) * 31;
VideoMetadata videoMetadata2 = this.applicationStreamMetadata;
if (videoMetadata2 != null) {
i = videoMetadata2.hashCode();
}
return hashCode3 + i;
}
public final boolean isEmpty() {
return this.isEmpty;
}
public String toString() {
StringBuilder L = a.L("UserStreams(callStreamId=");
L.append(this.callStreamId);
L.append(", callStreamMetadata=");
L.append(this.callStreamMetadata);
L.append(", applicationStreamId=");
L.append(this.applicationStreamId);
L.append(", applicationStreamMetadata=");
L.append(this.applicationStreamMetadata);
L.append(")");
return L.toString();
}
}
public StoreVideoStreams() {
this(null, 1, null);
}
public StoreVideoStreams(ObservationDeck observationDeck) {
m.checkNotNullParameter(observationDeck, "observationDeck");
this.observationDeck = observationDeck;
this.userStreamsByUserSnapshot = h0.emptyMap();
this.userStreamsByUser = new HashMap<>();
}
/* JADX INFO: this call moved to the top of the method (can break code semantics) */
public /* synthetic */ StoreVideoStreams(ObservationDeck observationDeck, int i, DefaultConstructorMarker defaultConstructorMarker) {
this((i & 1) != 0 ? ObservationDeckProvider.get() : observationDeck);
}
public static final /* synthetic */ Map access$getUserStreamsByUserSnapshot$p(StoreVideoStreams storeVideoStreams) {
return storeVideoStreams.userStreamsByUserSnapshot;
}
public static final /* synthetic */ void access$setUserStreamsByUserSnapshot$p(StoreVideoStreams storeVideoStreams, Map map) {
storeVideoStreams.userStreamsByUserSnapshot = map;
}
private final UserStreams currentUserStreams(long j) {
UserStreams userStreams = this.userStreamsByUser.get(Long.valueOf(j));
return userStreams != null ? userStreams : UserStreams.Companion.getEmpty();
}
private final void setUserStreams(long j, UserStreams userStreams) {
if (!userStreams.isEmpty()) {
this.userStreamsByUser.put(Long.valueOf(j), userStreams);
} else {
this.userStreamsByUser.remove(Long.valueOf(j));
}
markChanged();
}
@StoreThread
public final Long findUserForApplicationStream(int i) {
for (Map.Entry<Long, UserStreams> entry : this.userStreamsByUser.entrySet()) {
long longValue = entry.getKey().longValue();
Integer applicationStreamId = entry.getValue().getApplicationStreamId();
if (applicationStreamId != null && applicationStreamId.intValue() == i) {
return Long.valueOf(longValue);
}
}
return null;
}
@StoreThread
public final void handleApplicationStreamUpdate(long j, Integer num) {
setUserStreams(j, UserStreams.copy$default(currentUserStreams(j), null, null, num, null, 11, null));
}
@StoreThread
public final void handleApplicationStreamVideoMetadataUpdate(VideoMetadata videoMetadata) {
m.checkNotNullParameter(videoMetadata, "metadata");
setUserStreams(videoMetadata.a, UserStreams.copy$default(currentUserStreams(videoMetadata.a), null, null, null, videoMetadata, 7, null));
}
@StoreThread
public final void handleVideoMetadataUpdate(VideoMetadata videoMetadata) {
m.checkNotNullParameter(videoMetadata, "metadata");
setUserStreams(videoMetadata.a, UserStreams.copy$default(currentUserStreams(videoMetadata.a), null, videoMetadata, null, null, 13, null));
}
@StoreThread
public final void handleVideoStreamUpdate(long j, Integer num) {
setUserStreams(j, UserStreams.copy$default(currentUserStreams(j), num, null, null, null, 14, null));
}
@StoreThread
public final void handleVoiceChannelSelected(long j) {
if (j == 0 && (!this.userStreamsByUser.isEmpty())) {
this.userStreamsByUser.clear();
markChanged();
}
}
@StoreThread
public final void handleVoiceStateUpdates(VoiceState voiceState) {
m.checkNotNullParameter(voiceState, "voiceState");
if (AnimatableValueParser.u1(voiceState)) {
if (this.userStreamsByUser.remove(Long.valueOf(voiceState.m())) != null) {
markChanged();
}
}
}
public final Observable<Map<Long, UserStreams>> observeUserStreams() {
return ObservationDeck.connectRx$default(this.observationDeck, new ObservationDeck.UpdateSource[]{this}, false, null, null, new StoreVideoStreams$observeUserStreams$1(this), 14, null);
}
@Override // com.discord.stores.StoreV2
public void snapshotData() {
super.snapshotData();
this.userStreamsByUserSnapshot = new HashMap(this.userStreamsByUser);
}
}