final class org.glassfish.grizzly.impl.SafeFutureImpl$Sync extends java.util.concurrent.locks.AbstractQueuedSynchronizer
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.glassfish.grizzly.impl.SafeFutureImpl$Sync
super_class: java.util.concurrent.locks.AbstractQueuedSynchronizer
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -7828117401763700385
private static final int READY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int RESULT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int RAN;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int CANCELLED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private R result;
descriptor: Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Signature: TR;
private java.lang.Throwable exception;
descriptor: Ljava/lang/Throwable;
flags: (0x0002) ACC_PRIVATE
final org.glassfish.grizzly.impl.SafeFutureImpl this$0;
descriptor: Lorg/glassfish/grizzly/impl/SafeFutureImpl;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(org.glassfish.grizzly.impl.SafeFutureImpl);
descriptor: (Lorg/glassfish/grizzly/impl/SafeFutureImpl;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.this$0:Lorg/glassfish/grizzly/impl/SafeFutureImpl;
aload 0
invokespecial java.util.concurrent.locks.AbstractQueuedSynchronizer.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
MethodParameters:
Name Flags
this$0 final
private boolean ranOrCancelled();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.getState:()I
iconst_3
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
protected int tryAcquireShared(int);
descriptor: (I)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.ranOrCancelled:()Z
ifeq 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_m1
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
0 3 1 ignore I
MethodParameters:
Name Flags
ignore
protected boolean tryReleaseShared(int);
descriptor: (I)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
0 1 1 ignore I
MethodParameters:
Name Flags
ignore
boolean innerIsCancelled();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.getState:()I
iconst_3
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
R innerGet();
descriptor: ()Ljava/lang/Object;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.acquireSharedInterruptibly:(I)V
1: aload 0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.getState:()I
iconst_3
if_icmpne 3
2: new java.util.concurrent.CancellationException
dup
invokespecial java.util.concurrent.CancellationException.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.exception:Ljava/lang/Throwable;
ifnull 5
4: new java.util.concurrent.ExecutionException
dup
aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.exception:Ljava/lang/Throwable;
invokespecial java.util.concurrent.ExecutionException.<init>:(Ljava/lang/Throwable;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.result:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
Exceptions:
throws java.lang.InterruptedException, java.util.concurrent.ExecutionException
Signature: ()TR;
R innerGet();
descriptor: (J)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
lload 1
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.tryAcquireSharedNanos:(IJ)Z
ifne 2
1: new java.util.concurrent.TimeoutException
dup
invokespecial java.util.concurrent.TimeoutException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.getState:()I
iconst_3
if_icmpne 4
3: new java.util.concurrent.CancellationException
dup
invokespecial java.util.concurrent.CancellationException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.exception:Ljava/lang/Throwable;
ifnull 6
5: new java.util.concurrent.ExecutionException
dup
aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.exception:Ljava/lang/Throwable;
invokespecial java.util.concurrent.ExecutionException.<init>:(Ljava/lang/Throwable;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.result:Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
0 7 1 nanosTimeout J
Exceptions:
throws java.lang.InterruptedException, java.util.concurrent.ExecutionException, java.util.concurrent.TimeoutException
Signature: (J)TR;
MethodParameters:
Name Flags
nanosTimeout
void innerSet();
descriptor: (Ljava/lang/Object;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
iconst_1
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.compareAndSetState:(II)Z
ifeq 5
1: aload 0
aload 1
putfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.result:Ljava/lang/Object;
2: aload 0
iconst_2
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.setState:(I)V
3: aload 0
iconst_0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.releaseShared:(I)Z
pop
4: aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.this$0:Lorg/glassfish/grizzly/impl/SafeFutureImpl;
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl.done:()V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
0 6 1 v TR;
Signature: (TR;)V
MethodParameters:
Name Flags
v
void innerSetException(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
iconst_1
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.compareAndSetState:(II)Z
ifeq 5
1: aload 0
aload 1
putfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.exception:Ljava/lang/Throwable;
2: aload 0
iconst_2
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.setState:(I)V
3: aload 0
iconst_0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.releaseShared:(I)Z
pop
4: aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.this$0:Lorg/glassfish/grizzly/impl/SafeFutureImpl;
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl.done:()V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
0 6 1 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
t
boolean innerCancel(boolean);
descriptor: (Z)Z
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
iconst_3
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.compareAndSetState:(II)Z
ifeq 4
1: aload 0
iconst_0
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl$Sync.releaseShared:(I)Z
pop
2: aload 0
getfield org.glassfish.grizzly.impl.SafeFutureImpl$Sync.this$0:Lorg/glassfish/grizzly/impl/SafeFutureImpl;
invokevirtual org.glassfish.grizzly.impl.SafeFutureImpl.done:()V
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/glassfish/grizzly/impl/SafeFutureImpl$Sync;
0 5 1 mayInterruptIfRunning Z
MethodParameters:
Name Flags
mayInterruptIfRunning
}
SourceFile: "SafeFutureImpl.java"
NestHost: org.glassfish.grizzly.impl.SafeFutureImpl
InnerClasses:
private final Sync = org.glassfish.grizzly.impl.SafeFutureImpl$Sync of org.glassfish.grizzly.impl.SafeFutureImpl