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.type
Class SpecialOneToOneType

    java.lang.Object
      org.hibernate.type.AbstractType
          org.hibernate.type.EntityType
              org.hibernate.type.OneToOneType
                  org.hibernate.type.SpecialOneToOneType

All Implemented Interfaces:
  Serializable, AssociationType, Type

    public class SpecialOneToOneType

extends OneToOneType

A one-to-one association that maps to specific formula(s) instead of the primary key column of the owning entity.

See Also:
  Serialized Form

Field Summary

Fields inherited from class org.hibernate.type.EntityType
`isEmbeddedInXML, uniqueKeyPropertyName`

Fields inherited from class org.hibernate.type.AbstractType
`LEGACY_DEFAULT_SIZE, LEGACY_DICTATED_SIZE`

Constructor Summary
`SpecialOneToOneType(TypeFactory.TypeScope scope, String referencedEntityName, ForeignKeyDirection foreignKeyType, String uniqueKeyPropertyName, boolean lazy, boolean unwrapProxy, String entityName, String propertyName)`

Method Summary
`Object` | `assemble(Serializable oid, SessionImplementor session, Object owner)` Reconstruct the object from its disassembled state.
`Size[]` | `defaultSizes(Mapping mapping)` Defines the column sizes to use according to this type if the user did not explicitly say (and if no `Type.dictatedSizes(org.hibernate.engine.spi.Mapping)` were given).
`Size[]` | `dictatedSizes(Mapping mapping)` Return the column sizes dictated by this type.
`Serializable` | `disassemble(Object value, SessionImplementor session, Object owner)` Return a disassembled representation of the object.
`int` | `getColumnSpan(Mapping mapping)` How many columns are used to persist this type.
`Object` | `hydrate(ResultSet rs, String[] names, SessionImplementor session, Object owner)` Extract a value from the JDBC result set.
`int[]` | `sqlTypes(Mapping mapping)` Return the JDBC types codes (per `Types`) for the columns mapped by this type.
`boolean` | `useLHSPrimaryKey()` Is the primary key of the owning entity table to be used in the join?

Methods inherited from class org.hibernate.type.OneToOneType
`getForeignKeyDirection, getPropertyName, isAlwaysDirtyChecked, isDirty, isDirty, isModified, isNull, isNullable, isOneToOne, nullSafeSet, nullSafeSet, toColumnNullness`

Methods inherited from class org.hibernate.type.EntityType
`compare, deepCopy, fromXMLNode, getAssociatedEntityName, getAssociatedEntityName, getAssociatedJoinable, getHashCode, getIdentifier, getIdentifierOrUniqueKeyPropertyName, getIdentifierOrUniqueKeyType, getLHSPropertyName, getName, getOnCondition, getReturnedClass, getRHSUniqueKeyPropertyName, getSemiResolvedType, isAssociationType, isEmbeddedInXML, isEntityType, isEqual, isLogicalOneToOne, isMutable, isNotEmbedded, isReferenceToPrimaryKey, isSame, isXMLElement, loadByUniqueKey, nullSafeGet, nullSafeGet, replace, resolve, resolveIdentifier, scope, setToXMLNode, toLoggableString, toString`

Methods inherited from class org.hibernate.type.AbstractType
`beforeAssemble, getHashCode, isAnyType, isCollectionType, isComponentType, isEqual, replace, replaceNode, semiResolve`

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

Methods inherited from interface org.hibernate.type.Type
`beforeAssemble, getHashCode, isAnyType, isCollectionType, isComponentType, isEqual, replace, semiResolve`

Constructor Detail

### SpecialOneToOneType

    public SpecialOneToOneType(TypeFactory.TypeScope scope,
                               String referencedEntityName,
                               ForeignKeyDirection foreignKeyType,
                               String uniqueKeyPropertyName,
                               boolean lazy,
                               boolean unwrapProxy,
                               String entityName,
                               String propertyName)

Method Detail

### getColumnSpan

    public int getColumnSpan(Mapping mapping)
                      throws MappingException

  Description copied from interface: `Type`
  How many columns are used to persist this type. Always the same as `sqlTypes(mapping).length`

  Specified by:
    `getColumnSpan` in interface `Type`
  Overrides:
    `getColumnSpan` in class `OneToOneType`
  Parameters:
    `mapping` - The mapping object :/
  Returns:
    The number of columns
  Throws:
    `MappingException` - Generally indicates an issue accessing the passed mapping object.

### sqlTypes

    public int[] sqlTypes(Mapping mapping)
                   throws MappingException

  Description copied from interface: `Type`
  Return the JDBC types codes (per `Types`) for the columns mapped by this type.

  NOTE: The number of elements in this array matches the return from `Type.getColumnSpan(org.hibernate.engine.spi.Mapping)`.

  Specified by:
    `sqlTypes` in interface `Type`
  Overrides:
    `sqlTypes` in class `OneToOneType`
  Parameters:
    `mapping` - The mapping object :/
  Returns:
    The JDBC type codes.
  Throws:
    `MappingException` - Generally indicates an issue accessing the passed mapping object.

### dictatedSizes

    public Size[] dictatedSizes(Mapping mapping)
                         throws MappingException

  Description copied from interface: `Type`
  Return the column sizes dictated by this type. For example, the mapping for a `char`/`Character` would have a dictated length limit of 1; for a string-based `UUID` would have a size limit of 36; etc.

  NOTE: The number of elements in this array matches the return from `Type.getColumnSpan(org.hibernate.engine.spi.Mapping)`.

  Specified by:
    `dictatedSizes` in interface `Type`
  Overrides:
    `dictatedSizes` in class `OneToOneType`
  Parameters:
    `mapping` - The mapping object :/
  Returns:
    The dictated sizes.
  Throws:
    `MappingException` - Generally indicates an issue accessing the passed mapping object.

### defaultSizes

    public Size[] defaultSizes(Mapping mapping)
                        throws MappingException

  Description copied from interface: `Type`
  Defines the column sizes to use according to this type if the user did not explicitly say (and if no `Type.dictatedSizes(org.hibernate.engine.spi.Mapping)` were given).

  NOTE: The number of elements in this array matches the return from `Type.getColumnSpan(org.hibernate.engine.spi.Mapping)`.

  Specified by:
    `defaultSizes` in interface `Type`
  Overrides:
    `defaultSizes` in class `OneToOneType`
  Parameters:
    `mapping` - The mapping object :/
  Returns:
    The default sizes.
  Throws:
    `MappingException` - Generally indicates an issue accessing the passed mapping object.

### useLHSPrimaryKey

    public boolean useLHSPrimaryKey()

  Description copied from interface: `AssociationType`
  Is the primary key of the owning entity table to be used in the join?

  Specified by:
    `useLHSPrimaryKey` in interface `AssociationType`
  Overrides:
    `useLHSPrimaryKey` in class `OneToOneType`

### hydrate

    public Object hydrate(ResultSet rs,
                          String[] names,
                          SessionImplementor session,
                          Object owner)
                   throws HibernateException,
                          SQLException

  Description copied from interface: `Type`
  Extract a value from the JDBC result set. This is useful for 2-phase property initialization - the second phase is a call to `Type.resolve(java.lang.Object, org.hibernate.engine.spi.SessionImplementor, java.lang.Object)` This hydrated value will be either:
  - in the case of an entity or collection type, the key
  - otherwise, the value itself

  Specified by:
    `hydrate` in interface `Type`
  Overrides:
    `hydrate` in class `OneToOneType`
  Parameters:
    `rs` - The JDBC result set
    `names` - the column names making up this type value (use to read from result set)
    `session` - The originating session
    `owner` - the parent entity
  Returns:
    An entity or collection key, or an actual value.
  Throws:
    `HibernateException` - An error from Hibernate
    `SQLException` - An error from the JDBC driver
  See Also:
    `Type.resolve(java.lang.Object, org.hibernate.engine.spi.SessionImplementor, java.lang.Object)`

### disassemble

    public Serializable disassemble(Object value,
                                    SessionImplementor session,
                                    Object owner)
                             throws HibernateException

  Description copied from interface: `Type`
  Return a disassembled representation of the object. This is the value Hibernate will use in second level caching, so care should be taken to break values down to their simplest forms; for entities especially, this means breaking them down into their constituent parts.

  Specified by:
    `disassemble` in interface `Type`
  Overrides:
    `disassemble` in class `OneToOneType`
  Parameters:
    `value` - the value to cache
    `session` - the originating session
    `owner` - optional parent entity object (needed for collections)
  Returns:
    the disassembled, deep cloned state
  Throws:
    `HibernateException` - An error from Hibernate

### assemble

    public Object assemble(Serializable oid,
                           SessionImplementor session,
                           Object owner)
                    throws HibernateException

  Description copied from interface: `Type`
  Reconstruct the object from its disassembled state. This method is the reciprocal of `Type.disassemble(java.lang.Object, org.hibernate.engine.spi.SessionImplementor, java.lang.Object)`

  Specified by:
    `assemble` in interface `Type`
  Overrides:
    `assemble` in class `OneToOneType`
  Parameters:
    `oid` - the disassembled state from the cache
    `session` - the originating session
    `owner` - the parent entity object
  Returns:
    the (re)assembled object
  Throws:
    `HibernateException` - An error from Hibernate

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.