public class org.springframework.util.SimpleIdGenerator implements org.springframework.util.IdGenerator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.util.SimpleIdGenerator
super_class: java.lang.Object
{
private final java.util.concurrent.atomic.AtomicLong mostSigBits;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicLong leastSigBits;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 // org.springframework.util.SimpleIdGenerator this
0: .line 28
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 30
aload 0 /* this */
new java.util.concurrent.atomic.AtomicLong
dup
lconst_0
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
putfield org.springframework.util.SimpleIdGenerator.mostSigBits:Ljava/util/concurrent/atomic/AtomicLong;
2: .line 32
aload 0 /* this */
new java.util.concurrent.atomic.AtomicLong
dup
lconst_0
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
putfield org.springframework.util.SimpleIdGenerator.leastSigBits:Ljava/util/concurrent/atomic/AtomicLong;
3: .line 28
return
end local 0 // org.springframework.util.SimpleIdGenerator this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/util/SimpleIdGenerator;
public java.util.UUID generateId();
descriptor: ()Ljava/util/UUID;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=1
start local 0 // org.springframework.util.SimpleIdGenerator this
0: .line 37
aload 0 /* this */
getfield org.springframework.util.SimpleIdGenerator.leastSigBits:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
lstore 1 /* leastSigBits */
start local 1 // long leastSigBits
1: .line 38
lload 1 /* leastSigBits */
lconst_0
lcmp
ifne 3
2: .line 39
aload 0 /* this */
getfield org.springframework.util.SimpleIdGenerator.mostSigBits:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
pop2
3: .line 41
StackMap locals: long
StackMap stack:
new java.util.UUID
dup
aload 0 /* this */
getfield org.springframework.util.SimpleIdGenerator.mostSigBits:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
lload 1 /* leastSigBits */
invokespecial java.util.UUID.<init>:(JJ)V
areturn
end local 1 // long leastSigBits
end local 0 // org.springframework.util.SimpleIdGenerator this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/util/SimpleIdGenerator;
1 4 1 leastSigBits J
}
SourceFile: "SimpleIdGenerator.java"