package androidx.media; import android.app.Service; import android.content.Intent; import android.media.session.MediaSessionManager; 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.RemoteException; import android.support.v4.media.MediaBrowserCompat; import android.support.v4.media.session.IMediaSession; import android.support.v4.media.session.MediaSessionCompat; import android.support.v4.os.ResultReceiver; import android.text.TextUtils; import android.util.Log; import androidx.collection.ArrayMap; import androidx.core.app.BundleCompat; import androidx.core.util.ObjectsCompat; import androidx.core.util.Pair; import androidx.media.MediaBrowserServiceCompatApi21; import androidx.media.MediaBrowserServiceCompatApi23; import androidx.media.MediaBrowserServiceCompatApi26; import java.io.FileDescriptor; import java.io.PrintWriter; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.List; /* loaded from: classes.dex */ public abstract class MediaBrowserServiceCompat extends Service { static final boolean f = Log.isLoggable("MBServiceCompat", 3); private MediaBrowserServiceImpl a; ConnectionRecord c; MediaSessionCompat.Token e; final ArrayMap b = new ArrayMap<>(); final ServiceHandler d = new ServiceHandler(); public static final class BrowserRoot { public Bundle a() { throw null; } public String b() { throw null; } } private class ConnectionRecord implements IBinder.DeathRecipient { public final String a; public final ServiceCallbacks b; public final HashMap>> c = new HashMap<>(); public BrowserRoot d; ConnectionRecord(final String str, final int i, final int i2, Bundle bundle, ServiceCallbacks serviceCallbacks) { this.a = str; new Object(str, i, i2) { // from class: androidx.media.MediaSessionManager$RemoteUserInfo MediaSessionManager$RemoteUserInfoImpl a; { if (Build.VERSION.SDK_INT >= 28) { this.a = new MediaSessionManager$RemoteUserInfoImpl(str, i, i2) { // from class: androidx.media.MediaSessionManagerImplApi28$RemoteUserInfoImplApi28 final MediaSessionManager.RemoteUserInfo a; { this.a = new MediaSessionManager.RemoteUserInfo(str, i, i2); } public boolean equals(Object obj) { if (this == obj) { return true; } if (obj instanceof MediaSessionManagerImplApi28$RemoteUserInfoImplApi28) { return this.a.equals(((MediaSessionManagerImplApi28$RemoteUserInfoImplApi28) obj).a); } return false; } public int hashCode() { return ObjectsCompat.a(this.a); } }; } else { this.a = new MediaSessionManager$RemoteUserInfoImpl(str, i, i2) { // from class: androidx.media.MediaSessionManagerImplBase$RemoteUserInfoImplBase private String a; private int b; private int c; { this.a = str; this.b = i; this.c = i2; } public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof MediaSessionManagerImplBase$RemoteUserInfoImplBase)) { return false; } MediaSessionManagerImplBase$RemoteUserInfoImplBase mediaSessionManagerImplBase$RemoteUserInfoImplBase = (MediaSessionManagerImplBase$RemoteUserInfoImplBase) obj; return TextUtils.equals(this.a, mediaSessionManagerImplBase$RemoteUserInfoImplBase.a) && this.b == mediaSessionManagerImplBase$RemoteUserInfoImplBase.b && this.c == mediaSessionManagerImplBase$RemoteUserInfoImplBase.c; } public int hashCode() { return ObjectsCompat.a(this.a, Integer.valueOf(this.b), Integer.valueOf(this.c)); } }; } } public boolean equals(Object obj) { if (this == obj) { return true; } if (obj instanceof MediaSessionManager$RemoteUserInfo) { return this.a.equals(((MediaSessionManager$RemoteUserInfo) obj).a); } return false; } public int hashCode() { return this.a.hashCode(); } }; this.b = serviceCallbacks; } @Override // android.os.IBinder.DeathRecipient public void binderDied() { MediaBrowserServiceCompat.this.d.post(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ConnectionRecord.1 @Override // java.lang.Runnable public void run() { ConnectionRecord connectionRecord = ConnectionRecord.this; MediaBrowserServiceCompat.this.b.remove(connectionRecord.b.asBinder()); } }); } } interface MediaBrowserServiceImpl { IBinder a(Intent intent); void a(); } class MediaBrowserServiceImplApi28 extends MediaBrowserServiceImplApi26 { MediaBrowserServiceImplApi28(MediaBrowserServiceCompat mediaBrowserServiceCompat) { super(); } } class MediaBrowserServiceImplBase implements MediaBrowserServiceImpl { private Messenger a; MediaBrowserServiceImplBase() { } @Override // androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImpl public void a() { this.a = new Messenger(MediaBrowserServiceCompat.this.d); } @Override // androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImpl public IBinder a(Intent intent) { if ("android.media.browse.MediaBrowserService".equals(intent.getAction())) { return this.a.getBinder(); } return null; } } public static class Result { private final Object a; private boolean b; private boolean c; private boolean d; private int e; Result(Object obj) { this.a = obj; } void a(int i) { this.e = i; } void a(T t) { throw null; } public void b(T t) { if (!this.c && !this.d) { this.c = true; a((Result) t); } else { throw new IllegalStateException("sendResult() called when either sendResult() or sendError() had already been called for: " + this.a); } } int a() { return this.e; } void a(Bundle bundle) { throw new UnsupportedOperationException("It is not supported to send an error for " + this.a); } public void b(Bundle bundle) { if (!this.c && !this.d) { this.d = true; a(bundle); } else { throw new IllegalStateException("sendError() called when either sendResult() or sendError() had already been called for: " + this.a); } } boolean b() { return this.b || this.c || this.d; } } private class ServiceBinderImpl { ServiceBinderImpl() { } public void a(final String str, final int i, final int i2, final Bundle bundle, final ServiceCallbacks serviceCallbacks) { if (MediaBrowserServiceCompat.this.a(str, i2)) { MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.1 @Override // java.lang.Runnable public void run() { IBinder asBinder = serviceCallbacks.asBinder(); MediaBrowserServiceCompat.this.b.remove(asBinder); ConnectionRecord connectionRecord = MediaBrowserServiceCompat.this.new ConnectionRecord(str, i, i2, bundle, serviceCallbacks); MediaBrowserServiceCompat mediaBrowserServiceCompat = MediaBrowserServiceCompat.this; mediaBrowserServiceCompat.c = connectionRecord; connectionRecord.d = mediaBrowserServiceCompat.a(str, i2, bundle); MediaBrowserServiceCompat mediaBrowserServiceCompat2 = MediaBrowserServiceCompat.this; mediaBrowserServiceCompat2.c = null; if (connectionRecord.d != null) { try { mediaBrowserServiceCompat2.b.put(asBinder, connectionRecord); asBinder.linkToDeath(connectionRecord, 0); if (MediaBrowserServiceCompat.this.e == null) { return; } connectionRecord.d.b(); throw null; } catch (RemoteException unused) { Log.w("MBServiceCompat", "Calling onConnect() failed. Dropping client. pkg=" + str); MediaBrowserServiceCompat.this.b.remove(asBinder); return; } } Log.i("MBServiceCompat", "No root for client " + str + " from service " + AnonymousClass1.class.getName()); try { serviceCallbacks.a(); } catch (RemoteException unused2) { Log.w("MBServiceCompat", "Calling onConnectFailed() failed. Ignoring. pkg=" + str); } } }); return; } throw new IllegalArgumentException("Package/uid mismatch: uid=" + i2 + " package=" + str); } public void b(final ServiceCallbacks serviceCallbacks) { MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.7 @Override // java.lang.Runnable public void run() { IBinder asBinder = serviceCallbacks.asBinder(); ConnectionRecord remove = MediaBrowserServiceCompat.this.b.remove(asBinder); if (remove != null) { asBinder.unlinkToDeath(remove, 0); } } }); } public void b(final String str, final Bundle bundle, final ResultReceiver resultReceiver, final ServiceCallbacks serviceCallbacks) { if (TextUtils.isEmpty(str) || resultReceiver == null) { return; } MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.9 @Override // java.lang.Runnable public void run() { ConnectionRecord connectionRecord = MediaBrowserServiceCompat.this.b.get(serviceCallbacks.asBinder()); if (connectionRecord != null) { MediaBrowserServiceCompat.this.a(str, bundle, connectionRecord, resultReceiver); return; } Log.w("MBServiceCompat", "sendCustomAction for callback that isn't registered action=" + str + ", extras=" + bundle); } }); } public void a(final ServiceCallbacks serviceCallbacks) { MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.2 @Override // java.lang.Runnable public void run() { ConnectionRecord remove = MediaBrowserServiceCompat.this.b.remove(serviceCallbacks.asBinder()); if (remove != null) { remove.b.asBinder().unlinkToDeath(remove, 0); } } }); } public void a(final String str, final IBinder iBinder, final Bundle bundle, final ServiceCallbacks serviceCallbacks) { MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.3 @Override // java.lang.Runnable public void run() { ConnectionRecord connectionRecord = MediaBrowserServiceCompat.this.b.get(serviceCallbacks.asBinder()); if (connectionRecord != null) { MediaBrowserServiceCompat.this.a(str, connectionRecord, iBinder, bundle); return; } Log.w("MBServiceCompat", "addSubscription for callback that isn't registered id=" + str); } }); } public void a(final String str, final IBinder iBinder, final ServiceCallbacks serviceCallbacks) { MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.4 @Override // java.lang.Runnable public void run() { ConnectionRecord connectionRecord = MediaBrowserServiceCompat.this.b.get(serviceCallbacks.asBinder()); if (connectionRecord == null) { Log.w("MBServiceCompat", "removeSubscription for callback that isn't registered id=" + str); return; } if (MediaBrowserServiceCompat.this.a(str, connectionRecord, iBinder)) { return; } Log.w("MBServiceCompat", "removeSubscription called for " + str + " which is not subscribed"); } }); } public void a(final String str, final ResultReceiver resultReceiver, final ServiceCallbacks serviceCallbacks) { if (TextUtils.isEmpty(str) || resultReceiver == null) { return; } MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.5 @Override // java.lang.Runnable public void run() { ConnectionRecord connectionRecord = MediaBrowserServiceCompat.this.b.get(serviceCallbacks.asBinder()); if (connectionRecord != null) { MediaBrowserServiceCompat.this.a(str, connectionRecord, resultReceiver); return; } Log.w("MBServiceCompat", "getMediaItem for callback that isn't registered id=" + str); } }); } public void a(final ServiceCallbacks serviceCallbacks, final String str, final int i, final int i2, final Bundle bundle) { MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.6 @Override // java.lang.Runnable public void run() { IBinder asBinder = serviceCallbacks.asBinder(); MediaBrowserServiceCompat.this.b.remove(asBinder); ConnectionRecord connectionRecord = MediaBrowserServiceCompat.this.new ConnectionRecord(str, i, i2, bundle, serviceCallbacks); MediaBrowserServiceCompat.this.b.put(asBinder, connectionRecord); try { asBinder.linkToDeath(connectionRecord, 0); } catch (RemoteException unused) { Log.w("MBServiceCompat", "IBinder is already dead."); } } }); } public void a(final String str, final Bundle bundle, final ResultReceiver resultReceiver, final ServiceCallbacks serviceCallbacks) { if (TextUtils.isEmpty(str) || resultReceiver == null) { return; } MediaBrowserServiceCompat.this.d.a(new Runnable() { // from class: androidx.media.MediaBrowserServiceCompat.ServiceBinderImpl.8 @Override // java.lang.Runnable public void run() { ConnectionRecord connectionRecord = MediaBrowserServiceCompat.this.b.get(serviceCallbacks.asBinder()); if (connectionRecord != null) { MediaBrowserServiceCompat.this.b(str, bundle, connectionRecord, resultReceiver); return; } Log.w("MBServiceCompat", "search for callback that isn't registered query=" + str); } }); } } private interface ServiceCallbacks { void a() throws RemoteException; void a(String str, List list, Bundle bundle, Bundle bundle2) throws RemoteException; IBinder asBinder(); } private static class ServiceCallbacksCompat implements ServiceCallbacks { final Messenger a; ServiceCallbacksCompat(Messenger messenger) { this.a = messenger; } @Override // androidx.media.MediaBrowserServiceCompat.ServiceCallbacks public void a() throws RemoteException { a(2, null); } @Override // androidx.media.MediaBrowserServiceCompat.ServiceCallbacks public IBinder asBinder() { return this.a.getBinder(); } @Override // androidx.media.MediaBrowserServiceCompat.ServiceCallbacks public void a(String str, List list, Bundle bundle, Bundle bundle2) throws RemoteException { Bundle bundle3 = new Bundle(); bundle3.putString("data_media_item_id", str); bundle3.putBundle("data_options", bundle); bundle3.putBundle("data_notify_children_changed_options", bundle2); if (list != null) { bundle3.putParcelableArrayList("data_media_item_list", list instanceof ArrayList ? (ArrayList) list : new ArrayList<>(list)); } a(3, bundle3); } private void a(int i, Bundle bundle) throws RemoteException { Message obtain = Message.obtain(); obtain.what = i; obtain.arg1 = 2; obtain.setData(bundle); this.a.send(obtain); } } private final class ServiceHandler extends Handler { private final ServiceBinderImpl a; ServiceHandler() { this.a = MediaBrowserServiceCompat.this.new ServiceBinderImpl(); } public void a(Runnable runnable) { if (Thread.currentThread() == getLooper().getThread()) { runnable.run(); } else { post(runnable); } } @Override // android.os.Handler public void handleMessage(Message message) { Bundle data = message.getData(); switch (message.what) { case 1: Bundle bundle = data.getBundle("data_root_hints"); MediaSessionCompat.a(bundle); this.a.a(data.getString("data_package_name"), data.getInt("data_calling_pid"), data.getInt("data_calling_uid"), bundle, new ServiceCallbacksCompat(message.replyTo)); break; case 2: this.a.a(new ServiceCallbacksCompat(message.replyTo)); break; case 3: Bundle bundle2 = data.getBundle("data_options"); MediaSessionCompat.a(bundle2); this.a.a(data.getString("data_media_item_id"), BundleCompat.a(data, "data_callback_token"), bundle2, new ServiceCallbacksCompat(message.replyTo)); break; case 4: this.a.a(data.getString("data_media_item_id"), BundleCompat.a(data, "data_callback_token"), new ServiceCallbacksCompat(message.replyTo)); break; case 5: this.a.a(data.getString("data_media_item_id"), (ResultReceiver) data.getParcelable("data_result_receiver"), new ServiceCallbacksCompat(message.replyTo)); break; case 6: Bundle bundle3 = data.getBundle("data_root_hints"); MediaSessionCompat.a(bundle3); this.a.a(new ServiceCallbacksCompat(message.replyTo), data.getString("data_package_name"), data.getInt("data_calling_pid"), data.getInt("data_calling_uid"), bundle3); break; case 7: this.a.b(new ServiceCallbacksCompat(message.replyTo)); break; case 8: Bundle bundle4 = data.getBundle("data_search_extras"); MediaSessionCompat.a(bundle4); this.a.a(data.getString("data_search_query"), bundle4, (ResultReceiver) data.getParcelable("data_result_receiver"), new ServiceCallbacksCompat(message.replyTo)); break; case 9: Bundle bundle5 = data.getBundle("data_custom_action_extras"); MediaSessionCompat.a(bundle5); this.a.b(data.getString("data_custom_action"), bundle5, (ResultReceiver) data.getParcelable("data_result_receiver"), new ServiceCallbacksCompat(message.replyTo)); break; default: Log.w("MBServiceCompat", "Unhandled message: " + message + "\n Service version: 2\n Client version: " + message.arg1); break; } } @Override // android.os.Handler public boolean sendMessageAtTime(Message message, long j) { Bundle data = message.getData(); data.setClassLoader(MediaBrowserCompat.class.getClassLoader()); data.putInt("data_calling_uid", Binder.getCallingUid()); data.putInt("data_calling_pid", Binder.getCallingPid()); return super.sendMessageAtTime(message, j); } } public abstract BrowserRoot a(String str, int i, Bundle bundle); public void a(String str) { } public void a(String str, Bundle bundle) { } public abstract void a(String str, Result> result); public void a(String str, Result> result, Bundle bundle) { result.a(1); a(str, result); } public void b(String str, Result result) { result.a(2); result.b((Result) null); } @Override // android.app.Service public void dump(FileDescriptor fileDescriptor, PrintWriter printWriter, String[] strArr) { } @Override // android.app.Service public IBinder onBind(Intent intent) { return this.a.a(intent); } @Override // android.app.Service public void onCreate() { super.onCreate(); int i = Build.VERSION.SDK_INT; if (i >= 28) { this.a = new MediaBrowserServiceImplApi28(this); } else if (i >= 26) { this.a = new MediaBrowserServiceImplApi26(); } else if (i >= 23) { this.a = new MediaBrowserServiceImplApi23(); } else if (i >= 21) { this.a = new MediaBrowserServiceImplApi21(); } else { this.a = new MediaBrowserServiceImplBase(); } this.a.a(); } class MediaBrowserServiceImplApi21 implements MediaBrowserServiceImpl, MediaBrowserServiceCompatApi21.ServiceCompatProxy { final List a = new ArrayList(); Object b; Messenger c; MediaBrowserServiceImplApi21() { } @Override // androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImpl public void a() { this.b = MediaBrowserServiceCompatApi21.a(MediaBrowserServiceCompat.this, this); MediaBrowserServiceCompatApi21.a(this.b); } @Override // androidx.media.MediaBrowserServiceCompatApi21.ServiceCompatProxy public void b(String str, final MediaBrowserServiceCompatApi21.ResultWrapper> resultWrapper) { MediaBrowserServiceCompat.this.a(str, new Result>(this, str) { // from class: androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImplApi21.2 /* JADX INFO: Access modifiers changed from: package-private */ @Override // androidx.media.MediaBrowserServiceCompat.Result public void a(List list) { ArrayList arrayList; if (list != null) { arrayList = new ArrayList(); for (MediaBrowserCompat.MediaItem mediaItem : list) { Parcel obtain = Parcel.obtain(); mediaItem.writeToParcel(obtain, 0); arrayList.add(obtain); } } else { arrayList = null; } resultWrapper.a((MediaBrowserServiceCompatApi21.ResultWrapper) arrayList); } }); } @Override // androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImpl public IBinder a(Intent intent) { return MediaBrowserServiceCompatApi21.a(this.b, intent); } @Override // androidx.media.MediaBrowserServiceCompatApi21.ServiceCompatProxy public MediaBrowserServiceCompatApi21.BrowserRoot a(String str, int i, Bundle bundle) { Bundle bundle2; if (bundle == null || bundle.getInt("extra_client_version", 0) == 0) { bundle2 = null; } else { bundle.remove("extra_client_version"); this.c = new Messenger(MediaBrowserServiceCompat.this.d); bundle2 = new Bundle(); bundle2.putInt("extra_service_version", 2); BundleCompat.a(bundle2, "extra_messenger", this.c.getBinder()); MediaSessionCompat.Token token = MediaBrowserServiceCompat.this.e; if (token != null) { IMediaSession extraBinder = token.getExtraBinder(); BundleCompat.a(bundle2, "extra_session_binder", extraBinder == null ? null : extraBinder.asBinder()); } else { this.a.add(bundle2); } } MediaBrowserServiceCompat mediaBrowserServiceCompat = MediaBrowserServiceCompat.this; mediaBrowserServiceCompat.c = mediaBrowserServiceCompat.new ConnectionRecord(str, -1, i, bundle, null); BrowserRoot a = MediaBrowserServiceCompat.this.a(str, i, bundle); MediaBrowserServiceCompat.this.c = null; if (a == null) { return null; } if (bundle2 == null) { a.a(); throw null; } a.a(); throw null; } } class MediaBrowserServiceImplApi23 extends MediaBrowserServiceImplApi21 implements MediaBrowserServiceCompatApi23.ServiceCompatProxy { MediaBrowserServiceImplApi23() { super(); } @Override // androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImplApi21, androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImpl public void a() { this.b = MediaBrowserServiceCompatApi23.a(MediaBrowserServiceCompat.this, this); MediaBrowserServiceCompatApi21.a(this.b); } @Override // androidx.media.MediaBrowserServiceCompatApi23.ServiceCompatProxy public void a(String str, final MediaBrowserServiceCompatApi21.ResultWrapper resultWrapper) { MediaBrowserServiceCompat.this.b(str, new Result(this, str) { // from class: androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImplApi23.1 /* JADX INFO: Access modifiers changed from: package-private */ @Override // androidx.media.MediaBrowserServiceCompat.Result public void a(MediaBrowserCompat.MediaItem mediaItem) { if (mediaItem == null) { resultWrapper.a((MediaBrowserServiceCompatApi21.ResultWrapper) null); return; } Parcel obtain = Parcel.obtain(); mediaItem.writeToParcel(obtain, 0); resultWrapper.a((MediaBrowserServiceCompatApi21.ResultWrapper) obtain); } }); } } class MediaBrowserServiceImplApi26 extends MediaBrowserServiceImplApi23 implements MediaBrowserServiceCompatApi26.ServiceCompatProxy { MediaBrowserServiceImplApi26() { super(); } @Override // androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImplApi23, androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImplApi21, androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImpl public void a() { this.b = MediaBrowserServiceCompatApi26.a(MediaBrowserServiceCompat.this, this); MediaBrowserServiceCompatApi21.a(this.b); } @Override // androidx.media.MediaBrowserServiceCompatApi26.ServiceCompatProxy public void a(String str, final MediaBrowserServiceCompatApi26.ResultWrapper resultWrapper, Bundle bundle) { MediaBrowserServiceCompat.this.a(str, new Result>(this, str) { // from class: androidx.media.MediaBrowserServiceCompat.MediaBrowserServiceImplApi26.1 /* JADX INFO: Access modifiers changed from: package-private */ @Override // androidx.media.MediaBrowserServiceCompat.Result public void a(List list) { ArrayList arrayList; if (list != null) { arrayList = new ArrayList(); for (MediaBrowserCompat.MediaItem mediaItem : list) { Parcel obtain = Parcel.obtain(); mediaItem.writeToParcel(obtain, 0); arrayList.add(obtain); } } else { arrayList = null; } resultWrapper.a(arrayList, a()); } }, bundle); } } public void a(String str, Bundle bundle, Result result) { result.b((Bundle) null); } public void b(String str, Bundle bundle, Result> result) { result.a(4); result.b((Result>) null); } boolean a(String str, int i) { if (str == null) { return false; } for (String str2 : getPackageManager().getPackagesForUid(i)) { if (str2.equals(str)) { return true; } } return false; } void b(String str, Bundle bundle, ConnectionRecord connectionRecord, final ResultReceiver resultReceiver) { Result> result = new Result>(this, str) { // from class: androidx.media.MediaBrowserServiceCompat.3 /* JADX INFO: Access modifiers changed from: package-private */ @Override // androidx.media.MediaBrowserServiceCompat.Result public void a(List list) { if ((a() & 4) != 0 || list == null) { resultReceiver.send(-1, null); return; } Bundle bundle2 = new Bundle(); bundle2.putParcelableArray("search_results", (Parcelable[]) list.toArray(new MediaBrowserCompat.MediaItem[0])); resultReceiver.send(0, bundle2); } }; b(str, bundle, result); if (result.b()) { return; } throw new IllegalStateException("onSearch must call detach() or sendResult() before returning for query=" + str); } void a(String str, ConnectionRecord connectionRecord, IBinder iBinder, Bundle bundle) { List> list = connectionRecord.c.get(str); if (list == null) { list = new ArrayList<>(); } for (Pair pair : list) { if (iBinder == pair.a && MediaBrowserCompatUtils.a(bundle, pair.b)) { return; } } list.add(new Pair<>(iBinder, bundle)); connectionRecord.c.put(str, list); a(str, connectionRecord, bundle, (Bundle) null); a(str, bundle); } boolean a(String str, ConnectionRecord connectionRecord, IBinder iBinder) { boolean z = false; try { if (iBinder == null) { return connectionRecord.c.remove(str) != null; } List> list = connectionRecord.c.get(str); if (list != null) { Iterator> it = list.iterator(); while (it.hasNext()) { if (iBinder == it.next().a) { it.remove(); z = true; } } if (list.size() == 0) { connectionRecord.c.remove(str); } } return z; } finally { a(str); } } void a(final String str, final ConnectionRecord connectionRecord, final Bundle bundle, final Bundle bundle2) { Result> result = new Result>(str) { // from class: androidx.media.MediaBrowserServiceCompat.1 /* JADX INFO: Access modifiers changed from: package-private */ @Override // androidx.media.MediaBrowserServiceCompat.Result public void a(List list) { if (MediaBrowserServiceCompat.this.b.get(connectionRecord.b.asBinder()) != connectionRecord) { if (MediaBrowserServiceCompat.f) { Log.d("MBServiceCompat", "Not sending onLoadChildren result for connection that has been disconnected. pkg=" + connectionRecord.a + " id=" + str); return; } return; } if ((a() & 1) != 0) { list = MediaBrowserServiceCompat.this.a(list, bundle); } try { connectionRecord.b.a(str, list, bundle, bundle2); } catch (RemoteException unused) { Log.w("MBServiceCompat", "Calling onLoadChildren() failed for id=" + str + " package=" + connectionRecord.a); } } }; if (bundle == null) { a(str, result); } else { a(str, result, bundle); } if (result.b()) { return; } throw new IllegalStateException("onLoadChildren must call detach() or sendResult() before returning for package=" + connectionRecord.a + " id=" + str); } List a(List list, Bundle bundle) { if (list == null) { return null; } int i = bundle.getInt("android.media.browse.extra.PAGE", -1); int i2 = bundle.getInt("android.media.browse.extra.PAGE_SIZE", -1); if (i == -1 && i2 == -1) { return list; } int i3 = i2 * i; int i4 = i3 + i2; if (i >= 0 && i2 >= 1 && i3 < list.size()) { if (i4 > list.size()) { i4 = list.size(); } return list.subList(i3, i4); } return Collections.emptyList(); } void a(String str, ConnectionRecord connectionRecord, final ResultReceiver resultReceiver) { Result result = new Result(this, str) { // from class: androidx.media.MediaBrowserServiceCompat.2 /* JADX INFO: Access modifiers changed from: package-private */ @Override // androidx.media.MediaBrowserServiceCompat.Result public void a(MediaBrowserCompat.MediaItem mediaItem) { if ((a() & 2) != 0) { resultReceiver.send(-1, null); return; } Bundle bundle = new Bundle(); bundle.putParcelable("media_item", mediaItem); resultReceiver.send(0, bundle); } }; b(str, result); if (result.b()) { return; } throw new IllegalStateException("onLoadItem must call detach() or sendResult() before returning for id=" + str); } void a(String str, Bundle bundle, ConnectionRecord connectionRecord, final ResultReceiver resultReceiver) { Result result = new Result(this, str) { // from class: androidx.media.MediaBrowserServiceCompat.4 /* JADX INFO: Access modifiers changed from: package-private */ @Override // androidx.media.MediaBrowserServiceCompat.Result /* renamed from: c, reason: merged with bridge method [inline-methods] */ public void a(Bundle bundle2) { resultReceiver.send(0, bundle2); } /* JADX WARN: Can't rename method to resolve collision */ @Override // androidx.media.MediaBrowserServiceCompat.Result void a(Bundle bundle2) { resultReceiver.send(-1, bundle2); } }; a(str, bundle, result); if (result.b()) { return; } throw new IllegalStateException("onCustomAction must call detach() or sendResult() or sendError() before returning for action=" + str + " extras=" + bundle); } }