org.apache.cayenne.access.types

## Class ExtendedEnumType<T extends Enum<T>>

- java.lang.Object
- - org.apache.cayenne.access.types.ExtendedEnumType<T>

- All Implemented Interfaces:
    ExtendedType

      public class ExtendedEnumType<T extends Enum<T>>
      extends Object
      implements ExtendedType

  An ExtendedType that handles a Java Enum based upon the Cayenne ExtendedEnumeration interface. The ExtendedEnumeration interface requires the developer to specify the database values for the Enum being mapped. This ExtendedType is used to auto-register those Enums found in the model.
  Since:
    3.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ExtendedEnumType(Class<T> enumerationClass)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getClassName()` Returns a full name of Java class that this ExtendedType supports.
    `Map<Object,Enum<T>>` | `getEnumerationMappings()` Returns the enumeration mapping for this enumerated data type.
    `Object[]` | `getValues()`
    `Object` | `materializeObject(CallableStatement rs, int index, int type)` Reads an object from a stored procedure OUT parameter, converting it to class returned by 'getClassName' method.
    `Object` | `materializeObject(ResultSet rs, int index, int type)` Reads an object from JDBC ResultSet column, converting it to class returned by 'getClassName' method.
    `void` | `setJdbcObject(PreparedStatement statement, Object value, int pos, int type, int precision)` Initializes a single parameter of a PreparedStatement with object value.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ExtendedEnumType

          public ExtendedEnumType(Class<T> enumerationClass)

  - ### Method Detail

    - #### getClassName

          public String getClassName()

      Description copied from interface: `ExtendedType`
      Returns a full name of Java class that this ExtendedType supports.
      Specified by:
        `getClassName` in interface `ExtendedType`

    - #### materializeObject

          public Object materializeObject(ResultSet rs,
                                 int index,
                                 int type)
                                   throws Exception

      Description copied from interface: `ExtendedType`
      Reads an object from JDBC ResultSet column, converting it to class returned by 'getClassName' method.
      Specified by:
        `materializeObject` in interface `ExtendedType`
      Throws:
        `Exception` - if read error occurred, or an object can't be converted to a target Java class.

    - #### materializeObject

          public Object materializeObject(CallableStatement rs,
                                 int index,
                                 int type)
                                   throws Exception

      Description copied from interface: `ExtendedType`
      Reads an object from a stored procedure OUT parameter, converting it to class returned by 'getClassName' method.
      Specified by:
        `materializeObject` in interface `ExtendedType`
      Throws:
        `Exception` - if read error ocurred, or an object can't be converted to a target Java class.

    - #### setJdbcObject

          public void setJdbcObject(PreparedStatement statement,
                           Object value,
                           int pos,
                           int type,
                           int precision)
                             throws Exception

      Description copied from interface: `ExtendedType`
      Initializes a single parameter of a PreparedStatement with object value.
      Specified by:
        `setJdbcObject` in interface `ExtendedType`
      Throws:
        `Exception`

    - #### getEnumerationMappings

          public Map<Object,Enum<T>> getEnumerationMappings()

      Returns the enumeration mapping for this enumerated data type. The key is the database value, the value is the actual enum.

    - #### getValues

          public Object[] getValues()

Copyright © 2001–2014 Apache Cayenne. All rights reserved.