Package org.apache.torque.map
Class ColumnMap
- java.lang.Object
-
- org.apache.torque.map.OptionSupport
-
- org.apache.torque.map.ColumnMap
-
- All Implemented Interfaces:
Serializable
,Column
public class ColumnMap extends OptionSupport implements Column, Serializable
ColumnMap is used to model a column of a table in a database.Note that this information should be set via the
TableMapBuilder
class and not changed by applications. The set methods are only public because this class needs them.- Version:
- $Id: ColumnMap.java 1850965 2019-01-10 17:21:29Z painter $
- Author:
- John D. McNally, Greg Monroe
- See Also:
- Serialized Form
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addInheritanceMap(InheritanceMap map)
Add an associated inheritance mapping.String
getColumnName()
Get the name of a column.String
getDefault()
A string representing the default value defined for this column.String
getDescription()
Returns the column description info.String
getFullTableName()
Get the name of the table this column is in.String
getInheritance()
Gets the inheritance type used.InheritanceMap
getInheritanceMap(String key)
Get the inheritance map with the specified key.InheritanceMap[]
getInheritanceMaps()
Get the inheritance information associated with this column,String
getJavaName()
Gets the Java Name for this column as defined in XML or created by generator code.String
getJavaNamingMethod()
Returns the Java naming method for this column.String
getJavaType()
Returns the java type of this column.int
getPosition()
Returns the position (one based) of this column in the table.int
getScale()
Gets the scale set for this column (if any) as set in the XML database definition.String
getSchemaName()
Get the name of the schema of the table this column is in.int
getSize()
The "precision" value from the XML size="<precision>[,<scale>]" attribute.String
getSqlExpression()
Returns the SQL expression for the fully qualified column name.TableMap
getTable()
Returns the map for the table this column belongs to.String
getTableName()
Get the name of the table this column is in.String
getTorqueType()
Get the name of the Torque type of this column.Object
getType()
Get the type of this column.boolean
isAutoIncrement()
Returns whether this column is an autoincrement column.boolean
isNotNull()
Is null value allowed ?boolean
isPk()
Returns whether this column is a primary key.boolean
isPrimaryKey()
Is this column a primary key?boolean
isProtected()
Returns whether getters and setters are generated with the access modifier "protected" rather than "public".boolean
isUseInheritance()
Returns whether this column uses inheritance subclasses.boolean
isUsePrimitive()
Returns whether this column uses primitive values rather than objects.protected String
normalizeName(String name)
Makes sure that the column names don't include table prefixes.void
setAutoIncrement(boolean autoIncrement)
Sets whether this column is an autoincrement column.void
setDefault(String defaultValue)
Sets the default value for this column.void
setDescription(String description)
Sets the description for this column.void
setInheritance(String inheritanceType)
Sets the inheritance type.void
setJavaName(String name)
Sets the Java Name for this column.void
setJavaNamingMethod(String javaNamingMethod)
Sets the java naming method for this column.void
setJavaType(String javaType)
Sets the java type of this column.void
setNotNull(boolean nn)
Set if this column may be null.void
setPk(boolean pk)
Sets whether this column is a primary key.void
setPosition(int position)
Sets the position (one based) of this column in the table.void
setPrimaryKey(boolean pk)
Set if this column is a primary key or not.void
setProtected(boolean isProtected)
Sets whether getters and setters should be generated with the access modifier "protected" rather than "public".void
setScale(int scale)
void
setSize(int size)
Set the size of this column.void
setTorqueType(String torqueType)
Set the Torque type of this column.void
setType(Object type)
Set the type of this column.void
setUseInheritance(boolean useInheritance)
Sets whether this column uses inheritance subclasses.void
setUsePrimitive(boolean usePrimitive)
Sets whether this column uses primitive values rather than objects.String
toString()
-
Methods inherited from class org.apache.torque.map.OptionSupport
clearOptions, getOption, getOptions, setOption
-
-
-
-
Method Detail
-
normalizeName
protected String normalizeName(String name)
Makes sure that the column names don't include table prefixes. E.g., SCARAB_PROJECT.PROJECT_ID should be PROJECT_ID.- Parameters:
name
- The name to check- Returns:
- The corrected name if needed or the same name if not.
-
getColumnName
public String getColumnName()
Get the name of a column.- Specified by:
getColumnName
in interfaceColumn
- Returns:
- A String with the column name.
-
getTableName
public String getTableName()
Get the name of the table this column is in.- Specified by:
getTableName
in interfaceColumn
- Returns:
- A String with the table name.
-
getFullTableName
public String getFullTableName()
Get the name of the table this column is in.- Specified by:
getFullTableName
in interfaceColumn
- Returns:
- A String with the table name.
-
getSchemaName
public String getSchemaName()
Get the name of the schema of the table this column is in.- Specified by:
getSchemaName
in interfaceColumn
- Returns:
- A String with the schema name, or null if no schema is given.
-
setType
public void setType(Object type)
Set the type of this column.- Parameters:
type
- An Object specifying the type.
-
setTorqueType
public void setTorqueType(String torqueType)
Set the Torque type of this column.- Parameters:
torqueType
- the Torque type of the column.
-
setSize
public void setSize(int size)
Set the size of this column.- Parameters:
size
- An int specifying the size.
-
setPrimaryKey
public void setPrimaryKey(boolean pk)
Set if this column is a primary key or not.- Parameters:
pk
- True if column is a primary key.
-
setNotNull
public void setNotNull(boolean nn)
Set if this column may be null.- Parameters:
nn
- True if column may be null.
-
getType
public Object getType()
Get the type of this column. Note that if usePrimitive is true, this may need to be converted.- Returns:
- An Object specifying the type.
-
getTorqueType
public String getTorqueType()
Get the name of the Torque type of this column.- Returns:
- The name of the Torque type of this column.
-
getSize
public int getSize()
The "precision" value from the XML size="<precision>[,<scale>]" attribute. Where [,<scale>] is optional. If the size attribute has not been set in the XML, it will return 0.Note that the size="P,S" format should be replaced with size="P" scale="S".
- Returns:
- An int specifying the size.
-
isPrimaryKey
public boolean isPrimaryKey()
Is this column a primary key?- Returns:
- True if column is a primary key.
-
isNotNull
public boolean isNotNull()
Is null value allowed ?- Returns:
- True if column may be null.
-
getScale
public int getScale()
Gets the scale set for this column (if any) as set in the XML database definition. E.g., the value of the scale attribute or the scale portion of a size="P,S" attribute. (Note: size="P,S" format is being deprecated!).- Returns:
- Returns the scale.
-
setScale
public void setScale(int scale)
- Parameters:
scale
- The scale to set.
-
getJavaName
public String getJavaName()
Gets the Java Name for this column as defined in XML or created by generator code.- Returns:
- the Java Name.
-
setJavaName
public void setJavaName(String name)
Sets the Java Name for this column.- Parameters:
name
- the Java Name.
-
isAutoIncrement
public boolean isAutoIncrement()
Returns whether this column is an autoincrement column.- Returns:
- true if this column is an autoIncrement column, false otherwise.
-
setAutoIncrement
public void setAutoIncrement(boolean autoIncrement)
Sets whether this column is an autoincrement column.- Parameters:
autoIncrement
- whether this colimn is an autoincrement column.
-
getDefault
public String getDefault()
A string representing the default value defined for this column.- Returns:
- The default value of this column, if any.
-
setDefault
public void setDefault(String defaultValue)
Sets the default value for this column.- Parameters:
defaultValue
- The defaultValue to set.
-
getDescription
public String getDescription()
Returns the column description info.- Returns:
- the description, if any.
-
setDescription
public void setDescription(String description)
Sets the description for this column.- Parameters:
description
- The description to set.
-
getInheritanceMaps
public InheritanceMap[] getInheritanceMaps()
Get the inheritance information associated with this column,- Returns:
- Returns an array of associated inheritanceMap. The array is in XML order.
-
addInheritanceMap
public void addInheritanceMap(InheritanceMap map)
Add an associated inheritance mapping.- Parameters:
map
- The inheritanceMap to associate with this column.
-
getInheritance
public String getInheritance()
Gets the inheritance type used.- Returns:
- the inheritance type used.
-
setInheritance
public void setInheritance(String inheritanceType)
Sets the inheritance type.- Parameters:
inheritanceType
- The inheritance type to set.
-
isProtected
public boolean isProtected()
Returns whether getters and setters are generated with the access modifier "protected" rather than "public".- Returns:
- whether the accessors should be protected rather than public.
-
setProtected
public void setProtected(boolean isProtected)
Sets whether getters and setters should be generated with the access modifier "protected" rather than "public".- Parameters:
isProtected
- whether getters and setters for this column are protected.
-
isPk
public boolean isPk()
Returns whether this column is a primary key.- Returns:
- whether this column is a primary key.
-
setPk
public void setPk(boolean pk)
Sets whether this column is a primary key.- Parameters:
pk
- whether this column is a primary key.
-
isUseInheritance
public boolean isUseInheritance()
Returns whether this column uses inheritance subclasses.- Returns:
- true if inheritance subclasses are used, false otherwise.
-
setUseInheritance
public void setUseInheritance(boolean useInheritance)
Sets whether this column uses inheritance subclasses.- Parameters:
useInheritance
- whether this column uses Inheritance subclasses.
-
getInheritanceMap
public InheritanceMap getInheritanceMap(String key)
Get the inheritance map with the specified key.- Parameters:
key
- the key of the inheritance map.- Returns:
- the inheritance map with the specified key, or null if no inheritance map with the specified key exists in this column.
-
isUsePrimitive
public boolean isUsePrimitive()
Returns whether this column uses primitive values rather than objects.- Returns:
- true if this column uses primitive values, false if it uses objects.
-
setUsePrimitive
public void setUsePrimitive(boolean usePrimitive)
Sets whether this column uses primitive values rather than objects.- Parameters:
usePrimitive
- whether primitive objects are used rather than objects.
-
getJavaNamingMethod
public String getJavaNamingMethod()
Returns the Java naming method for this column.- Returns:
- the javaNamingMethod for this column.
-
setJavaNamingMethod
public void setJavaNamingMethod(String javaNamingMethod)
Sets the java naming method for this column.- Parameters:
javaNamingMethod
- The javaNamingMethod to set.
-
getTable
public TableMap getTable()
Returns the map for the table this column belongs to.- Returns:
- the table map for this column.
-
getPosition
public int getPosition()
Returns the position (one based) of this column in the table. XML order is preserved.- Returns:
- The position of this column, one-based.
-
setPosition
public void setPosition(int position)
Sets the position (one based) of this column in the table.- Parameters:
position
- The position to set.
-
getJavaType
public String getJavaType()
Returns the java type of this column.- Returns:
- the javaType.
-
setJavaType
public void setJavaType(String javaType)
Sets the java type of this column.- Parameters:
javaType
- The javaType to set.
-
getSqlExpression
public String getSqlExpression()
Returns the SQL expression for the fully qualified column name. This is tableName.columnName if the database for this column has no schema and defaultSchema is null, or schemaName.tableName.columnName with a schema (the database schema overrides the default schema if both are given).- Specified by:
getSqlExpression
in interfaceColumn
- Returns:
- the SQL expression for the column, not null.
-
-