public class org.eclipse.debug.internal.core.StreamsProxy implements org.eclipse.debug.core.model.IStreamsProxy, org.eclipse.debug.core.model.IStreamsProxy2
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.debug.internal.core.StreamsProxy
super_class: java.lang.Object
{
private org.eclipse.debug.internal.core.OutputStreamMonitor fOutputMonitor;
descriptor: Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
flags: (0x0002) ACC_PRIVATE
private org.eclipse.debug.internal.core.OutputStreamMonitor fErrorMonitor;
descriptor: Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
flags: (0x0002) ACC_PRIVATE
private org.eclipse.debug.internal.core.InputStreamMonitor fInputMonitor;
descriptor: Lorg/eclipse/debug/internal/core/InputStreamMonitor;
flags: (0x0002) ACC_PRIVATE
private boolean fClosed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>(java.lang.Process, java.lang.String);
descriptor: (Ljava/lang/Process;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, 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 1
ifnonnull 3
2: return
3: StackMap locals: org.eclipse.debug.internal.core.StreamsProxy java.lang.Process java.lang.String
StackMap stack:
aload 0
new org.eclipse.debug.internal.core.OutputStreamMonitor
dup
aload 1
invokevirtual java.lang.Process.getInputStream:()Ljava/io/InputStream;
aload 2
invokespecial org.eclipse.debug.internal.core.OutputStreamMonitor.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
putfield org.eclipse.debug.internal.core.StreamsProxy.fOutputMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
4: aload 0
new org.eclipse.debug.internal.core.OutputStreamMonitor
dup
aload 1
invokevirtual java.lang.Process.getErrorStream:()Ljava/io/InputStream;
aload 2
invokespecial org.eclipse.debug.internal.core.OutputStreamMonitor.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
putfield org.eclipse.debug.internal.core.StreamsProxy.fErrorMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
5: aload 0
new org.eclipse.debug.internal.core.InputStreamMonitor
dup
aload 1
invokevirtual java.lang.Process.getOutputStream:()Ljava/io/OutputStream;
aload 2
invokespecial org.eclipse.debug.internal.core.InputStreamMonitor.<init>:(Ljava/io/OutputStream;Ljava/lang/String;)V
putfield org.eclipse.debug.internal.core.StreamsProxy.fInputMonitor:Lorg/eclipse/debug/internal/core/InputStreamMonitor;
6: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fOutputMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.OutputStreamMonitor.startMonitoring:()V
7: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fErrorMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.OutputStreamMonitor.startMonitoring:()V
8: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fInputMonitor:Lorg/eclipse/debug/internal/core/InputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.InputStreamMonitor.startMonitoring:()V
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/debug/internal/core/StreamsProxy;
0 10 1 process Ljava/lang/Process;
0 10 2 encoding Ljava/lang/String;
MethodParameters:
Name Flags
process
encoding
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual org.eclipse.debug.internal.core.StreamsProxy.isClosed:(Z)Z
ifne 4
1: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fOutputMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.OutputStreamMonitor.close:()V
2: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fErrorMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.OutputStreamMonitor.close:()V
3: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fInputMonitor:Lorg/eclipse/debug/internal/core/InputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.InputStreamMonitor.close:()V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/debug/internal/core/StreamsProxy;
private synchronized boolean isClosed(boolean);
descriptor: (Z)Z
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fClosed:Z
istore 2
start local 2 1: iload 1
ifeq 3
2: aload 0
iconst_1
putfield org.eclipse.debug.internal.core.StreamsProxy.fClosed:Z
3: StackMap locals: int
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/debug/internal/core/StreamsProxy;
0 4 1 setClosed Z
1 4 2 closed Z
MethodParameters:
Name Flags
setClosed
public void kill();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
dup
astore 1
monitorenter
1: aload 0
iconst_1
putfield org.eclipse.debug.internal.core.StreamsProxy.fClosed:Z
2: aload 1
monitorexit
3: goto 6
StackMap locals: org.eclipse.debug.internal.core.StreamsProxy org.eclipse.debug.internal.core.StreamsProxy
StackMap stack: java.lang.Throwable
4: aload 1
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fOutputMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.OutputStreamMonitor.kill:()V
7: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fErrorMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.OutputStreamMonitor.kill:()V
8: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fInputMonitor:Lorg/eclipse/debug/internal/core/InputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.InputStreamMonitor.close:()V
9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/debug/internal/core/StreamsProxy;
Exception table:
from to target type
1 3 4 any
4 5 4 any
public org.eclipse.debug.core.model.IStreamMonitor getErrorStreamMonitor();
descriptor: ()Lorg/eclipse/debug/core/model/IStreamMonitor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fErrorMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/debug/internal/core/StreamsProxy;
public org.eclipse.debug.core.model.IStreamMonitor getOutputStreamMonitor();
descriptor: ()Lorg/eclipse/debug/core/model/IStreamMonitor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fOutputMonitor:Lorg/eclipse/debug/internal/core/OutputStreamMonitor;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/debug/internal/core/StreamsProxy;
public void write(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
invokevirtual org.eclipse.debug.internal.core.StreamsProxy.isClosed:(Z)Z
ifne 3
1: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fInputMonitor:Lorg/eclipse/debug/internal/core/InputStreamMonitor;
aload 1
invokevirtual org.eclipse.debug.internal.core.InputStreamMonitor.write:(Ljava/lang/String;)V
2: goto 4
3: StackMap locals:
StackMap stack:
new java.io.IOException
dup
invokespecial java.io.IOException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/debug/internal/core/StreamsProxy;
0 5 1 input Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
public void closeInputStream();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual org.eclipse.debug.internal.core.StreamsProxy.isClosed:(Z)Z
ifne 3
1: aload 0
getfield org.eclipse.debug.internal.core.StreamsProxy.fInputMonitor:Lorg/eclipse/debug/internal/core/InputStreamMonitor;
invokevirtual org.eclipse.debug.internal.core.InputStreamMonitor.closeInputStream:()V
2: goto 4
3: StackMap locals:
StackMap stack:
new java.io.IOException
dup
invokespecial java.io.IOException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/debug/internal/core/StreamsProxy;
Exceptions:
throws java.io.IOException
}
SourceFile: "StreamsProxy.java"