Class RefTypeCompiler

java.lang.Object
org.apache.derby.impl.sql.compile.BaseTypeCompiler
org.apache.derby.impl.sql.compile.RefTypeCompiler
All Implemented Interfaces:
TypeCompiler

public class RefTypeCompiler extends BaseTypeCompiler
This class implements TypeCompiler for the SQL REF datatype.
  • Constructor Details

    • RefTypeCompiler

      public RefTypeCompiler()
  • Method Details

    • getCorrespondingPrimitiveTypeName

      public 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:
    • getCastToCharWidth

      public int getCastToCharWidth(DataTypeDescriptor dts)
      Description copied from interface: TypeCompiler
      Return the maximum width for this data type when cast to a char type.
      Parameters:
      dts - The associated DataTypeDescriptor for this TypeId.
      Returns:
      int The maximum width for this data type when cast to a char type.
      See Also:
    • convertible

      public boolean convertible(TypeId otherType, boolean forDataTypeFunction)
      Description copied from interface: TypeCompiler
      Determine if this type can be CONVERTed to some other 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:
    • compatible

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

      public boolean storable(TypeId otherType, ClassFactory cf)
      Description copied from interface: TypeCompiler
      Determine if this type can have a value of another type stored into it. Note that direction is relevant here: the test is that the otherType is storable into this type.
      Parameters:
      otherType - The TypeId of the other type to compare this type to
      cf - A ClassFactory
      Returns:
      true if the other type can be stored in a column of this type.
      See Also:
    • interfaceName

      public 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:
    • nullMethodName

      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