public final class org.apache.cassandra.serializers.DurationSerializer implements org.apache.cassandra.serializers.TypeSerializer<org.apache.cassandra.cql3.Duration>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.cassandra.serializers.DurationSerializer
super_class: java.lang.Object
{
public static final org.apache.cassandra.serializers.DurationSerializer instance;
descriptor: Lorg/apache/cassandra/serializers/DurationSerializer;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.apache.cassandra.serializers.DurationSerializer
dup
invokespecial org.apache.cassandra.serializers.DurationSerializer.<init>:()V
putstatic org.apache.cassandra.serializers.DurationSerializer.instance:Lorg/apache/cassandra/serializers/DurationSerializer;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/serializers/DurationSerializer;
public java.nio.ByteBuffer serialize(org.apache.cassandra.cql3.Duration);
descriptor: (Lorg/apache/cassandra/cql3/Duration;)Ljava/nio/ByteBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=12, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: getstatic org.apache.cassandra.utils.ByteBufferUtil.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.cassandra.cql3.Duration.getMonths:()I
i2l
lstore 2
start local 2 3: aload 1
invokevirtual org.apache.cassandra.cql3.Duration.getDays:()I
i2l
lstore 4
start local 4 4: aload 1
invokevirtual org.apache.cassandra.cql3.Duration.getNanoseconds:()J
lstore 6
start local 6 5: lload 2
invokestatic org.apache.cassandra.utils.vint.VIntCoding.computeVIntSize:(J)I
6: lload 4
invokestatic org.apache.cassandra.utils.vint.VIntCoding.computeVIntSize:(J)I
7: iadd
8: lload 6
invokestatic org.apache.cassandra.utils.vint.VIntCoding.computeVIntSize:(J)I
9: iadd
istore 8
start local 8 10: aconst_null
astore 9
aconst_null
astore 10
11: new org.apache.cassandra.io.util.DataOutputBufferFixed
dup
iload 8
invokespecial org.apache.cassandra.io.util.DataOutputBufferFixed.<init>:(I)V
astore 11
start local 11 12: aload 11
lload 2
invokevirtual org.apache.cassandra.io.util.DataOutputBufferFixed.writeVInt:(J)V
13: aload 11
lload 4
invokevirtual org.apache.cassandra.io.util.DataOutputBufferFixed.writeVInt:(J)V
14: aload 11
lload 6
invokevirtual org.apache.cassandra.io.util.DataOutputBufferFixed.writeVInt:(J)V
15: aload 11
invokevirtual org.apache.cassandra.io.util.DataOutputBufferFixed.buffer:()Ljava/nio/ByteBuffer;
16: aload 11
ifnull 17
aload 11
invokevirtual org.apache.cassandra.io.util.DataOutputBufferFixed.close:()V
17: StackMap locals: org.apache.cassandra.serializers.DurationSerializer org.apache.cassandra.cql3.Duration long long long int java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataOutputBufferFixed
StackMap stack: java.nio.ByteBuffer
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
18: astore 9
19: aload 11
ifnull 20
aload 11
invokevirtual org.apache.cassandra.io.util.DataOutputBufferFixed.close:()V
end local 11 StackMap locals:
StackMap stack:
20: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
21: astore 10
aload 9
ifnonnull 22
aload 10
astore 9
goto 23
StackMap locals:
StackMap stack:
22: aload 9
aload 10
if_acmpeq 23
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
23: aload 9
athrow
24: StackMap locals: org.apache.cassandra.serializers.DurationSerializer org.apache.cassandra.cql3.Duration long long long int
StackMap stack: java.io.IOException
astore 9
start local 9 25: new java.lang.AssertionError
dup
ldc "Unexpected error"
aload 9
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 9 end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/apache/cassandra/serializers/DurationSerializer;
0 26 1 duration Lorg/apache/cassandra/cql3/Duration;
3 26 2 months J
4 26 4 days J
5 26 6 nanoseconds J
10 26 8 size I
12 20 11 output Lorg/apache/cassandra/io/util/DataOutputBufferFixed;
25 26 9 e Ljava/io/IOException;
Exception table:
from to target type
12 16 18 any
11 17 21 any
18 21 21 any
10 17 24 Class java.io.IOException
18 24 24 Class java.io.IOException
MethodParameters:
Name Flags
duration
public org.apache.cassandra.cql3.Duration deserialize(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/cql3/Duration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aconst_null
astore 2
aconst_null
astore 3
3: new org.apache.cassandra.io.util.DataInputBuffer
dup
aload 1
iconst_1
invokespecial org.apache.cassandra.io.util.DataInputBuffer.<init>:(Ljava/nio/ByteBuffer;Z)V
astore 4
start local 4 4: aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.readVInt:()J
l2i
istore 5
start local 5 5: aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.readVInt:()J
l2i
istore 6
start local 6 6: aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.readVInt:()J
lstore 7
start local 7 7: iload 5
iload 6
lload 7
invokestatic org.apache.cassandra.cql3.Duration.newInstance:(IIJ)Lorg/apache/cassandra/cql3/Duration;
8: aload 4
ifnull 9
aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.close:()V
9: StackMap locals: org.apache.cassandra.serializers.DurationSerializer java.nio.ByteBuffer java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataInputBuffer int int long
StackMap stack: org.apache.cassandra.cql3.Duration
areturn
end local 7 end local 6 end local 5 StackMap locals: org.apache.cassandra.serializers.DurationSerializer java.nio.ByteBuffer java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataInputBuffer
StackMap stack: java.lang.Throwable
10: astore 2
11: aload 4
ifnull 12
aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.close:()V
end local 4 StackMap locals:
StackMap stack:
12: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 3
aload 2
ifnonnull 14
aload 3
astore 2
goto 15
StackMap locals:
StackMap stack:
14: aload 2
aload 3
if_acmpeq 15
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 2
athrow
16: StackMap locals: org.apache.cassandra.serializers.DurationSerializer java.nio.ByteBuffer
StackMap stack: java.io.IOException
astore 2
start local 2 17: new java.lang.AssertionError
dup
ldc "Unexpected error"
aload 2
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/apache/cassandra/serializers/DurationSerializer;
0 18 1 bytes Ljava/nio/ByteBuffer;
4 12 4 in Lorg/apache/cassandra/io/util/DataInputBuffer;
5 10 5 months I
6 10 6 days I
7 10 7 nanoseconds J
17 18 2 e Ljava/io/IOException;
Exception table:
from to target type
4 8 10 any
3 9 13 any
10 13 13 any
2 9 16 Class java.io.IOException
10 16 16 Class java.io.IOException
MethodParameters:
Name Flags
bytes
public void validate(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=13, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_3
if_icmpge 2
1: new org.apache.cassandra.serializers.MarshalException
dup
ldc "Expected at least 3 bytes for a duration (%d)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.apache.cassandra.serializers.MarshalException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aconst_null
astore 2
aconst_null
astore 3
3: new org.apache.cassandra.io.util.DataInputBuffer
dup
aload 1
iconst_1
invokespecial org.apache.cassandra.io.util.DataInputBuffer.<init>:(Ljava/nio/ByteBuffer;Z)V
astore 4
start local 4 4: aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.readVInt:()J
lstore 5
start local 5 5: aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.readVInt:()J
lstore 7
start local 7 6: aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.readVInt:()J
lstore 9
start local 9 7: aload 0
lload 5
invokevirtual org.apache.cassandra.serializers.DurationSerializer.canBeCastToInt:(J)Z
ifne 11
8: new org.apache.cassandra.serializers.MarshalException
dup
ldc "The duration months must be a 32 bits integer but was: %d"
iconst_1
anewarray java.lang.Object
dup
iconst_0
9: lload 5
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
10: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.apache.cassandra.serializers.MarshalException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals: org.apache.cassandra.serializers.DurationSerializer java.nio.ByteBuffer java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataInputBuffer long long long
StackMap stack:
aload 0
lload 7
invokevirtual org.apache.cassandra.serializers.DurationSerializer.canBeCastToInt:(J)Z
ifne 15
12: new org.apache.cassandra.serializers.MarshalException
dup
ldc "The duration days must be a 32 bits integer but was: %d"
iconst_1
anewarray java.lang.Object
dup
iconst_0
13: lload 7
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
14: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.apache.cassandra.serializers.MarshalException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals:
StackMap stack:
lload 5
l2i
istore 11
start local 11 16: lload 7
l2i
istore 12
start local 12 17: iload 11
iflt 18
iload 12
iflt 18
lload 9
lconst_0
lcmp
ifge 22
StackMap locals: int int
StackMap stack:
18: iload 11
ifgt 19
iload 12
ifgt 19
lload 9
lconst_0
lcmp
ifle 22
19: StackMap locals:
StackMap stack:
new org.apache.cassandra.serializers.MarshalException
dup
ldc "The duration months, days and nanoseconds must be all of the same sign (%d, %d, %d)"
iconst_3
anewarray java.lang.Object
dup
iconst_0
20: iload 11
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 12
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
lload 9
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
21: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.apache.cassandra.serializers.MarshalException.<init>:(Ljava/lang/String;)V
athrow
end local 12 end local 11 end local 9 end local 7 end local 5 22: StackMap locals: org.apache.cassandra.serializers.DurationSerializer java.nio.ByteBuffer java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataInputBuffer
StackMap stack:
aload 4
ifnull 30
aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.close:()V
goto 30
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 2
aload 4
ifnull 24
aload 4
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.close:()V
end local 4 StackMap locals:
StackMap stack:
24: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
25: astore 3
aload 2
ifnonnull 26
aload 3
astore 2
goto 27
StackMap locals:
StackMap stack:
26: aload 2
aload 3
if_acmpeq 27
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
27: aload 2
athrow
28: StackMap locals: org.apache.cassandra.serializers.DurationSerializer java.nio.ByteBuffer
StackMap stack: java.io.IOException
astore 2
start local 2 29: new java.lang.AssertionError
dup
ldc "Unexpected error"
aload 2
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 30: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/apache/cassandra/serializers/DurationSerializer;
0 31 1 bytes Ljava/nio/ByteBuffer;
4 24 4 in Lorg/apache/cassandra/io/util/DataInputBuffer;
5 22 5 monthsAsLong J
6 22 7 daysAsLong J
7 22 9 nanoseconds J
16 22 11 months I
17 22 12 days I
29 30 2 e Ljava/io/IOException;
Exception table:
from to target type
4 22 23 any
3 25 25 any
2 28 28 Class java.io.IOException
Exceptions:
throws org.apache.cassandra.serializers.MarshalException
MethodParameters:
Name Flags
bytes
private boolean canBeCastToInt(long);
descriptor: (J)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
l2i
i2l
lload 1
lcmp
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/serializers/DurationSerializer;
0 2 1 l J
MethodParameters:
Name Flags
l
public java.lang.String toString(org.apache.cassandra.cql3.Duration);
descriptor: (Lorg/apache/cassandra/cql3/Duration;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
ldc ""
goto 2
StackMap locals:
StackMap stack:
1: aload 1
invokevirtual org.apache.cassandra.cql3.Duration.toString:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/serializers/DurationSerializer;
0 3 1 duration Lorg/apache/cassandra/cql3/Duration;
MethodParameters:
Name Flags
duration
public java.lang.Class<org.apache.cassandra.cql3.Duration> getType();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc Lorg/apache/cassandra/cql3/Duration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/serializers/DurationSerializer;
Signature: ()Ljava/lang/Class<Lorg/apache/cassandra/cql3/Duration;>;
public java.lang.String toString(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast org.apache.cassandra.cql3.Duration
invokevirtual org.apache.cassandra.serializers.DurationSerializer.toString:(Lorg/apache/cassandra/cql3/Duration;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.nio.ByteBuffer serialize(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/nio/ByteBuffer;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast org.apache.cassandra.cql3.Duration
invokevirtual org.apache.cassandra.serializers.DurationSerializer.serialize:(Lorg/apache/cassandra/cql3/Duration;)Ljava/nio/ByteBuffer;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object deserialize(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.apache.cassandra.serializers.DurationSerializer.deserialize:(Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/cql3/Duration;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lorg/apache/cassandra/serializers/TypeSerializer<Lorg/apache/cassandra/cql3/Duration;>;
SourceFile: "DurationSerializer.java"