mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2024-12-27 17:42:33 -06:00
285 lines
13 KiB
Java
285 lines
13 KiB
Java
package com.google.android.exoplayer2;
|
|
|
|
import android.os.Bundle;
|
|
import android.os.RemoteException;
|
|
import android.os.SystemClock;
|
|
import android.text.TextUtils;
|
|
import com.google.android.exoplayer2.Bundleable;
|
|
import com.google.android.exoplayer2.util.Clock;
|
|
import com.google.android.exoplayer2.util.Util;
|
|
import java.lang.annotation.Documented;
|
|
import java.lang.annotation.ElementType;
|
|
import java.lang.annotation.Retention;
|
|
import java.lang.annotation.RetentionPolicy;
|
|
import java.lang.annotation.Target;
|
|
|
|
/* loaded from: classes2.dex */
|
|
public class PlaybackException extends Exception implements Bundleable {
|
|
public static final int CUSTOM_ERROR_CODE_BASE = 1000000;
|
|
public static final int ERROR_CODE_AUDIO_TRACK_INIT_FAILED = 5001;
|
|
public static final int ERROR_CODE_AUDIO_TRACK_WRITE_FAILED = 5002;
|
|
public static final int ERROR_CODE_BEHIND_LIVE_WINDOW = 1002;
|
|
public static final int ERROR_CODE_DECODER_INIT_FAILED = 4001;
|
|
public static final int ERROR_CODE_DECODER_QUERY_FAILED = 4002;
|
|
public static final int ERROR_CODE_DECODING_FAILED = 4003;
|
|
public static final int ERROR_CODE_DECODING_FORMAT_EXCEEDS_CAPABILITIES = 4004;
|
|
public static final int ERROR_CODE_DECODING_FORMAT_UNSUPPORTED = 4005;
|
|
public static final int ERROR_CODE_DRM_CONTENT_ERROR = 6003;
|
|
public static final int ERROR_CODE_DRM_DEVICE_REVOKED = 6007;
|
|
public static final int ERROR_CODE_DRM_DISALLOWED_OPERATION = 6005;
|
|
public static final int ERROR_CODE_DRM_LICENSE_ACQUISITION_FAILED = 6004;
|
|
public static final int ERROR_CODE_DRM_LICENSE_EXPIRED = 6008;
|
|
public static final int ERROR_CODE_DRM_PROVISIONING_FAILED = 6002;
|
|
public static final int ERROR_CODE_DRM_SCHEME_UNSUPPORTED = 6001;
|
|
public static final int ERROR_CODE_DRM_SYSTEM_ERROR = 6006;
|
|
public static final int ERROR_CODE_DRM_UNSPECIFIED = 6000;
|
|
public static final int ERROR_CODE_FAILED_RUNTIME_CHECK = 1004;
|
|
public static final int ERROR_CODE_IO_BAD_HTTP_STATUS = 2004;
|
|
public static final int ERROR_CODE_IO_CLEARTEXT_NOT_PERMITTED = 2007;
|
|
public static final int ERROR_CODE_IO_FILE_NOT_FOUND = 2005;
|
|
public static final int ERROR_CODE_IO_INVALID_HTTP_CONTENT_TYPE = 2003;
|
|
public static final int ERROR_CODE_IO_NETWORK_CONNECTION_FAILED = 2001;
|
|
public static final int ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT = 2002;
|
|
public static final int ERROR_CODE_IO_NO_PERMISSION = 2006;
|
|
public static final int ERROR_CODE_IO_READ_POSITION_OUT_OF_RANGE = 2008;
|
|
public static final int ERROR_CODE_IO_UNSPECIFIED = 2000;
|
|
public static final int ERROR_CODE_PARSING_CONTAINER_MALFORMED = 3001;
|
|
public static final int ERROR_CODE_PARSING_CONTAINER_UNSUPPORTED = 3003;
|
|
public static final int ERROR_CODE_PARSING_MANIFEST_MALFORMED = 3002;
|
|
public static final int ERROR_CODE_PARSING_MANIFEST_UNSUPPORTED = 3004;
|
|
public static final int ERROR_CODE_REMOTE_ERROR = 1001;
|
|
public static final int ERROR_CODE_TIMEOUT = 1003;
|
|
public static final int ERROR_CODE_UNSPECIFIED = 1000;
|
|
protected static final int FIELD_CUSTOM_ID_BASE = 1000;
|
|
public final int errorCode;
|
|
public final long timestampMs;
|
|
private static final String FIELD_INT_ERROR_CODE = Util.intToStringMaxRadix(0);
|
|
private static final String FIELD_LONG_TIMESTAMP_MS = Util.intToStringMaxRadix(1);
|
|
private static final String FIELD_STRING_MESSAGE = Util.intToStringMaxRadix(2);
|
|
private static final String FIELD_STRING_CAUSE_CLASS_NAME = Util.intToStringMaxRadix(3);
|
|
private static final String FIELD_STRING_CAUSE_MESSAGE = Util.intToStringMaxRadix(4);
|
|
public static final Bundleable.Creator<PlaybackException> CREATOR = new Bundleable.Creator() { // from class: com.google.android.exoplayer2.PlaybackException$$ExternalSyntheticLambda0
|
|
@Override // com.google.android.exoplayer2.Bundleable.Creator
|
|
public final Bundleable fromBundle(Bundle bundle) {
|
|
return new PlaybackException(bundle);
|
|
}
|
|
};
|
|
|
|
@Target({ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER, ElementType.LOCAL_VARIABLE, ElementType.TYPE_USE})
|
|
@Documented
|
|
@Retention(RetentionPolicy.SOURCE)
|
|
/* loaded from: classes2.dex */
|
|
public @interface ErrorCode {
|
|
}
|
|
|
|
public static String getErrorCodeName(int i) {
|
|
if (i == 5001) {
|
|
return "ERROR_CODE_AUDIO_TRACK_INIT_FAILED";
|
|
}
|
|
if (i == 5002) {
|
|
return "ERROR_CODE_AUDIO_TRACK_WRITE_FAILED";
|
|
}
|
|
switch (i) {
|
|
case 1000:
|
|
return "ERROR_CODE_UNSPECIFIED";
|
|
case 1001:
|
|
return "ERROR_CODE_REMOTE_ERROR";
|
|
case 1002:
|
|
return "ERROR_CODE_BEHIND_LIVE_WINDOW";
|
|
case 1003:
|
|
return "ERROR_CODE_TIMEOUT";
|
|
case 1004:
|
|
return "ERROR_CODE_FAILED_RUNTIME_CHECK";
|
|
default:
|
|
switch (i) {
|
|
case 2000:
|
|
return "ERROR_CODE_IO_UNSPECIFIED";
|
|
case 2001:
|
|
return "ERROR_CODE_IO_NETWORK_CONNECTION_FAILED";
|
|
case 2002:
|
|
return "ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT";
|
|
case 2003:
|
|
return "ERROR_CODE_IO_INVALID_HTTP_CONTENT_TYPE";
|
|
case 2004:
|
|
return "ERROR_CODE_IO_BAD_HTTP_STATUS";
|
|
case 2005:
|
|
return "ERROR_CODE_IO_FILE_NOT_FOUND";
|
|
case 2006:
|
|
return "ERROR_CODE_IO_NO_PERMISSION";
|
|
case 2007:
|
|
return "ERROR_CODE_IO_CLEARTEXT_NOT_PERMITTED";
|
|
case 2008:
|
|
return "ERROR_CODE_IO_READ_POSITION_OUT_OF_RANGE";
|
|
default:
|
|
switch (i) {
|
|
case 3001:
|
|
return "ERROR_CODE_PARSING_CONTAINER_MALFORMED";
|
|
case 3002:
|
|
return "ERROR_CODE_PARSING_MANIFEST_MALFORMED";
|
|
case 3003:
|
|
return "ERROR_CODE_PARSING_CONTAINER_UNSUPPORTED";
|
|
case 3004:
|
|
return "ERROR_CODE_PARSING_MANIFEST_UNSUPPORTED";
|
|
default:
|
|
switch (i) {
|
|
case 4001:
|
|
return "ERROR_CODE_DECODER_INIT_FAILED";
|
|
case 4002:
|
|
return "ERROR_CODE_DECODER_QUERY_FAILED";
|
|
case 4003:
|
|
return "ERROR_CODE_DECODING_FAILED";
|
|
case 4004:
|
|
return "ERROR_CODE_DECODING_FORMAT_EXCEEDS_CAPABILITIES";
|
|
case 4005:
|
|
return "ERROR_CODE_DECODING_FORMAT_UNSUPPORTED";
|
|
default:
|
|
switch (i) {
|
|
case 6000:
|
|
return "ERROR_CODE_DRM_UNSPECIFIED";
|
|
case 6001:
|
|
return "ERROR_CODE_DRM_SCHEME_UNSUPPORTED";
|
|
case 6002:
|
|
return "ERROR_CODE_DRM_PROVISIONING_FAILED";
|
|
case 6003:
|
|
return "ERROR_CODE_DRM_CONTENT_ERROR";
|
|
case 6004:
|
|
return "ERROR_CODE_DRM_LICENSE_ACQUISITION_FAILED";
|
|
case 6005:
|
|
return "ERROR_CODE_DRM_DISALLOWED_OPERATION";
|
|
case 6006:
|
|
return "ERROR_CODE_DRM_SYSTEM_ERROR";
|
|
case 6007:
|
|
return "ERROR_CODE_DRM_DEVICE_REVOKED";
|
|
case 6008:
|
|
return "ERROR_CODE_DRM_LICENSE_EXPIRED";
|
|
default:
|
|
return i >= 1000000 ? "custom error code" : "invalid error code";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public final String getErrorCodeName() {
|
|
return getErrorCodeName(this.errorCode);
|
|
}
|
|
|
|
public PlaybackException(String str, Throwable th, int i) {
|
|
this(str, th, i, Clock.DEFAULT.elapsedRealtime());
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: protected */
|
|
public PlaybackException(Bundle bundle) {
|
|
this(bundle.getString(FIELD_STRING_MESSAGE), getCauseFromBundle(bundle), bundle.getInt(FIELD_INT_ERROR_CODE, 1000), bundle.getLong(FIELD_LONG_TIMESTAMP_MS, SystemClock.elapsedRealtime()));
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: protected */
|
|
public PlaybackException(String str, Throwable th, int i, long j) {
|
|
super(str, th);
|
|
this.errorCode = i;
|
|
this.timestampMs = j;
|
|
}
|
|
|
|
/* JADX WARN: Code restructure failed: missing block: B:28:0x003e, code lost:
|
|
|
|
if (r3 == null) goto L22;
|
|
*/
|
|
/*
|
|
Code decompiled incorrectly, please refer to instructions dump.
|
|
To view partially-correct add '--show-bad-code' argument
|
|
*/
|
|
public boolean errorInfoEquals(com.google.android.exoplayer2.PlaybackException r7) {
|
|
/*
|
|
r6 = this;
|
|
r0 = 1
|
|
if (r6 != r7) goto L4
|
|
return r0
|
|
L4:
|
|
r1 = 0
|
|
if (r7 == 0) goto L60
|
|
java.lang.Class r2 = r6.getClass()
|
|
java.lang.Class r3 = r7.getClass()
|
|
if (r2 == r3) goto L12
|
|
goto L60
|
|
L12:
|
|
java.lang.Throwable r2 = r6.getCause()
|
|
java.lang.Throwable r3 = r7.getCause()
|
|
if (r2 == 0) goto L3c
|
|
if (r3 == 0) goto L3c
|
|
java.lang.String r4 = r2.getMessage()
|
|
java.lang.String r5 = r3.getMessage()
|
|
boolean r4 = com.google.android.exoplayer2.util.Util.areEqual(r4, r5)
|
|
if (r4 != 0) goto L2d
|
|
return r1
|
|
L2d:
|
|
java.lang.Class r2 = r2.getClass()
|
|
java.lang.Class r3 = r3.getClass()
|
|
boolean r2 = com.google.android.exoplayer2.util.Util.areEqual(r2, r3)
|
|
if (r2 != 0) goto L41
|
|
return r1
|
|
L3c:
|
|
if (r2 != 0) goto L60
|
|
if (r3 == 0) goto L41
|
|
goto L60
|
|
L41:
|
|
int r2 = r6.errorCode
|
|
int r3 = r7.errorCode
|
|
if (r2 != r3) goto L5e
|
|
java.lang.String r2 = r6.getMessage()
|
|
java.lang.String r3 = r7.getMessage()
|
|
boolean r2 = com.google.android.exoplayer2.util.Util.areEqual(r2, r3)
|
|
if (r2 == 0) goto L5e
|
|
long r2 = r6.timestampMs
|
|
long r6 = r7.timestampMs
|
|
int r6 = (r2 > r6 ? 1 : (r2 == r6 ? 0 : -1))
|
|
if (r6 != 0) goto L5e
|
|
goto L5f
|
|
L5e:
|
|
r0 = r1
|
|
L5f:
|
|
return r0
|
|
L60:
|
|
return r1
|
|
*/
|
|
throw new UnsupportedOperationException("Method not decompiled: com.google.android.exoplayer2.PlaybackException.errorInfoEquals(com.google.android.exoplayer2.PlaybackException):boolean");
|
|
}
|
|
|
|
public Bundle toBundle() {
|
|
Bundle bundle = new Bundle();
|
|
bundle.putInt(FIELD_INT_ERROR_CODE, this.errorCode);
|
|
bundle.putLong(FIELD_LONG_TIMESTAMP_MS, this.timestampMs);
|
|
bundle.putString(FIELD_STRING_MESSAGE, getMessage());
|
|
Throwable cause = getCause();
|
|
if (cause != null) {
|
|
bundle.putString(FIELD_STRING_CAUSE_CLASS_NAME, cause.getClass().getName());
|
|
bundle.putString(FIELD_STRING_CAUSE_MESSAGE, cause.getMessage());
|
|
}
|
|
return bundle;
|
|
}
|
|
|
|
private static Throwable createThrowable(Class<?> cls, String str) throws Exception {
|
|
return (Throwable) cls.getConstructor(String.class).newInstance(str);
|
|
}
|
|
|
|
private static RemoteException createRemoteException(String str) {
|
|
return new RemoteException(str);
|
|
}
|
|
|
|
private static Throwable getCauseFromBundle(Bundle bundle) {
|
|
String string = bundle.getString(FIELD_STRING_CAUSE_CLASS_NAME);
|
|
String string2 = bundle.getString(FIELD_STRING_CAUSE_MESSAGE);
|
|
if (TextUtils.isEmpty(string)) {
|
|
return null;
|
|
}
|
|
try {
|
|
Class<?> cls = Class.forName(string, true, PlaybackException.class.getClassLoader());
|
|
Throwable createThrowable = Throwable.class.isAssignableFrom(cls) ? createThrowable(cls, string2) : null;
|
|
if (createThrowable != null) {
|
|
return createThrowable;
|
|
}
|
|
} catch (Throwable unused) {
|
|
}
|
|
return createRemoteException(string2);
|
|
}
|
|
}
|