class android.telephony.MbmsStreamingSession$3 implements android.content.ServiceConnection
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: android.telephony.MbmsStreamingSession$3
super_class: java.lang.Object
{
final android.telephony.MbmsStreamingSession this$0;
descriptor: Landroid/telephony/MbmsStreamingSession;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(android.telephony.MbmsStreamingSession);
descriptor: (Landroid/telephony/MbmsStreamingSession;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // android.telephony.MbmsStreamingSession$3 this
0: .line 290
aload 0 /* this */
aload 1
putfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // android.telephony.MbmsStreamingSession$3 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/telephony/MbmsStreamingSession$3;
MethodParameters:
Name Flags
this$0 final
public void onServiceConnected(android.content.ComponentName, android.os.IBinder);
descriptor: (Landroid/content/ComponentName;Landroid/os/IBinder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=3
start local 0 // android.telephony.MbmsStreamingSession$3 this
start local 1 // android.content.ComponentName name
start local 2 // android.os.IBinder service
0: .line 294
aload 2 /* service */
invokestatic android.telephony.mbms.vendor.IMbmsStreamingService$Stub.asInterface:(Landroid/os/IBinder;)Landroid/telephony/mbms/vendor/IMbmsStreamingService;
1: .line 293
astore 3 /* streamingService */
start local 3 // android.telephony.mbms.vendor.IMbmsStreamingService streamingService
2: .line 297
aload 3 /* streamingService */
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
getfield android.telephony.MbmsStreamingSession.mInternalCallback:Landroid/telephony/mbms/InternalStreamingSessionCallback;
3: .line 298
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
getfield android.telephony.MbmsStreamingSession.mSubscriptionId:I
4: .line 297
invokeinterface android.telephony.mbms.vendor.IMbmsStreamingService.initialize:(Landroid/telephony/mbms/IMbmsStreamingSessionCallback;I)I
istore 4 /* result */
start local 4 // int result
5: .line 299
goto 22
end local 4 // int result
StackMap locals: android.telephony.MbmsStreamingSession$3 android.content.ComponentName android.os.IBinder android.telephony.mbms.vendor.IMbmsStreamingService
StackMap stack: android.os.RemoteException
6: astore 5 /* e */
start local 5 // android.os.RemoteException e
7: .line 300
ldc "MbmsStreamingSession"
ldc "Service died before initialization"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
8: .line 301
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
9: .line 302
bipush 103
10: .line 303
aload 5 /* e */
invokevirtual android.os.RemoteException.toString:()Ljava/lang/String;
11: .line 301
invokevirtual android.telephony.MbmsStreamingSession.sendErrorToApp:(ILjava/lang/String;)V
12: .line 304
getstatic android.telephony.MbmsStreamingSession.sIsInitialized:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_0
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
13: .line 305
return
end local 5 // android.os.RemoteException e
14: .line 306
StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 5 /* e */
start local 5 // java.lang.RuntimeException e
15: .line 307
ldc "MbmsStreamingSession"
ldc "Runtime exception during initialization"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
16: .line 308
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
17: .line 309
bipush 103
18: .line 310
aload 5 /* e */
invokevirtual java.lang.RuntimeException.toString:()Ljava/lang/String;
19: .line 308
invokevirtual android.telephony.MbmsStreamingSession.sendErrorToApp:(ILjava/lang/String;)V
20: .line 311
getstatic android.telephony.MbmsStreamingSession.sIsInitialized:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_0
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
21: .line 312
return
end local 5 // java.lang.RuntimeException e
start local 4 // int result
22: .line 314
StackMap locals: int
StackMap stack:
iload 4 /* result */
iconst_m1
if_icmpne 25
23: .line 316
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
invokevirtual android.telephony.MbmsStreamingSession.close:()V
24: .line 317
new java.lang.IllegalStateException
dup
ldc "Middleware must not return an unknown error code"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
25: .line 320
StackMap locals:
StackMap stack:
iload 4 /* result */
ifeq 29
26: .line 321
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
iload 4 /* result */
ldc "Error returned during initialization"
invokevirtual android.telephony.MbmsStreamingSession.sendErrorToApp:(ILjava/lang/String;)V
27: .line 322
getstatic android.telephony.MbmsStreamingSession.sIsInitialized:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_0
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
28: .line 323
return
29: .line 326
StackMap locals:
StackMap stack:
aload 3 /* streamingService */
invokeinterface android.telephony.mbms.vendor.IMbmsStreamingService.asBinder:()Landroid/os/IBinder;
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
getfield android.telephony.MbmsStreamingSession.mDeathRecipient:Landroid/os/IBinder$DeathRecipient;
iconst_0
invokeinterface android.os.IBinder.linkToDeath:(Landroid/os/IBinder$DeathRecipient;I)V
30: .line 327
goto 37
StackMap locals:
StackMap stack: android.os.RemoteException
31: pop
32: .line 328
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
iconst_3
33: .line 329
ldc "Middleware lost during initialization"
34: .line 328
invokevirtual android.telephony.MbmsStreamingSession.sendErrorToApp:(ILjava/lang/String;)V
35: .line 330
getstatic android.telephony.MbmsStreamingSession.sIsInitialized:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_0
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
36: .line 331
return
37: .line 333
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
getfield android.telephony.MbmsStreamingSession.mService:Ljava/util/concurrent/atomic/AtomicReference;
aload 3 /* streamingService */
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
38: .line 334
return
end local 4 // int result
end local 3 // android.telephony.mbms.vendor.IMbmsStreamingService streamingService
end local 2 // android.os.IBinder service
end local 1 // android.content.ComponentName name
end local 0 // android.telephony.MbmsStreamingSession$3 this
LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Landroid/telephony/MbmsStreamingSession$3;
0 39 1 name Landroid/content/ComponentName;
0 39 2 service Landroid/os/IBinder;
2 39 3 streamingService Landroid/telephony/mbms/vendor/IMbmsStreamingService;
5 6 4 result I
22 39 4 result I
7 14 5 e Landroid/os/RemoteException;
15 22 5 e Ljava/lang/RuntimeException;
Exception table:
from to target type
2 5 6 Class android.os.RemoteException
2 5 14 Class java.lang.RuntimeException
29 30 31 Class android.os.RemoteException
MethodParameters:
Name Flags
name
service
public void onServiceDisconnected(android.content.ComponentName);
descriptor: (Landroid/content/ComponentName;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.telephony.MbmsStreamingSession$3 this
start local 1 // android.content.ComponentName name
0: .line 338
getstatic android.telephony.MbmsStreamingSession.sIsInitialized:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_0
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
1: .line 339
aload 0 /* this */
getfield android.telephony.MbmsStreamingSession$3.this$0:Landroid/telephony/MbmsStreamingSession;
getfield android.telephony.MbmsStreamingSession.mService:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
2: .line 340
return
end local 1 // android.content.ComponentName name
end local 0 // android.telephony.MbmsStreamingSession$3 this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/telephony/MbmsStreamingSession$3;
0 3 1 name Landroid/content/ComponentName;
MethodParameters:
Name Flags
name
}
SourceFile: "MbmsStreamingSession.java"
EnclosingMethod: android.telephony.MbmsStreamingSession.bindAndInitialize:()I
NestHost: android.telephony.MbmsStreamingSession
InnerClasses:
public abstract DeathRecipient = android.os.IBinder$DeathRecipient of android.os.IBinder
android.telephony.MbmsStreamingSession$3
public abstract Stub = android.telephony.mbms.vendor.IMbmsStreamingService$Stub of android.telephony.mbms.vendor.IMbmsStreamingService