class android.net.LocalSocketImpl$SocketInputStream extends java.io.InputStream
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: android.net.LocalSocketImpl$SocketInputStream
super_class: java.io.InputStream
{
final android.net.LocalSocketImpl this$0;
descriptor: Landroid/net/LocalSocketImpl;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(android.net.LocalSocketImpl);
descriptor: (Landroid/net/LocalSocketImpl;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield android.net.LocalSocketImpl$SocketInputStream.this$0:Landroid/net/LocalSocketImpl;
aload 0
invokespecial java.io.InputStream.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/net/LocalSocketImpl$SocketInputStream;
MethodParameters:
Name Flags
this$0 final
public int available();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tInt32Ref cannot be resolved to a type\n\tInt32Ref cannot be resolved to a type\n\tOs cannot be resolved\n\tOsConstants cannot be resolved to a variable\n\tErrnoException cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/net/LocalSocketImpl$SocketInputStream;
Exceptions:
throws java.io.IOException
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.net.LocalSocketImpl$SocketInputStream.this$0:Landroid/net/LocalSocketImpl;
invokevirtual android.net.LocalSocketImpl.close:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/net/LocalSocketImpl$SocketInputStream;
Exceptions:
throws java.io.IOException
public int read();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield android.net.LocalSocketImpl$SocketInputStream.this$0:Landroid/net/LocalSocketImpl;
getfield android.net.LocalSocketImpl.readMonitor:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
getfield android.net.LocalSocketImpl$SocketInputStream.this$0:Landroid/net/LocalSocketImpl;
getfield android.net.LocalSocketImpl.fd:Ljava/io/FileDescriptor;
astore 3
start local 3 2: aload 3
ifnonnull 3
new java.io.IOException
dup
ldc "socket closed"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: android.net.LocalSocketImpl$SocketInputStream top java.lang.Object java.io.FileDescriptor
StackMap stack:
aload 0
getfield android.net.LocalSocketImpl$SocketInputStream.this$0:Landroid/net/LocalSocketImpl;
aload 3
invokevirtual android.net.LocalSocketImpl.read_native:(Ljava/io/FileDescriptor;)I
istore 1
start local 1 4: iload 1
aload 2
monitorexit
5: ireturn
end local 3 end local 1 6: StackMap locals: android.net.LocalSocketImpl$SocketInputStream top java.lang.Object
StackMap stack: java.lang.Throwable
aload 2
monitorexit
7: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/net/LocalSocketImpl$SocketInputStream;
4 6 1 ret I
2 6 3 myFd Ljava/io/FileDescriptor;
Exception table:
from to target type
1 5 6 any
6 7 6 any
Exceptions:
throws java.io.IOException
public int read(byte[]);
descriptor: ([B)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
aload 1
arraylength
invokevirtual android.net.LocalSocketImpl$SocketInputStream.read:([BII)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/net/LocalSocketImpl$SocketInputStream;
0 1 1 b [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
b
public int read(byte[], int, int);
descriptor: ([BII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield android.net.LocalSocketImpl$SocketInputStream.this$0:Landroid/net/LocalSocketImpl;
getfield android.net.LocalSocketImpl.readMonitor:Ljava/lang/Object;
dup
astore 4
monitorenter
1: aload 0
getfield android.net.LocalSocketImpl$SocketInputStream.this$0:Landroid/net/LocalSocketImpl;
getfield android.net.LocalSocketImpl.fd:Ljava/io/FileDescriptor;
astore 5
start local 5 2: aload 5
ifnonnull 3
new java.io.IOException
dup
ldc "socket closed"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.lang.Object java.io.FileDescriptor
StackMap stack:
iload 2
iflt 4
iload 3
iflt 4
iload 2
iload 3
iadd
aload 1
arraylength
if_icmple 5
4: StackMap locals:
StackMap stack:
new java.lang.ArrayIndexOutOfBoundsException
dup
invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield android.net.LocalSocketImpl$SocketInputStream.this$0:Landroid/net/LocalSocketImpl;
aload 1
iload 2
iload 3
aload 5
invokevirtual android.net.LocalSocketImpl.readba_native:([BIILjava/io/FileDescriptor;)I
istore 6
start local 6 6: iload 6
aload 4
monitorexit
7: ireturn
end local 6 end local 5 8: StackMap locals: android.net.LocalSocketImpl$SocketInputStream byte[] int int java.lang.Object
StackMap stack: java.lang.Throwable
aload 4
monitorexit
9: athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Landroid/net/LocalSocketImpl$SocketInputStream;
0 10 1 b [B
0 10 2 off I
0 10 3 len I
2 8 5 myFd Ljava/io/FileDescriptor;
6 8 6 ret I
Exception table:
from to target type
1 7 8 any
8 9 8 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
b
off
len
}
SourceFile: "LocalSocketImpl.java"
NestHost: android.net.LocalSocketImpl
InnerClasses:
SocketInputStream = android.net.LocalSocketImpl$SocketInputStream of android.net.LocalSocketImpl