public class org.hibernate.type.descriptor.java.SerializableTypeDescriptor<T extends java.io.Serializable> extends org.hibernate.type.descriptor.java.AbstractTypeDescriptor<T>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.type.descriptor.java.SerializableTypeDescriptor
super_class: org.hibernate.type.descriptor.java.AbstractTypeDescriptor
{
public void <init>(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 1
invokestatic org.hibernate.type.descriptor.java.SerializableTypeDescriptor.createMutabilityPlan:(Ljava/lang/Class;)Lorg/hibernate/type/descriptor/java/MutabilityPlan;
invokespecial org.hibernate.type.descriptor.java.AbstractTypeDescriptor.<init>:(Ljava/lang/Class;Lorg/hibernate/type/descriptor/java/MutabilityPlan;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 2 1 type Ljava/lang/Class<TT;>;
Signature: (Ljava/lang/Class<TT;>;)V
MethodParameters:
Name Flags
type
private static <T> org.hibernate.type.descriptor.java.MutabilityPlan<T> createMutabilityPlan(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lorg/hibernate/type/descriptor/java/MutabilityPlan;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc Lorg/hibernate/annotations/Immutable;
invokevirtual java.lang.Class.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 2
1: getstatic org.hibernate.type.descriptor.java.ImmutableMutabilityPlan.INSTANCE:Lorg/hibernate/type/descriptor/java/ImmutableMutabilityPlan;
areturn
2: StackMap locals:
StackMap stack:
getstatic org.hibernate.type.descriptor.java.SerializableTypeDescriptor$SerializableMutabilityPlan.INSTANCE:Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor$SerializableMutabilityPlan;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lorg/hibernate/type/descriptor/java/MutabilityPlan<TT;>;
MethodParameters:
Name Flags
type
public java.lang.String toString(T);
descriptor: (Ljava/io/Serializable;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.hibernate.type.descriptor.java.PrimitiveByteArrayTypeDescriptor.INSTANCE:Lorg/hibernate/type/descriptor/java/PrimitiveByteArrayTypeDescriptor;
aload 0
aload 1
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toBytes:(Ljava/io/Serializable;)[B
invokevirtual org.hibernate.type.descriptor.java.PrimitiveByteArrayTypeDescriptor.toString:([B)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 1 1 value TT;
Signature: (TT;)Ljava/lang/String;
MethodParameters:
Name Flags
value
public T fromString(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/io/Serializable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getstatic org.hibernate.type.descriptor.java.PrimitiveByteArrayTypeDescriptor.INSTANCE:Lorg/hibernate/type/descriptor/java/PrimitiveByteArrayTypeDescriptor;
aload 1
invokevirtual org.hibernate.type.descriptor.java.PrimitiveByteArrayTypeDescriptor.fromString:(Ljava/lang/String;)[B
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.fromBytes:([B)Ljava/io/Serializable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 1 1 string Ljava/lang/String;
Signature: (Ljava/lang/String;)TT;
MethodParameters:
Name Flags
string
public boolean areEqual(T, );
descriptor: (Ljava/io/Serializable;Ljava/io/Serializable;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnull 3
aload 2
ifnonnull 4
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 7
5: getstatic org.hibernate.type.descriptor.java.PrimitiveByteArrayTypeDescriptor.INSTANCE:Lorg/hibernate/type/descriptor/java/PrimitiveByteArrayTypeDescriptor;
aload 0
aload 1
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toBytes:(Ljava/io/Serializable;)[B
aload 0
aload 2
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toBytes:(Ljava/io/Serializable;)[B
invokevirtual org.hibernate.type.descriptor.java.PrimitiveByteArrayTypeDescriptor.areEqual:([B[B)Z
ifne 7
6: iconst_0
ireturn
StackMap locals:
StackMap stack:
7: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 8 1 one TT;
0 8 2 another TT;
Signature: (TT;TT;)Z
MethodParameters:
Name Flags
one
another
public int extractHashCode();
descriptor: (Ljava/io/Serializable;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.hibernate.type.descriptor.java.PrimitiveByteArrayTypeDescriptor.INSTANCE:Lorg/hibernate/type/descriptor/java/PrimitiveByteArrayTypeDescriptor;
aload 0
aload 1
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toBytes:(Ljava/io/Serializable;)[B
invokevirtual org.hibernate.type.descriptor.java.PrimitiveByteArrayTypeDescriptor.extractHashCode:([B)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 1 1 value TT;
Signature: (TT;)I
MethodParameters:
Name Flags
value
public <X> X unwrap(T, java.lang.Class<X>, org.hibernate.type.descriptor.WrapperOptions);
descriptor: (Ljava/io/Serializable;Ljava/lang/Class;Lorg/hibernate/type/descriptor/WrapperOptions;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 4
3: aload 1
areturn
4: StackMap locals:
StackMap stack:
ldc [B
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 6
5: aload 0
aload 1
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toBytes:(Ljava/io/Serializable;)[B
areturn
6: StackMap locals:
StackMap stack:
ldc Ljava/io/InputStream;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 8
7: new java.io.ByteArrayInputStream
dup
aload 0
aload 1
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toBytes:(Ljava/io/Serializable;)[B
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
areturn
8: StackMap locals:
StackMap stack:
ldc Lorg/hibernate/engine/jdbc/BinaryStream;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 10
9: new org.hibernate.engine.jdbc.internal.BinaryStreamImpl
dup
aload 0
aload 1
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toBytes:(Ljava/io/Serializable;)[B
invokespecial org.hibernate.engine.jdbc.internal.BinaryStreamImpl.<init>:([B)V
areturn
10: StackMap locals:
StackMap stack:
ldc Ljava/sql/Blob;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 12
11: aload 3
invokeinterface org.hibernate.type.descriptor.WrapperOptions.getLobCreator:()Lorg/hibernate/engine/jdbc/LobCreator;
aload 0
aload 1
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toBytes:(Ljava/io/Serializable;)[B
invokeinterface org.hibernate.engine.jdbc.LobCreator.createBlob:([B)Ljava/sql/Blob;
areturn
12: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.unknownUnwrap:(Ljava/lang/Class;)Lorg/hibernate/HibernateException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 13 1 value TT;
0 13 2 type Ljava/lang/Class<TX;>;
0 13 3 options Lorg/hibernate/type/descriptor/WrapperOptions;
Signature: <X:Ljava/lang/Object;>(TT;Ljava/lang/Class<TX;>;Lorg/hibernate/type/descriptor/WrapperOptions;)TX;
MethodParameters:
Name Flags
value
type
options
public <X> T wrap(X, org.hibernate.type.descriptor.WrapperOptions);
descriptor: (Ljava/lang/Object;Lorg/hibernate/type/descriptor/WrapperOptions;)Ljava/io/Serializable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
ldc [B
aload 1
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 4
3: aload 0
aload 1
checkcast byte[]
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.fromBytes:([B)Ljava/io/Serializable;
areturn
4: StackMap locals:
StackMap stack:
ldc Ljava/io/InputStream;
aload 1
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 6
5: aload 0
aload 1
checkcast java.io.InputStream
invokestatic org.hibernate.type.descriptor.java.DataHelper.extractBytes:(Ljava/io/InputStream;)[B
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.fromBytes:([B)Ljava/io/Serializable;
areturn
6: StackMap locals:
StackMap stack:
ldc Ljava/sql/Blob;
aload 1
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 11
7: aload 0
aload 1
checkcast java.sql.Blob
invokeinterface java.sql.Blob.getBinaryStream:()Ljava/io/InputStream;
invokestatic org.hibernate.type.descriptor.java.DataHelper.extractBytes:(Ljava/io/InputStream;)[B
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.fromBytes:([B)Ljava/io/Serializable;
8: areturn
9: StackMap locals:
StackMap stack: java.sql.SQLException
astore 3
start local 3 10: new org.hibernate.HibernateException
dup
aload 3
invokespecial org.hibernate.HibernateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.getJavaType:()Ljava/lang/Class;
aload 1
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 13
12: aload 1
checkcast java.io.Serializable
areturn
13: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.unknownWrap:(Ljava/lang/Class;)Lorg/hibernate/HibernateException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 14 1 value TX;
0 14 2 options Lorg/hibernate/type/descriptor/WrapperOptions;
10 11 3 e Ljava/sql/SQLException;
Exception table:
from to target type
7 8 9 Class java.sql.SQLException
Signature: <X:Ljava/lang/Object;>(TX;Lorg/hibernate/type/descriptor/WrapperOptions;)TT;
MethodParameters:
Name Flags
value
options
protected byte[] toBytes();
descriptor: (Ljava/io/Serializable;)[B
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.hibernate.internal.util.SerializationHelper.serialize:(Ljava/io/Serializable;)[B
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 1 1 value TT;
Signature: (TT;)[B
MethodParameters:
Name Flags
value
protected T fromBytes();
descriptor: ([B)Ljava/io/Serializable;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.getJavaType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic org.hibernate.internal.util.SerializationHelper.deserialize:([BLjava/lang/ClassLoader;)Ljava/lang/Object;
checkcast java.io.Serializable
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/descriptor/java/SerializableTypeDescriptor<TT;>;
0 1 1 bytes [B
Signature: ([B)TT;
MethodParameters:
Name Flags
bytes
public int (java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.io.Serializable
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.extractHashCode:(Ljava/io/Serializable;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public boolean areEqual(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.io.Serializable
aload 2
checkcast java.io.Serializable
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.areEqual:(Ljava/io/Serializable;Ljava/io/Serializable;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
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 java.io.Serializable
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.toString:(Ljava/io/Serializable;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object wrap(java.lang.Object, org.hibernate.type.descriptor.WrapperOptions);
descriptor: (Ljava/lang/Object;Lorg/hibernate/type/descriptor/WrapperOptions;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.lang.Object
aload 2
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.wrap:(Ljava/lang/Object;Lorg/hibernate/type/descriptor/WrapperOptions;)Ljava/io/Serializable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object fromString(java.lang.String);
descriptor: (Ljava/lang/String;)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.hibernate.type.descriptor.java.SerializableTypeDescriptor.fromString:(Ljava/lang/String;)Ljava/io/Serializable;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object unwrap(java.lang.Object, java.lang.Class, org.hibernate.type.descriptor.WrapperOptions);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;Lorg/hibernate/type/descriptor/WrapperOptions;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
checkcast java.io.Serializable
aload 2
checkcast java.lang.Class
aload 3
invokevirtual org.hibernate.type.descriptor.java.SerializableTypeDescriptor.unwrap:(Ljava/io/Serializable;Ljava/lang/Class;Lorg/hibernate/type/descriptor/WrapperOptions;)Ljava/lang/Object;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <T::Ljava/io/Serializable;>Lorg/hibernate/type/descriptor/java/AbstractTypeDescriptor<TT;>;
SourceFile: "SerializableTypeDescriptor.java"
NestMembers:
org.hibernate.type.descriptor.java.SerializableTypeDescriptor$SerializableMutabilityPlan
InnerClasses:
public SerializableMutabilityPlan = org.hibernate.type.descriptor.java.SerializableTypeDescriptor$SerializableMutabilityPlan of org.hibernate.type.descriptor.java.SerializableTypeDescriptor