Class CLOBTypeCompiler

  • All Implemented Interfaces:
    TypeCompiler

    public class CLOBTypeCompiler
    extends BaseTypeCompiler
    This class implements TypeCompiler for the SQL LOB types.
    • Constructor Detail

      • CLOBTypeCompiler

        public CLOBTypeCompiler()
    • Method Detail

      • convertible

        public boolean convertible​(TypeId otherType,
                                   boolean forDataTypeFunction)
        Tell whether this type (LOB) can be converted to the given type.
        Parameters:
        otherType - The CompilationType of the other type to compare this type to
        forDataTypeFunction - true if this is a type function that requires more liberal behavior (e.g DOUBLE can convert a char but you cannot cast a CHAR to double.
        Returns:
        true if the types can be converted, false if conversion is not allowed
        See Also:
        TypeCompiler.convertible(org.apache.derby.iapi.types.TypeId, boolean)
      • compatible

        public boolean compatible​(TypeId otherType)
        Tell whether this type (CLOB) is compatible with the given type.
        Parameters:
        otherType - The TypeId of the other type.
        Returns:
        true if the types are compatible, false if not compatible
      • storable

        public boolean storable​(TypeId otherType,
                                ClassFactory cf)
        Tell whether this type (LOB) can be stored into from the given type.
        Parameters:
        otherType - The TypeId of the other type.
        cf - A ClassFactory
        Returns:
        true if the other type can be stored in a column of this type.
      • interfaceName

        public java.lang.String interfaceName()
        Description copied from interface: TypeCompiler
        Get the name of the interface for this type. For example, the interface for a SQLInteger is NumberDataValue. The full path name of the type is returned.
        Returns:
        The name of the interface for this type.
        See Also:
        TypeCompiler.interfaceName()
      • getCorrespondingPrimitiveTypeName

        public java.lang.String getCorrespondingPrimitiveTypeName()
        Description copied from interface: TypeCompiler
        Get the name of the corresponding Java type. For numerics and booleans we will get the corresponding Java primitive type. e Each SQL type has a corresponding Java type. When a SQL value is passed to a Java method, it is translated to its corresponding Java type. For example, a SQL Integer will be mapped to a Java int, but a SQL date will be mapped to a java.sql.Date.
        Returns:
        The name of the corresponding Java primitive type.
        See Also:
        TypeCompiler.getCorrespondingPrimitiveTypeName()
      • nullMethodName

        java.lang.String nullMethodName()
        Description copied from class: BaseTypeCompiler
        Return the method name to get a Derby DataValueDescriptor object of the correct type set to SQL NULL. The method named will be called with one argument: a holder object if pushCollationForDataValue() returns false, otherwise two arguments, the second being the collationType.
        Specified by:
        nullMethodName in class BaseTypeCompiler
      • dataValueMethodName

        java.lang.String dataValueMethodName()
        Description copied from class: BaseTypeCompiler
        Return the method name to get a Derby DataValueDescriptor object of the correct type and set it to a specific value. The method named will be called with two arguments, a value to set the returned value to and a holder object if pushCollationForDataValue() returns false. Otherwise three arguments, the third being the collationType. This implementation returns "getDataValue" to map to the overloaded methods DataValueFactory.getDataValue(type, dvd type)
        Overrides:
        dataValueMethodName in class BaseTypeCompiler
      • pushCollationForDataValue

        boolean pushCollationForDataValue​(int collationType)
        Push the collation type if it is not COLLATION_TYPE_UCS_BASIC.
        Overrides:
        pushCollationForDataValue in class BaseTypeCompiler
        Parameters:
        collationType - Collation type of character values.
        Returns:
        true collationType will be pushed, false collationType will be ignored.