discord-jadx/app/src/main/java/android/support/v4/media/MediaBrowserCompat.java

461 lines
18 KiB
Java

package android.support.v4.media;
import android.annotation.SuppressLint;
import android.content.ComponentName;
import android.content.Context;
import android.media.browse.MediaBrowser;
import android.os.BadParcelableException;
import android.os.Binder;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.IBinder;
import android.os.Message;
import android.os.Messenger;
import android.os.Parcel;
import android.os.Parcelable;
import android.os.Process;
import android.os.RemoteException;
import android.support.v4.media.session.MediaSessionCompat;
import android.support.v4.os.ResultReceiver;
import android.text.TextUtils;
import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi;
import androidx.collection.ArrayMap;
import androidx.core.app.BundleCompat;
import androidx.media.MediaBrowserCompatUtils;
import androidx.media.MediaBrowserProtocol;
import androidx.media.MediaBrowserServiceCompat;
import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import x.a.b.b.a.b;
public final class MediaBrowserCompat {
public static final boolean a = Log.isLoggable("MediaBrowserCompat", 3);
public final c b;
public static class CustomActionResultReceiver extends ResultReceiver {
@Override // android.support.v4.os.ResultReceiver
public void a(int i, Bundle bundle) {
}
}
public static class ItemReceiver extends ResultReceiver {
@Override // android.support.v4.os.ResultReceiver
public void a(int i, Bundle bundle) {
if (bundle != null) {
bundle = MediaSessionCompat.b(bundle);
}
if (i != 0 || bundle == null || !bundle.containsKey(MediaBrowserServiceCompat.KEY_MEDIA_ITEM)) {
throw null;
}
Parcelable parcelable = bundle.getParcelable(MediaBrowserServiceCompat.KEY_MEDIA_ITEM);
if (parcelable == null || (parcelable instanceof MediaItem)) {
MediaItem mediaItem = (MediaItem) parcelable;
throw null;
}
throw null;
}
}
@SuppressLint({"BanParcelableUsage"})
public static class MediaItem implements Parcelable {
public static final Parcelable.Creator<MediaItem> CREATOR = new a();
public final int i;
public final MediaDescriptionCompat j;
public class a implements Parcelable.Creator<MediaItem> {
/* Return type fixed from 'java.lang.Object' to match base method */
@Override // android.os.Parcelable.Creator
public MediaItem createFromParcel(Parcel parcel) {
return new MediaItem(parcel);
}
/* Return type fixed from 'java.lang.Object[]' to match base method */
@Override // android.os.Parcelable.Creator
public MediaItem[] newArray(int i) {
return new MediaItem[i];
}
}
public MediaItem(Parcel parcel) {
this.i = parcel.readInt();
this.j = MediaDescriptionCompat.CREATOR.createFromParcel(parcel);
}
public MediaItem(@NonNull MediaDescriptionCompat mediaDescriptionCompat, int i) {
if (mediaDescriptionCompat == null) {
throw new IllegalArgumentException("description cannot be null");
} else if (!TextUtils.isEmpty(mediaDescriptionCompat.i)) {
this.i = i;
this.j = mediaDescriptionCompat;
} else {
throw new IllegalArgumentException("description must have a non-empty media id");
}
}
public static List<MediaItem> a(List<?> list) {
MediaItem mediaItem;
if (list == null) {
return null;
}
ArrayList arrayList = new ArrayList(list.size());
for (Object obj : list) {
if (obj != null) {
MediaBrowser.MediaItem mediaItem2 = (MediaBrowser.MediaItem) obj;
mediaItem = new MediaItem(MediaDescriptionCompat.a(mediaItem2.getDescription()), mediaItem2.getFlags());
} else {
mediaItem = null;
}
arrayList.add(mediaItem);
}
return arrayList;
}
@Override // android.os.Parcelable
public int describeContents() {
return 0;
}
@Override // java.lang.Object
@NonNull
public String toString() {
return "MediaItem{mFlags=" + this.i + ", mDescription=" + this.j + '}';
}
@Override // android.os.Parcelable
public void writeToParcel(Parcel parcel, int i) {
parcel.writeInt(this.i);
this.j.writeToParcel(parcel, i);
}
}
public static class SearchResultReceiver extends ResultReceiver {
@Override // android.support.v4.os.ResultReceiver
public void a(int i, Bundle bundle) {
if (bundle != null) {
bundle = MediaSessionCompat.b(bundle);
}
if (i != 0 || bundle == null || !bundle.containsKey(MediaBrowserServiceCompat.KEY_SEARCH_RESULTS)) {
throw null;
}
Parcelable[] parcelableArray = bundle.getParcelableArray(MediaBrowserServiceCompat.KEY_SEARCH_RESULTS);
Objects.requireNonNull(parcelableArray);
ArrayList arrayList = new ArrayList();
for (Parcelable parcelable : parcelableArray) {
arrayList.add((MediaItem) parcelable);
}
throw null;
}
}
public static class a extends Handler {
public final WeakReference<g> a;
public WeakReference<Messenger> b;
public a(g gVar) {
this.a = new WeakReference<>(gVar);
}
public void a(Messenger messenger) {
this.b = new WeakReference<>(messenger);
}
@Override // android.os.Handler
public void handleMessage(@NonNull Message message) {
WeakReference<Messenger> weakReference = this.b;
if (weakReference != null && weakReference.get() != null && this.a.get() != null) {
Bundle data = message.getData();
MediaSessionCompat.a(data);
g gVar = this.a.get();
Messenger messenger = this.b.get();
try {
int i = message.what;
if (i == 1) {
Bundle bundle = data.getBundle(MediaBrowserProtocol.DATA_ROOT_HINTS);
MediaSessionCompat.a(bundle);
gVar.a(messenger, data.getString(MediaBrowserProtocol.DATA_MEDIA_ITEM_ID), (MediaSessionCompat.Token) data.getParcelable(MediaBrowserProtocol.DATA_MEDIA_SESSION_TOKEN), bundle);
} else if (i == 2) {
gVar.c(messenger);
} else if (i != 3) {
Log.w("MediaBrowserCompat", "Unhandled message: " + message + "\n Client version: 1\n Service version: " + message.arg1);
} else {
Bundle bundle2 = data.getBundle(MediaBrowserProtocol.DATA_OPTIONS);
MediaSessionCompat.a(bundle2);
Bundle bundle3 = data.getBundle(MediaBrowserProtocol.DATA_NOTIFY_CHILDREN_CHANGED_OPTIONS);
MediaSessionCompat.a(bundle3);
gVar.b(messenger, data.getString(MediaBrowserProtocol.DATA_MEDIA_ITEM_ID), data.getParcelableArrayList(MediaBrowserProtocol.DATA_MEDIA_ITEM_LIST), bundle2, bundle3);
}
} catch (BadParcelableException unused) {
Log.e("MediaBrowserCompat", "Could not unparcel the data.");
if (message.what == 1) {
gVar.c(messenger);
}
}
}
}
}
public static class b {
public final MediaBrowser.ConnectionCallback mConnectionCallbackFwk = new a();
public AbstractC0000b mConnectionCallbackInternal;
@RequiresApi(21)
public class a extends MediaBrowser.ConnectionCallback {
public a() {
}
@Override // android.media.browse.MediaBrowser.ConnectionCallback
public void onConnected() {
AbstractC0000b bVar = b.this.mConnectionCallbackInternal;
if (bVar != null) {
d dVar = (d) bVar;
Objects.requireNonNull(dVar);
try {
Bundle extras = dVar.b.getExtras();
if (extras != null) {
extras.getInt(MediaBrowserProtocol.EXTRA_SERVICE_VERSION, 0);
IBinder binder = BundleCompat.getBinder(extras, MediaBrowserProtocol.EXTRA_MESSENGER_BINDER);
if (binder != null) {
dVar.f = new h(binder, dVar.f11c);
Messenger messenger = new Messenger(dVar.d);
dVar.g = messenger;
dVar.d.a(messenger);
try {
h hVar = dVar.f;
Context context = dVar.a;
Messenger messenger2 = dVar.g;
Objects.requireNonNull(hVar);
Bundle bundle = new Bundle();
bundle.putString(MediaBrowserProtocol.DATA_PACKAGE_NAME, context.getPackageName());
bundle.putInt(MediaBrowserProtocol.DATA_CALLING_PID, Process.myPid());
bundle.putBundle(MediaBrowserProtocol.DATA_ROOT_HINTS, hVar.b);
hVar.a(6, bundle, messenger2);
} catch (RemoteException unused) {
Log.i("MediaBrowserCompat", "Remote error registering client messenger.");
}
}
x.a.b.b.a.b e = b.a.e(BundleCompat.getBinder(extras, MediaBrowserProtocol.EXTRA_SESSION_BINDER));
if (e != null) {
dVar.h = MediaSessionCompat.Token.a(dVar.b.getSessionToken(), e);
}
}
} catch (IllegalStateException e2) {
Log.e("MediaBrowserCompat", "Unexpected IllegalStateException", e2);
}
}
b.this.onConnected();
}
@Override // android.media.browse.MediaBrowser.ConnectionCallback
public void onConnectionFailed() {
AbstractC0000b bVar = b.this.mConnectionCallbackInternal;
if (bVar != null) {
Objects.requireNonNull((d) bVar);
}
b.this.onConnectionFailed();
}
@Override // android.media.browse.MediaBrowser.ConnectionCallback
public void onConnectionSuspended() {
AbstractC0000b bVar = b.this.mConnectionCallbackInternal;
if (bVar != null) {
d dVar = (d) bVar;
dVar.f = null;
dVar.g = null;
dVar.h = null;
dVar.d.a(null);
}
b.this.onConnectionSuspended();
}
}
/* renamed from: android.support.v4.media.MediaBrowserCompat$b$b reason: collision with other inner class name */
public interface AbstractC0000b {
}
public void onConnected() {
throw null;
}
public void onConnectionFailed() {
throw null;
}
public void onConnectionSuspended() {
throw null;
}
public void setInternalConnectionCallback(AbstractC0000b bVar) {
this.mConnectionCallbackInternal = bVar;
}
}
public interface c {
}
@RequiresApi(21)
public static class d implements c, g, b.AbstractC0000b {
public final Context a;
public final MediaBrowser b;
/* renamed from: c reason: collision with root package name */
public final Bundle f11c;
public final a d = new a(this);
public final ArrayMap<String, i> e = new ArrayMap<>();
public h f;
public Messenger g;
public MediaSessionCompat.Token h;
public d(Context context, ComponentName componentName, b bVar, Bundle bundle) {
this.a = context;
Bundle bundle2 = bundle != null ? new Bundle(bundle) : new Bundle();
this.f11c = bundle2;
bundle2.putInt(MediaBrowserProtocol.EXTRA_CLIENT_VERSION, 1);
bundle2.putInt(MediaBrowserProtocol.EXTRA_CALLING_PID, Process.myPid());
bVar.setInternalConnectionCallback(this);
this.b = new MediaBrowser(context, componentName, bVar.mConnectionCallbackFwk, bundle2);
}
@Override // android.support.v4.media.MediaBrowserCompat.g
public void a(Messenger messenger, String str, MediaSessionCompat.Token token, Bundle bundle) {
}
@Override // android.support.v4.media.MediaBrowserCompat.g
public void b(Messenger messenger, String str, List<MediaItem> list, Bundle bundle, Bundle bundle2) {
if (this.g == messenger) {
i iVar = this.e.get(str);
if (iVar != null) {
iVar.a(bundle);
} else if (MediaBrowserCompat.a) {
Log.d("MediaBrowserCompat", "onLoadChildren for id that isn't subscribed id=" + str);
}
}
}
@Override // android.support.v4.media.MediaBrowserCompat.g
public void c(Messenger messenger) {
}
}
@RequiresApi(23)
public static class e extends d {
public e(Context context, ComponentName componentName, b bVar, Bundle bundle) {
super(context, componentName, bVar, bundle);
}
}
@RequiresApi(26)
public static class f extends e {
public f(Context context, ComponentName componentName, b bVar, Bundle bundle) {
super(context, componentName, bVar, bundle);
}
}
public interface g {
void a(Messenger messenger, String str, MediaSessionCompat.Token token, Bundle bundle);
void b(Messenger messenger, String str, List<MediaItem> list, Bundle bundle, Bundle bundle2);
void c(Messenger messenger);
}
public static class h {
public Messenger a;
public Bundle b;
public h(IBinder iBinder, Bundle bundle) {
this.a = new Messenger(iBinder);
this.b = bundle;
}
public final void a(int i, Bundle bundle, Messenger messenger) throws RemoteException {
Message obtain = Message.obtain();
obtain.what = i;
obtain.arg1 = 1;
obtain.setData(bundle);
obtain.replyTo = messenger;
this.a.send(obtain);
}
}
public static class i {
public final List<j> a = new ArrayList();
public final List<Bundle> b = new ArrayList();
public j a(Bundle bundle) {
for (int i = 0; i < this.b.size(); i++) {
if (MediaBrowserCompatUtils.areSameOptions(this.b.get(i), bundle)) {
return this.a.get(i);
}
}
return null;
}
}
public static abstract class j {
public final IBinder a = new Binder();
@RequiresApi(21)
public class a extends MediaBrowser.SubscriptionCallback {
public a() {
}
@Override // android.media.browse.MediaBrowser.SubscriptionCallback
public void onChildrenLoaded(@NonNull String str, List<MediaBrowser.MediaItem> list) {
Objects.requireNonNull(j.this);
j jVar = j.this;
MediaItem.a(list);
Objects.requireNonNull(jVar);
}
@Override // android.media.browse.MediaBrowser.SubscriptionCallback
public void onError(@NonNull String str) {
Objects.requireNonNull(j.this);
}
}
@RequiresApi(26)
public class b extends a {
public b() {
super();
}
@Override // android.media.browse.MediaBrowser.SubscriptionCallback
public void onChildrenLoaded(@NonNull String str, @NonNull List<MediaBrowser.MediaItem> list, @NonNull Bundle bundle) {
MediaSessionCompat.a(bundle);
j jVar = j.this;
MediaItem.a(list);
Objects.requireNonNull(jVar);
}
@Override // android.media.browse.MediaBrowser.SubscriptionCallback
public void onError(@NonNull String str, @NonNull Bundle bundle) {
MediaSessionCompat.a(bundle);
Objects.requireNonNull(j.this);
}
}
public j() {
if (Build.VERSION.SDK_INT >= 26) {
new b();
} else {
new a();
}
}
}
public MediaBrowserCompat(Context context, ComponentName componentName, b bVar, Bundle bundle) {
int i2 = Build.VERSION.SDK_INT;
if (i2 >= 26) {
this.b = new f(context, componentName, bVar, null);
} else if (i2 >= 23) {
this.b = new e(context, componentName, bVar, null);
} else {
this.b = new d(context, componentName, bVar, null);
}
}
}