Class PersistentClass

    • Field Detail

      • NULL_DISCRIMINATOR_MAPPING

        public static final java.lang.String NULL_DISCRIMINATOR_MAPPING
        See Also:
        Constant Field Values
      • NOT_NULL_DISCRIMINATOR_MAPPING

        public static final java.lang.String NOT_NULL_DISCRIMINATOR_MAPPING
        See Also:
        Constant Field Values
      • synchronizedTables

        protected final java.util.Set<java.lang.String> synchronizedTables
    • Method Detail

      • getClassName

        public java.lang.String getClassName()
      • setClassName

        public void setClassName​(java.lang.String className)
      • getProxyInterfaceName

        public java.lang.String getProxyInterfaceName()
      • setProxyInterfaceName

        public void setProxyInterfaceName​(java.lang.String proxyInterfaceName)
      • getProxyInterface

        public java.lang.Class getProxyInterface()
      • useDynamicInsert

        public boolean useDynamicInsert()
      • getSubclassId

        public abstract int getSubclassId()
      • useDynamicUpdate

        public boolean useDynamicUpdate()
      • setDynamicInsert

        public void setDynamicInsert​(boolean dynamicInsert)
      • setDynamicUpdate

        public void setDynamicUpdate​(boolean dynamicUpdate)
      • getDiscriminatorValue

        public java.lang.String getDiscriminatorValue()
      • hasSubclasses

        public boolean hasSubclasses()
      • getSubclassSpan

        public int getSubclassSpan()
      • getSubclassIterator

        public java.util.Iterator getSubclassIterator()
        Iterate over subclasses in a special 'order', most derived subclasses first.
      • getSubclassClosureIterator

        public java.util.Iterator getSubclassClosureIterator()
      • getIdentityTable

        public Table getIdentityTable()
      • getDirectSubclasses

        public java.util.Iterator getDirectSubclasses()
      • getTable

        public abstract Table getTable()
      • getEntityName

        public java.lang.String getEntityName()
      • isMutable

        public abstract boolean isMutable()
      • hasIdentifierProperty

        public abstract boolean hasIdentifierProperty()
      • getIdentifierProperty

        public abstract Property getIdentifierProperty()
      • getDeclaredIdentifierProperty

        public abstract Property getDeclaredIdentifierProperty()
      • getIdentifier

        public abstract KeyValue getIdentifier()
      • getVersion

        public abstract Property getVersion()
      • getDeclaredVersion

        public abstract Property getDeclaredVersion()
      • getDiscriminator

        public abstract Value getDiscriminator()
      • isInherited

        public abstract boolean isInherited()
      • isPolymorphic

        public abstract boolean isPolymorphic()
      • isVersioned

        public abstract boolean isVersioned()
      • isCached

        public boolean isCached()
      • setCached

        public void setCached​(boolean cached)
      • isCachingExplicitlyRequested

        @Deprecated
        public boolean isCachingExplicitlyRequested()
        Deprecated.
        Use isCached instead
      • setCachingExplicitlyRequested

        @Deprecated
        public void setCachingExplicitlyRequested​(boolean cached)
        Deprecated.
        Use setCached(boolean) instead
      • getCacheConcurrencyStrategy

        public abstract java.lang.String getCacheConcurrencyStrategy()
      • getNaturalIdCacheRegionName

        public abstract java.lang.String getNaturalIdCacheRegionName()
      • isExplicitPolymorphism

        public abstract boolean isExplicitPolymorphism()
      • isDiscriminatorInsertable

        public abstract boolean isDiscriminatorInsertable()
      • getPropertyClosureIterator

        public abstract java.util.Iterator getPropertyClosureIterator()
      • getTableClosureIterator

        public abstract java.util.Iterator getTableClosureIterator()
      • getKeyClosureIterator

        public abstract java.util.Iterator getKeyClosureIterator()
      • addSubclassProperty

        protected void addSubclassProperty​(Property prop)
      • addSubclassJoin

        protected void addSubclassJoin​(Join join)
      • addSubclassTable

        protected void addSubclassTable​(Table subclassTable)
      • getSubclassPropertyClosureIterator

        public java.util.Iterator getSubclassPropertyClosureIterator()
      • getSubclassJoinClosureIterator

        public java.util.Iterator getSubclassJoinClosureIterator()
      • getSubclassTableClosureIterator

        public java.util.Iterator getSubclassTableClosureIterator()
      • isClassOrSuperclassJoin

        public boolean isClassOrSuperclassJoin​(Join join)
      • isClassOrSuperclassTable

        public boolean isClassOrSuperclassTable​(Table closureTable)
      • isLazy

        public boolean isLazy()
      • setLazy

        public void setLazy​(boolean lazy)
      • hasEmbeddedIdentifier

        public abstract boolean hasEmbeddedIdentifier()
      • getEntityPersisterClass

        public abstract java.lang.Class getEntityPersisterClass()
      • setEntityPersisterClass

        public abstract void setEntityPersisterClass​(java.lang.Class classPersisterClass)
      • getRootTable

        public abstract Table getRootTable()
      • getRootClass

        public abstract RootClass getRootClass()
      • getKey

        public abstract KeyValue getKey()
      • setDiscriminatorValue

        public void setDiscriminatorValue​(java.lang.String discriminatorValue)
      • setEntityName

        public void setEntityName​(java.lang.String entityName)
      • createPrimaryKey

        public void createPrimaryKey()
      • getWhere

        public abstract java.lang.String getWhere()
      • getBatchSize

        public int getBatchSize()
      • setBatchSize

        public void setBatchSize​(int batchSize)
      • hasSelectBeforeUpdate

        public boolean hasSelectBeforeUpdate()
      • setSelectBeforeUpdate

        public void setSelectBeforeUpdate​(boolean selectBeforeUpdate)
      • getReferenceablePropertyIterator

        public java.util.Iterator getReferenceablePropertyIterator()
        Build an iterator of properties which may be referenced in association mappings.

        Includes properties defined in superclasses of the mapping inheritance. Includes all properties defined as part of a join.

        Returns:
        The referenceable property iterator.
        See Also:
        for a discussion of "referenceable"
      • getReferencedProperty

        public Property getReferencedProperty​(java.lang.String propertyPath)
                                       throws MappingException
        Given a property path, locate the appropriate referenceable property reference.

        A referenceable property is a property which can be a target of a foreign-key mapping (e.g. @ManyToOne, @OneToOne).

        Parameters:
        propertyPath - The property path to resolve into a property reference.
        Returns:
        The property reference (never null).
        Throws:
        MappingException - If the property could not be found.
      • hasProperty

        public boolean hasProperty​(java.lang.String name)
        Check to see if this PersistentClass defines a property with the given name.
        Parameters:
        name - The property name to check
        Returns:
        true if a property with that name exists; false if not
      • isPropertyDefinedInSuperHierarchy

        public boolean isPropertyDefinedInSuperHierarchy​(java.lang.String name)
        Check to see if a property with the given name exists in the super hierarchy of this PersistentClass. Does not check this PersistentClass, just up the hierarchy
        Parameters:
        name - The property name to check
        Returns:
        true if a property with that name exists; false if not
      • isPropertyDefinedInHierarchy

        public boolean isPropertyDefinedInHierarchy​(java.lang.String name)
        Check to see if a property with the given name exists in this PersistentClass or in any of its super hierarchy. Unlike isPropertyDefinedInSuperHierarchy(java.lang.String), this method does check this PersistentClass
        Parameters:
        name - The property name to check
        Returns:
        true if a property with that name exists; false if not
      • setOptimisticLockStyle

        public void setOptimisticLockStyle​(OptimisticLockStyle optimisticLockStyle)
      • isDiscriminatorValueNotNull

        public boolean isDiscriminatorValueNotNull()
      • isDiscriminatorValueNull

        public boolean isDiscriminatorValueNull()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getJoinIterator

        public java.util.Iterator getJoinIterator()
      • getJoinClosureIterator

        public java.util.Iterator getJoinClosureIterator()
      • addJoin

        public void addJoin​(Join join)
      • getJoinClosureSpan

        public int getJoinClosureSpan()
      • getPropertyClosureSpan

        public int getPropertyClosureSpan()
      • getJoinNumber

        public int getJoinNumber​(Property prop)
      • getPropertyIterator

        public java.util.Iterator getPropertyIterator()
        Build an iterator over the properties defined on this class. The returned iterator only accounts for "normal" properties (i.e. non-identifier properties).

        Differs from getUnjoinedPropertyIterator() in that the returned iterator will include properties defined as part of a join.

        Differs from getReferenceablePropertyIterator() in that the properties defined in superclasses of the mapping inheritance are not included.

        Returns:
        An iterator over the "normal" properties.
      • getUnjoinedPropertyIterator

        public java.util.Iterator getUnjoinedPropertyIterator()
        Build an iterator over the properties defined on this class which are not defined as part of a join. As with getPropertyIterator(), the returned iterator only accounts for non-identifier properties.
        Returns:
        An iterator over the non-joined "normal" properties.
      • setCustomSqlInsert

        public void setCustomSqlInsert​(CustomSql customSql)
      • setCustomSQLInsert

        public void setCustomSQLInsert​(java.lang.String customSQLInsert,
                                       boolean callable,
                                       ExecuteUpdateResultCheckStyle checkStyle)
      • getCustomSQLInsert

        public java.lang.String getCustomSQLInsert()
      • isCustomInsertCallable

        public boolean isCustomInsertCallable()
      • setCustomSqlUpdate

        public void setCustomSqlUpdate​(CustomSql customSql)
      • setCustomSQLUpdate

        public void setCustomSQLUpdate​(java.lang.String customSQLUpdate,
                                       boolean callable,
                                       ExecuteUpdateResultCheckStyle checkStyle)
      • getCustomSQLUpdate

        public java.lang.String getCustomSQLUpdate()
      • isCustomUpdateCallable

        public boolean isCustomUpdateCallable()
      • setCustomSqlDelete

        public void setCustomSqlDelete​(CustomSql customSql)
      • setCustomSQLDelete

        public void setCustomSQLDelete​(java.lang.String customSQLDelete,
                                       boolean callable,
                                       ExecuteUpdateResultCheckStyle checkStyle)
      • getCustomSQLDelete

        public java.lang.String getCustomSQLDelete()
      • isCustomDeleteCallable

        public boolean isCustomDeleteCallable()
      • addFilter

        public void addFilter​(java.lang.String name,
                              java.lang.String condition,
                              boolean autoAliasInjection,
                              java.util.Map<java.lang.String,​java.lang.String> aliasTableMap,
                              java.util.Map<java.lang.String,​java.lang.String> aliasEntityMap)
        Specified by:
        addFilter in interface Filterable
      • getFilters

        public java.util.List getFilters()
        Specified by:
        getFilters in interface Filterable
      • isForceDiscriminator

        public boolean isForceDiscriminator()
      • isJoinedSubclass

        public abstract boolean isJoinedSubclass()
      • getLoaderName

        public java.lang.String getLoaderName()
      • setLoaderName

        public void setLoaderName​(java.lang.String loaderName)
      • getSynchronizedTables

        public abstract java.util.Set getSynchronizedTables()
      • addSynchronizedTable

        public void addSynchronizedTable​(java.lang.String table)
      • isAbstract

        public java.lang.Boolean isAbstract()
      • setAbstract

        public void setAbstract​(java.lang.Boolean isAbstract)
      • checkColumnDuplication

        protected void checkColumnDuplication​(java.util.Set distinctColumns,
                                              java.util.Iterator columns)
                                       throws MappingException
        Throws:
        MappingException
      • checkPropertyColumnDuplication

        protected void checkPropertyColumnDuplication​(java.util.Set distinctColumns,
                                                      java.util.Iterator properties)
                                               throws MappingException
        Throws:
        MappingException
      • getNonDuplicatedPropertyIterator

        protected java.util.Iterator getNonDuplicatedPropertyIterator()
      • getDiscriminatorColumnIterator

        protected java.util.Iterator getDiscriminatorColumnIterator()
      • checkColumnDuplication

        protected void checkColumnDuplication()
      • getJpaEntityName

        public java.lang.String getJpaEntityName()
      • setJpaEntityName

        public void setJpaEntityName​(java.lang.String jpaEntityName)
      • hasPojoRepresentation

        public boolean hasPojoRepresentation()
      • hasSubselectLoadableCollections

        public boolean hasSubselectLoadableCollections()
      • setSubselectLoadableCollections

        public void setSubselectLoadableCollections​(boolean hasSubselectCollections)
      • getIdentifierMapper

        public Component getIdentifierMapper()
      • getDeclaredIdentifierMapper

        public Component getDeclaredIdentifierMapper()
      • setDeclaredIdentifierMapper

        public void setDeclaredIdentifierMapper​(Component declaredIdentifierMapper)
      • hasIdentifierMapper

        public boolean hasIdentifierMapper()
      • addCallbackDefinitions

        public void addCallbackDefinitions​(java.util.List<CallbackDefinition> callbackDefinitions)
      • getCallbackDefinitions

        public java.util.List<CallbackDefinition> getCallbackDefinitions()
      • setIdentifierMapper

        public void setIdentifierMapper​(Component handle)
      • addTuplizer

        public void addTuplizer​(EntityMode entityMode,
                                java.lang.String implClassName)
      • getTuplizerImplClassName

        public java.lang.String getTuplizerImplClassName​(EntityMode mode)
      • getTuplizerMap

        public java.util.Map getTuplizerMap()
      • hasNaturalId

        public boolean hasNaturalId()
      • getDeclaredPropertyIterator

        public java.util.Iterator getDeclaredPropertyIterator()
      • addMappedsuperclassProperty

        public void addMappedsuperclassProperty​(Property p)
      • setSuperMappedSuperclass

        public void setSuperMappedSuperclass​(MappedSuperclass superMappedSuperclass)