AbstractIdentifiableType (Hibernate JavaDocs)
Date: 2012-04-05

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.hibernate.ejb.metamodel
Class AbstractIdentifiableType<X>

    java.lang.Object
      org.hibernate.ejb.metamodel.AbstractType<X>
          org.hibernate.ejb.metamodel.AbstractManagedType<X>
              org.hibernate.ejb.metamodel.AbstractIdentifiableType<X>

All Implemented Interfaces:
  Serializable, IdentifiableType<X>, ManagedType<X>, Type<X>

Direct Known Subclasses:
  EntityTypeImpl, MappedSuperclassTypeImpl

    public abstract class AbstractIdentifiableType<X>

extends AbstractManagedType<X>
implements IdentifiableType<X>, Serializable

Defines commonality for the JPA `IdentifiableType` types. JPA defines identifiable types as entities or mapped-superclasses. Basically things to which an identifier can be attached.

NOTE : Currently we only really have support for direct entities in the Hibernate metamodel as the information for them is consumed into the closest actual entity subclass(es) in the internal Hibernate mapping-metamodel.

See Also:
  Serialized Form

Nested Class Summary
`static interface` | `AbstractIdentifiableType.Builder<X>`

Nested classes/interfaces inherited from interface javax.persistence.metamodel.Type
`Type.PersistenceType`

Constructor Summary
`AbstractIdentifiableType(Class<X> javaType, AbstractIdentifiableType<? super X> superType, boolean hasIdentifierProperty, boolean versioned)`

Method Summary
`protected void` | `checkDeclaredId()` Centralized check to ensure the id is actually declared on the class mapped here, as opposed to a super class.
`protected void` | `checkDeclaredVersion()` Centralized check to ensure the version (if one) is actually declared on the class mapped here, as opposed to a super class.
`protected void` | `checkSimpleId()` Centralized check to ensure the id for this hierarchy is a simple one (i.e., does not use an id-class).
`AbstractIdentifiableType.Builder<X>` | `getBuilder()`
`
`<Y> SingularAttribute<X,Y>`
` | `getDeclaredId(Class<Y> javaType)`
`SingularAttribute<X,?>` | `getDeclaredVersion()` For used to retrieve the declared version when populating the static metamodel.
`
`<Y> SingularAttribute<X,Y>`
` | `getDeclaredVersion(Class<Y> javaType)`
`
`<Y> SingularAttribute<? super X,Y>`
` | `getId(Class<Y> javaType)`
`Set<SingularAttribute<? super X,?>>` | `getIdClassAttributes()`
`Type<?>` | `getIdType()`
`AbstractIdentifiableType<? super X>` | `getSupertype()`
`
`<Y> SingularAttribute<? super X,Y>`
` | `getVersion(Class<Y> javaType)`
`boolean` | `hasDeclaredVersionAttribute()`
`boolean` | `hasSingleIdAttribute()`
`boolean` | `hasVersionAttribute()`
`protected abstract boolean` | `requiresSupertypeForNonDeclaredIdentifier()` Indicates if a non-null super type is required to provide the identifier attribute(s) if this object does not have a declared identifier.
`protected AbstractIdentifiableType<? super X>` | `requireSupertype()`

Methods inherited from class org.hibernate.ejb.metamodel.AbstractManagedType
`getAttribute, getAttributes, getCollection, getCollection, getDeclaredAttribute, getDeclaredAttributes, getDeclaredCollection, getDeclaredCollection, getDeclaredList, getDeclaredList, getDeclaredMap, getDeclaredMap, getDeclaredPluralAttributes, getDeclaredSet, getDeclaredSet, getDeclaredSingularAttribute, getDeclaredSingularAttribute, getDeclaredSingularAttributes, getList, getList, getMap, getMap, getPluralAttributes, getSet, getSet, getSingularAttribute, getSingularAttribute, getSingularAttributes, isPrimitiveVariant, lock`

Methods inherited from class org.hibernate.ejb.metamodel.AbstractType
`getJavaType`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface javax.persistence.metamodel.ManagedType
`getAttribute, getAttributes, getCollection, getCollection, getDeclaredAttribute, getDeclaredAttributes, getDeclaredCollection, getDeclaredCollection, getDeclaredList, getDeclaredList, getDeclaredMap, getDeclaredMap, getDeclaredPluralAttributes, getDeclaredSet, getDeclaredSet, getDeclaredSingularAttribute, getDeclaredSingularAttribute, getDeclaredSingularAttributes, getList, getList, getMap, getMap, getPluralAttributes, getSet, getSet, getSingularAttribute, getSingularAttribute, getSingularAttributes`

Methods inherited from interface javax.persistence.metamodel.Type
`getJavaType, getPersistenceType`

Constructor Detail

### AbstractIdentifiableType

    public AbstractIdentifiableType(Class<X> javaType,
                                    AbstractIdentifiableType<? super X> superType,
                                    boolean hasIdentifierProperty,
                                    boolean versioned)

Method Detail

### getSupertype

    public AbstractIdentifiableType<? super X> getSupertype()

  Specified by:
    `getSupertype` in interface `IdentifiableType<X>`
  Overrides:
    `getSupertype` in class `AbstractManagedType<X>`

### requiresSupertypeForNonDeclaredIdentifier

    protected abstract boolean requiresSupertypeForNonDeclaredIdentifier()

  Indicates if a non-null super type is required to provide the identifier attribute(s) if this object does not have a declared identifier. .

  Returns:
    true, if a non-null super type is required to provide the identifier attribute(s) if this object does not have a declared identifier; false, otherwise.

### requireSupertype

    protected AbstractIdentifiableType<? super X> requireSupertype()

### hasSingleIdAttribute

    public boolean hasSingleIdAttribute()

  Specified by:
    `hasSingleIdAttribute` in interface `IdentifiableType<X>`

### getId

    public <Y> SingularAttribute<? super X,Y> getId(Class<Y> javaType)

  Specified by:
    `getId` in interface `IdentifiableType<X>`

### checkSimpleId

    protected void checkSimpleId()

  Centralized check to ensure the id for this hierarchy is a simple one (i.e., does not use an id-class).

  See Also:
    `checkIdClass()`

### getDeclaredId

    public <Y> SingularAttribute<X,Y> getDeclaredId(Class<Y> javaType)

  Specified by:
    `getDeclaredId` in interface `IdentifiableType<X>`

### checkDeclaredId

    protected void checkDeclaredId()

  Centralized check to ensure the id is actually declared on the class mapped here, as opposed to a super class.

### getIdType

    public Type<?> getIdType()

  Specified by:
    `getIdType` in interface `IdentifiableType<X>`

### getIdClassAttributes

    public Set<SingularAttribute<? super X,?>> getIdClassAttributes()

  Specified by:
    `getIdClassAttributes` in interface `IdentifiableType<X>`

### hasVersionAttribute

    public boolean hasVersionAttribute()

  Specified by:
    `hasVersionAttribute` in interface `IdentifiableType<X>`

### hasDeclaredVersionAttribute

    public boolean hasDeclaredVersionAttribute()

### getVersion

    public <Y> SingularAttribute<? super X,Y> getVersion(Class<Y> javaType)

  Specified by:
    `getVersion` in interface `IdentifiableType<X>`

### getDeclaredVersion

    public <Y> SingularAttribute<X,Y> getDeclaredVersion(Class<Y> javaType)

  Specified by:
    `getDeclaredVersion` in interface `IdentifiableType<X>`

### getDeclaredVersion

    public SingularAttribute<X,?> getDeclaredVersion()

  For used to retrieve the declared version when populating the static metamodel.

  Returns:
    The declared

### checkDeclaredVersion

    protected void checkDeclaredVersion()

  Centralized check to ensure the version (if one) is actually declared on the class mapped here, as opposed to a super class.

### getBuilder

    public AbstractIdentifiableType.Builder<X> getBuilder()

  Overrides:
    `getBuilder` in class `AbstractManagedType<X>`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.