Class EnumMapping

    • Field Detail

      • EXTENSION_CHECK_CONSTRAINT_ENUM_VALUES

        public static final String EXTENSION_CHECK_CONSTRAINT_ENUM_VALUES
        Metadata extension key for specifying that the enum column has a CHECK constraint in the datastore. Set it to "true" to enable.
        See Also:
        Constant Field Values
      • datastoreJavaType

        protected String datastoreJavaType
    • Constructor Detail

      • EnumMapping

        public EnumMapping()
    • Method Detail

      • initialize

        public void initialize​(org.datanucleus.metadata.AbstractMemberMetaData mmd,
                               Table table,
                               org.datanucleus.ClassLoaderResolver clr)
        Initialize this JavaTypeMapping for the given member MetaData and Table owning it.
        Overrides:
        initialize in class SingleFieldMapping
        Parameters:
        mmd - MetaData for the member to be mapped (if any)
        table - The table storing this mapping (if any)
        clr - the ClassLoaderResolver
      • getValidValues

        public Object[] getValidValues​(int index)
        Accessor for the valid values for this mapping (if any restriction is imposed).
        Overrides:
        getValidValues in class SingleFieldMapping
        Parameters:
        index - The index of the datastore column
        Returns:
        The valid value(s)
      • getJavaTypeForColumnMapping

        public String getJavaTypeForColumnMapping​(int index)
        Accessor for the name of the java-type actually used when mapping the particular datastore field. This java-type must have an entry in the datastore mappings.
        Overrides:
        getJavaTypeForColumnMapping in class SingleFieldMapping
        Parameters:
        index - requested column index.
        Returns:
        the name of java-type for the requested column.
      • getJavaType

        public Class getJavaType()
        Description copied from class: JavaTypeMapping
        Accessor for the java type being mapped. This is the java type that the mapping represents. Some examples :
        • if the field is of type "MyClass" then the mapping will be OIDMapping (or subclass) the javaType will be OID, and the type will be MyClass.
        • if the field is of type "int" then the mapping will be IntegerMapping, the javaType will be Integer, and the type will be int.
        The "java type" is the java-type name used in the plugin.xml mapping file
        Specified by:
        getJavaType in class JavaTypeMapping
        Returns:
        The java type
      • setObject

        public void setObject​(org.datanucleus.ExecutionContext ec,
                              PreparedStatement ps,
                              int[] exprIndex,
                              Object value)
        Description copied from class: JavaTypeMapping
        Sets a value into datastoreStatement at position specified by exprIndex.
        Overrides:
        setObject in class SingleFieldMapping
        Parameters:
        ec - ExecutionContext
        ps - PreparedStatement
        exprIndex - the position of the value in the statement
        value - the value
      • getObject

        public Object getObject​(org.datanucleus.ExecutionContext ec,
                                ResultSet resultSet,
                                int[] exprIndex)
        Description copied from class: JavaTypeMapping
        Obtains a value from datastoreResults at position specified by exprIndex.
        Overrides:
        getObject in class SingleFieldMapping
        Parameters:
        ec - ExecutionContext
        resultSet - ResultSet
        exprIndex - the position of the value in the result
        Returns:
        the value