public class org.springframework.util.SimpleIdGenerator extends java.lang.Object implements org.springframework.util.IdGenerator
{
private final java.util.concurrent.atomic.AtomicLong mostSigBits;
private final java.util.concurrent.atomic.AtomicLong leastSigBits;
public void <init>()
{
org.springframework.util.SimpleIdGenerator v;
java.util.concurrent.atomic.AtomicLong v, v;
v := @this: org.springframework.util.SimpleIdGenerator;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>(long)>(0L);
v.<org.springframework.util.SimpleIdGenerator: java.util.concurrent.atomic.AtomicLong mostSigBits> = v;
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>(long)>(0L);
v.<org.springframework.util.SimpleIdGenerator: java.util.concurrent.atomic.AtomicLong leastSigBits> = v;
return;
}
public java.util.UUID generateId()
{
long v, v;
java.util.UUID v;
org.springframework.util.SimpleIdGenerator v;
java.util.concurrent.atomic.AtomicLong v, v, v;
byte v;
v := @this: org.springframework.util.SimpleIdGenerator;
v = v.<org.springframework.util.SimpleIdGenerator: java.util.concurrent.atomic.AtomicLong leastSigBits>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long incrementAndGet()>();
v = v cmp 0L;
if v != 0 goto label;
v = v.<org.springframework.util.SimpleIdGenerator: java.util.concurrent.atomic.AtomicLong mostSigBits>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long incrementAndGet()>();
label:
v = new java.util.UUID;
v = v.<org.springframework.util.SimpleIdGenerator: java.util.concurrent.atomic.AtomicLong mostSigBits>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
specialinvoke v.<java.util.UUID: void <init>(long,long)>(v, v);
return v;
}
}