public class org.hibernate.type.CustomCollectionType extends org.hibernate.type.CollectionType
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.type.CustomCollectionType
super_class: org.hibernate.type.CollectionType
{
private final org.hibernate.usertype.UserCollectionType userType;
descriptor: Lorg/hibernate/usertype/UserCollectionType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean customLogging;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.Class, java.lang.String, java.lang.String, boolean);
descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 3
aload 4
iload 5
invokespecial org.hibernate.type.CollectionType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;Ljava/lang/String;Z)V
1: aload 0
aload 2
invokestatic org.hibernate.type.CustomCollectionType.createUserCollectionType:(Ljava/lang/Class;)Lorg/hibernate/usertype/UserCollectionType;
putfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
2: aload 0
ldc Lorg/hibernate/usertype/LoggableUserType;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
putfield org.hibernate.type.CustomCollectionType.customLogging:Z
3: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/type/CustomCollectionType;
0 4 1 typeScope Lorg/hibernate/type/TypeFactory$TypeScope;
0 4 2 userTypeClass Ljava/lang/Class;
0 4 3 role Ljava/lang/String;
0 4 4 foreignKeyPropertyName Ljava/lang/String;
0 4 5 isEmbeddedInXML Z
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
typeScope
userTypeClass
role
foreignKeyPropertyName
isEmbeddedInXML
public void <init>(org.hibernate.type.TypeFactory$TypeScope, java.lang.Class, java.lang.String, java.lang.String);
descriptor: (Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 3
aload 4
invokespecial org.hibernate.type.CollectionType.<init>:(Lorg/hibernate/type/TypeFactory$TypeScope;Ljava/lang/String;Ljava/lang/String;)V
1: aload 0
aload 2
invokestatic org.hibernate.type.CustomCollectionType.createUserCollectionType:(Ljava/lang/Class;)Lorg/hibernate/usertype/UserCollectionType;
putfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
2: aload 0
ldc Lorg/hibernate/usertype/LoggableUserType;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
putfield org.hibernate.type.CustomCollectionType.customLogging:Z
3: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/type/CustomCollectionType;
0 4 1 typeScope Lorg/hibernate/type/TypeFactory$TypeScope;
0 4 2 userTypeClass Ljava/lang/Class;
0 4 3 role Ljava/lang/String;
0 4 4 foreignKeyPropertyName Ljava/lang/String;
MethodParameters:
Name Flags
typeScope
userTypeClass
role
foreignKeyPropertyName
private static org.hibernate.usertype.UserCollectionType createUserCollectionType(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/hibernate/usertype/UserCollectionType;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: ldc Lorg/hibernate/usertype/UserCollectionType;
aload 0
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 2
1: new org.hibernate.MappingException
dup
new java.lang.StringBuilder
dup
ldc "Custom type does not implement UserCollectionType: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast org.hibernate.usertype.UserCollectionType
3: areturn
4: StackMap locals:
StackMap stack: java.lang.InstantiationException
pop
5: new org.hibernate.MappingException
dup
new java.lang.StringBuilder
dup
ldc "Cannot instantiate custom type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
pop
7: new org.hibernate.MappingException
dup
new java.lang.StringBuilder
dup
ldc "IllegalAccessException trying to instantiate custom type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.hibernate.MappingException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 userTypeClass Ljava/lang/Class;
Exception table:
from to target type
2 3 4 Class java.lang.InstantiationException
2 3 6 Class java.lang.IllegalAccessException
MethodParameters:
Name Flags
userTypeClass
public org.hibernate.collection.spi.PersistentCollection instantiate(org.hibernate.engine.spi.SessionImplementor, org.hibernate.persister.collection.CollectionPersister, java.io.Serializable);
descriptor: (Lorg/hibernate/engine/spi/SessionImplementor;Lorg/hibernate/persister/collection/CollectionPersister;Ljava/io/Serializable;)Lorg/hibernate/collection/spi/PersistentCollection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
aload 1
aload 2
invokeinterface org.hibernate.usertype.UserCollectionType.instantiate:(Lorg/hibernate/engine/spi/SessionImplementor;Lorg/hibernate/persister/collection/CollectionPersister;)Lorg/hibernate/collection/spi/PersistentCollection;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/CustomCollectionType;
0 1 1 session Lorg/hibernate/engine/spi/SessionImplementor;
0 1 2 persister Lorg/hibernate/persister/collection/CollectionPersister;
0 1 3 key Ljava/io/Serializable;
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
session
persister
key
public org.hibernate.collection.spi.PersistentCollection wrap(org.hibernate.engine.spi.SessionImplementor, java.lang.Object);
descriptor: (Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Lorg/hibernate/collection/spi/PersistentCollection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
aload 1
aload 2
invokeinterface org.hibernate.usertype.UserCollectionType.wrap:(Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Lorg/hibernate/collection/spi/PersistentCollection;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/CustomCollectionType;
0 1 1 session Lorg/hibernate/engine/spi/SessionImplementor;
0 1 2 collection Ljava/lang/Object;
MethodParameters:
Name Flags
session
collection
public java.lang.Class getReturnedClass();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
iconst_m1
invokeinterface org.hibernate.usertype.UserCollectionType.instantiate:(I)Ljava/lang/Object;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/CustomCollectionType;
public java.lang.Object instantiate(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
iload 1
invokeinterface org.hibernate.usertype.UserCollectionType.instantiate:(I)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/CustomCollectionType;
0 1 1 anticipatedType I
MethodParameters:
Name Flags
anticipatedType
public java.util.Iterator getElementsIterator(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
aload 1
invokeinterface org.hibernate.usertype.UserCollectionType.getElementsIterator:(Ljava/lang/Object;)Ljava/util/Iterator;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/CustomCollectionType;
0 1 1 collection Ljava/lang/Object;
MethodParameters:
Name Flags
collection
public boolean contains(java.lang.Object, java.lang.Object, org.hibernate.engine.spi.SessionImplementor);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionImplementor;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
aload 1
aload 2
invokeinterface org.hibernate.usertype.UserCollectionType.contains:(Ljava/lang/Object;Ljava/lang/Object;)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/CustomCollectionType;
0 1 1 collection Ljava/lang/Object;
0 1 2 entity Ljava/lang/Object;
0 1 3 session Lorg/hibernate/engine/spi/SessionImplementor;
MethodParameters:
Name Flags
collection
entity
session
public java.lang.Object indexOf(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
aload 1
aload 2
invokeinterface org.hibernate.usertype.UserCollectionType.indexOf:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/CustomCollectionType;
0 1 1 collection Ljava/lang/Object;
0 1 2 entity Ljava/lang/Object;
MethodParameters:
Name Flags
collection
entity
public java.lang.Object replaceElements(java.lang.Object, java.lang.Object, java.lang.Object, java.util.Map, org.hibernate.engine.spi.SessionImplementor);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/Map;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 5
invokeinterface org.hibernate.engine.spi.SessionImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
aload 0
invokevirtual org.hibernate.type.CustomCollectionType.getRole:()Ljava/lang/String;
invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getCollectionPersister:(Ljava/lang/String;)Lorg/hibernate/persister/collection/CollectionPersister;
astore 6
start local 6 1: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
aload 1
aload 2
aload 6
aload 3
aload 4
aload 5
invokeinterface org.hibernate.usertype.UserCollectionType.replaceElements:(Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/persister/collection/CollectionPersister;Ljava/lang/Object;Ljava/util/Map;Lorg/hibernate/engine/spi/SessionImplementor;)Ljava/lang/Object;
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/type/CustomCollectionType;
0 2 1 original Ljava/lang/Object;
0 2 2 target Ljava/lang/Object;
0 2 3 owner Ljava/lang/Object;
0 2 4 copyCache Ljava/util/Map;
0 2 5 session Lorg/hibernate/engine/spi/SessionImplementor;
1 2 6 cp Lorg/hibernate/persister/collection/CollectionPersister;
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
original
target
owner
copyCache
session
protected java.lang.String renderLoggableString(java.lang.Object, org.hibernate.engine.spi.SessionFactoryImplementor);
descriptor: (Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.hibernate.type.CustomCollectionType.customLogging:Z
ifeq 2
1: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
checkcast org.hibernate.usertype.LoggableUserType
aload 1
aload 2
invokeinterface org.hibernate.usertype.LoggableUserType.toLoggableString:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokespecial org.hibernate.type.CollectionType.renderLoggableString:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/hibernate/type/CustomCollectionType;
0 3 1 value Ljava/lang/Object;
0 3 2 factory Lorg/hibernate/engine/spi/SessionFactoryImplementor;
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
value
factory
public org.hibernate.usertype.UserCollectionType getUserType();
descriptor: ()Lorg/hibernate/usertype/UserCollectionType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hibernate.type.CustomCollectionType.userType:Lorg/hibernate/usertype/UserCollectionType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/type/CustomCollectionType;
}
SourceFile: "CustomCollectionType.java"
InnerClasses:
public abstract TypeScope = org.hibernate.type.TypeFactory$TypeScope of org.hibernate.type.TypeFactory