class com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair<T extends android.os.Parcelable>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair
super_class: java.lang.Object
{
public final T device;
descriptor: Landroid/os/Parcelable;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Signature: TT;
public final android.companion.DeviceFilter<T> filter;
descriptor: Landroid/companion/DeviceFilter;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Signature: Landroid/companion/DeviceFilter<TT;>;
private void <init>(T, android.companion.DeviceFilter<T>);
descriptor: (Landroid/os/Parcelable;Landroid/companion/DeviceFilter;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
2: aload 0
aload 2
putfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.filter:Landroid/companion/DeviceFilter;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair<TT;>;
0 4 1 device TT;
0 4 2 filter Landroid/companion/DeviceFilter<TT;>;
Signature: (TT;Landroid/companion/DeviceFilter<TT;>;)V
MethodParameters:
Name Flags
device
filter
public static <T extends android.os.Parcelable> com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair<T> findMatch(T, java.util.List<? extends android.companion.DeviceFilter<T>>);
descriptor: (Landroid/os/Parcelable;Ljava/util/List;)Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.android.internal.util.ArrayUtils.isEmpty:(Ljava/util/Collection;)Z
ifeq 1
new com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair
dup
aload 0
aconst_null
invokespecial com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.<init>:(Landroid/os/Parcelable;Landroid/companion/DeviceFilter;)V
areturn
1: StackMap locals:
StackMap stack:
aload 1
aload 0
invokedynamic test(Landroid/os/Parcelable;)Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair.lambda$0(Landroid/os/Parcelable;Landroid/companion/DeviceFilter;)Z (6)
(Landroid/companion/DeviceFilter;)Z
invokestatic com.android.internal.util.CollectionUtils.find:(Ljava/util/List;Ljava/util/function/Predicate;)Ljava/lang/Object;
checkcast android.companion.DeviceFilter
2: astore 2
start local 2 3: aload 2
ifnull 5
4: new com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair
dup
aload 0
aload 2
invokespecial com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.<init>:(Landroid/os/Parcelable;Landroid/companion/DeviceFilter;)V
goto 6
5: StackMap locals: android.companion.DeviceFilter
StackMap stack:
aconst_null
6: StackMap locals:
StackMap stack: com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair
astore 3
start local 3 7: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 dev TT;
0 8 1 filters Ljava/util/List<+Landroid/companion/DeviceFilter<TT;>;>;
3 8 2 matchingFilter Landroid/companion/DeviceFilter<TT;>;
7 8 3 result Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair<TT;>;
Signature: <T::Landroid/os/Parcelable;>(TT;Ljava/util/List<+Landroid/companion/DeviceFilter<TT;>;>;)Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair<TT;>;
MethodParameters:
Name Flags
dev
filters
public java.lang.String getDisplayName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.filter:Landroid/companion/DeviceFilter;
ifnonnull 9
1: aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
invokestatic com.android.internal.util.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
instanceof android.bluetooth.BluetoothDevice
ifeq 4
3: aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
checkcast android.bluetooth.BluetoothDevice
invokestatic android.companion.BluetoothDeviceFilterUtils.getDeviceDisplayNameInternal:(Landroid/bluetooth/BluetoothDevice;)Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
instanceof android.net.wifi.ScanResult
ifeq 6
5: aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
checkcast android.net.wifi.ScanResult
invokestatic android.companion.BluetoothDeviceFilterUtils.getDeviceDisplayNameInternal:(Landroid/net/wifi/ScanResult;)Ljava/lang/String;
areturn
6: StackMap locals:
StackMap stack:
aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
instanceof android.bluetooth.le.ScanResult
ifeq 8
7: aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
checkcast android.bluetooth.le.ScanResult
invokevirtual android.bluetooth.le.ScanResult.getDevice:()Landroid/bluetooth/BluetoothDevice;
invokestatic android.companion.BluetoothDeviceFilterUtils.getDeviceDisplayNameInternal:(Landroid/bluetooth/BluetoothDevice;)Ljava/lang/String;
areturn
8: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unknown device type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.filter:Landroid/companion/DeviceFilter;
aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
invokeinterface android.companion.DeviceFilter.getDeviceDisplayName:(Landroid/os/Parcelable;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair<TT;>;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 1
iconst_1
ireturn
1: StackMap locals:
StackMap stack:
aload 1
ifnull 2
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
if_acmpeq 3
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 1
checkcast com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair
astore 2
start local 2 4: aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
invokestatic android.companion.BluetoothDeviceFilterUtils.getDeviceMacAddress:(Landroid/os/Parcelable;)Ljava/lang/String;
aload 2
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
invokestatic android.companion.BluetoothDeviceFilterUtils.getDeviceMacAddress:(Landroid/os/Parcelable;)Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair<TT;>;
0 5 1 o Ljava/lang/Object;
4 5 2 that Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair<*>;
MethodParameters:
Name Flags
o
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
invokestatic android.companion.BluetoothDeviceFilterUtils.getDeviceMacAddress:(Landroid/os/Parcelable;)Ljava/lang/String;
aastore
invokestatic java.util.Objects.hash:([Ljava/lang/Object;)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair<TT;>;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "DeviceFilterPair{device="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.device:Landroid/os/Parcelable;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
2: ldc ", filter="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair.filter:Landroid/companion/DeviceFilter;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
4: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/android/companiondevicemanager/DeviceDiscoveryService$DeviceFilterPair<TT;>;
private static boolean lambda$0(android.os.Parcelable, android.companion.DeviceFilter);
descriptor: (Landroid/os/Parcelable;Landroid/companion/DeviceFilter;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
aload 0
invokeinterface android.companion.DeviceFilter.matches:(Landroid/os/Parcelable;)Z
ireturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 f Landroid/companion/DeviceFilter<TD;>;
}
Signature: <T::Landroid/os/Parcelable;>Ljava/lang/Object;
SourceFile: "DeviceDiscoveryService.java"
NestHost: com.android.companiondevicemanager.DeviceDiscoveryService
InnerClasses:
DeviceFilterPair = com.android.companiondevicemanager.DeviceDiscoveryService$DeviceFilterPair of com.android.companiondevicemanager.DeviceDiscoveryService
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles