com.mckoi.database
Class DataTableColumnDef

java.lang.Object
  extended by com.mckoi.database.DataTableColumnDef

public class DataTableColumnDef
extends java.lang.Object

All the information regarding a column in a table.

Author:
Tobias Downer

Field Summary
 TType type
          The TType object for this column.
 
Constructor Summary
DataTableColumnDef()
          Constructs the column definition.
DataTableColumnDef(DataTableColumnDef column_def)
          Creates a copy of the given column definition.
 
Method Summary
 java.lang.Class classType()
          Returns the Class of Java object that represents this column.
 ColumnDescription columnDescriptionValue(java.lang.String column_name)
          Returns this column as a ColumnDescription object and gives the column description the given name.
static DataTableColumnDef createBinaryColumn(java.lang.String name)
          Convenience helper - creates a DataTableColumnDef that holds a binary value.
static DataTableColumnDef createBooleanColumn(java.lang.String name)
          Convenience helper - creates a DataTableColumnDef that holds a boolean value.
static DataTableColumnDef createNumericColumn(java.lang.String name)
          Convenience helper - creates a DataTableColumnDef that holds a numeric value.
static DataTableColumnDef createStringColumn(java.lang.String name)
          Convenience helper - creates a DataTableColumnDef that holds a string value.
 void dump(java.io.PrintStream out)
          Dumps information about this object to the PrintStream.
 java.lang.String getClassConstraint()
          If this column represents a Java Object, this returns the name of the class the objects stored in the column must be derived from.
 java.lang.Class getClassConstraintAsClass()
          If this column represents a Java Object, this returns the class object that is the constraining class for the column.
 int getDBType()
           
 java.lang.String getDBTypeString()
          Returns the type as a String.
 int getDecomposition()
           
 Expression getDefaultExpression(TransactionSystem system)
           
 java.lang.String getDefaultExpressionString()
           
 java.lang.String getForeignKey()
          Deprecated.  
 java.lang.String getIndexScheme()
          Returns the name of the scheme we use to index this column.
 java.lang.String getLocaleString()
           
 java.lang.String getName()
           
 int getScale()
           
 int getSize()
           
 int getSQLType()
           
 java.lang.String getSQLTypeString()
          Returns the type as a String.
 int getStrength()
           
 TType getTType()
          Returns the TType for this column.
 void initTTypeInfo()
          Initializes the TType information for a column.
 boolean isIndexableType()
          Returns true if this type of column is able to be indexed.
 boolean isNotNull()
           
 void setClassConstraint(java.lang.String class_constraint)
          If this column represents a Java object, this must be a class the object is derived from to be added to this column.
 void setDBType(int db_type)
           
 void setDefaultExpression(Expression expression)
           
 void setForeignKey(java.lang.String foreign_key)
          Deprecated.  
 void setFromTType(TType type)
          Sets this DataTableColumnDef object up from information in the TType object.
 void setIndexScheme(java.lang.String index_scheme)
          Sets the indexing scheme for this column.
 void setName(java.lang.String name)
           
 void setNotNull(boolean status)
           
 void setScale(int scale)
           
 void setSize(int size)
           
 void setSQLType(int sql_type)
           
 void setStringLocale(java.lang.String locale_str, int strength, int decomposition)
           
static java.lang.String sqlTypeToString(int sql_type)
          Returns a string that represents the given SQLType enumeration passed to it.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

type

public TType type
The TType object for this column.

Constructor Detail

DataTableColumnDef

public DataTableColumnDef()
Constructs the column definition.


DataTableColumnDef

public DataTableColumnDef(DataTableColumnDef column_def)
Creates a copy of the given column definition.

Method Detail

setName

public void setName(java.lang.String name)

setNotNull

public void setNotNull(boolean status)

setSQLType

public void setSQLType(int sql_type)

setDBType

public void setDBType(int db_type)

setSize

public void setSize(int size)

setScale

public void setScale(int scale)

setStringLocale

public void setStringLocale(java.lang.String locale_str,
                            int strength,
                            int decomposition)

setDefaultExpression

public void setDefaultExpression(Expression expression)

setForeignKey

public void setForeignKey(java.lang.String foreign_key)
Deprecated. 


setIndexScheme

public void setIndexScheme(java.lang.String index_scheme)
Sets the indexing scheme for this column. Either 'InsertSearch' or 'BlindSearch'. If not set, then default to insert search.


setClassConstraint

public void setClassConstraint(java.lang.String class_constraint)
If this column represents a Java object, this must be a class the object is derived from to be added to this column.


setFromTType

public void setFromTType(TType type)
Sets this DataTableColumnDef object up from information in the TType object. This is useful when we need to create a DataTableColumnDef object to store information based on nothing more than a TType object. This comes in useful for purely functional tables.


initTTypeInfo

public void initTTypeInfo()
Initializes the TType information for a column. This should be called at the last part of a DataTableColumnDef setup.


getName

public java.lang.String getName()

isNotNull

public boolean isNotNull()

getSQLType

public int getSQLType()

getSQLTypeString

public java.lang.String getSQLTypeString()
Returns the type as a String.


getDBTypeString

public java.lang.String getDBTypeString()
Returns the type as a String.


classType

public java.lang.Class classType()
Returns the Class of Java object that represents this column.


getDBType

public int getDBType()

getSize

public int getSize()

getScale

public int getScale()

getLocaleString

public java.lang.String getLocaleString()

getStrength

public int getStrength()

getDecomposition

public int getDecomposition()

getDefaultExpression

public Expression getDefaultExpression(TransactionSystem system)

getDefaultExpressionString

public java.lang.String getDefaultExpressionString()

getForeignKey

public java.lang.String getForeignKey()
Deprecated. 


getIndexScheme

public java.lang.String getIndexScheme()
Returns the name of the scheme we use to index this column. It will be either 'InsertSearch' or 'BlindSearch'.


isIndexableType

public boolean isIndexableType()
Returns true if this type of column is able to be indexed.


getClassConstraint

public java.lang.String getClassConstraint()
If this column represents a Java Object, this returns the name of the class the objects stored in the column must be derived from.


getClassConstraintAsClass

public java.lang.Class getClassConstraintAsClass()
If this column represents a Java Object, this returns the class object that is the constraining class for the column.


getTType

public TType getTType()
Returns the TType for this column.


columnDescriptionValue

public ColumnDescription columnDescriptionValue(java.lang.String column_name)
Returns this column as a ColumnDescription object and gives the column description the given name.


dump

public void dump(java.io.PrintStream out)
Dumps information about this object to the PrintStream.


sqlTypeToString

public static java.lang.String sqlTypeToString(int sql_type)
Returns a string that represents the given SQLType enumeration passed to it. For example, pass SQLTypes.BIT and it returns the string "BIT"


createNumericColumn

public static DataTableColumnDef createNumericColumn(java.lang.String name)
Convenience helper - creates a DataTableColumnDef that holds a numeric value.


createBooleanColumn

public static DataTableColumnDef createBooleanColumn(java.lang.String name)
Convenience helper - creates a DataTableColumnDef that holds a boolean value.


createStringColumn

public static DataTableColumnDef createStringColumn(java.lang.String name)
Convenience helper - creates a DataTableColumnDef that holds a string value.


createBinaryColumn

public static DataTableColumnDef createBinaryColumn(java.lang.String name)
Convenience helper - creates a DataTableColumnDef that holds a binary value.