public class ColumnConfig extends java.lang.Object implements LiquibaseSerializable
LiquibaseSerializable.SerializationType
Constructor and Description |
---|
ColumnConfig()
Create am empty ColumnConfig object.
|
ColumnConfig(Column columnSnapshot)
Create a ColumnConfig object based on a
Column snapshot. |
Modifier and Type | Method and Description |
---|---|
ConstraintsConfig |
getConstraints()
Returns the ConstraintsConfig this ColumnConfig is using.
|
java.lang.String |
getDefaultValue()
The String default value to assign to this column.
|
java.lang.Boolean |
getDefaultValueBoolean()
Return the boolean value this column should default to.
|
DatabaseFunction |
getDefaultValueComputed()
Return the function whose value should generate this column's default.
|
java.util.Date |
getDefaultValueDate()
Return the date value this column should default to.
|
java.lang.Number |
getDefaultValueNumeric()
Return the numeric value this column should default to.
|
java.lang.Object |
getDefaultValueObject()
Return the value to set this column's default to according to the setDefaultValue* function that was called.
|
SequenceNextValueFunction |
getDefaultValueSequenceNext() |
java.math.BigInteger |
getIncrementBy()
Return the amount to auto increment by.
|
java.lang.String |
getName()
The name of the column.
|
java.lang.String |
getRemarks()
Return the remarks to apply to this column.
|
java.util.Set<java.lang.String> |
getSerializableFields() |
LiquibaseSerializable.SerializationType |
getSerializableFieldType(java.lang.String field) |
java.lang.Object |
getSerializableFieldValue(java.lang.String field) |
java.lang.String |
getSerializedObjectName() |
java.math.BigInteger |
getStartWith()
Return the number to start auto incrementing with.
|
java.lang.String |
getType()
The data type fof the column.
|
java.lang.String |
getValue()
The String value to set this column to.
|
java.lang.String |
getValueBlobFile()
Return the file containing the data to load into a BLOB.
|
java.lang.Boolean |
getValueBoolean()
Return the boolean value this column should be set to.
|
java.lang.String |
getValueClobFile()
Return the file containing the data to load into a CLOB.
|
DatabaseFunction |
getValueComputed()
Return the function this column should be set from.
|
java.util.Date |
getValueDate()
Return the date value this column should be set to.
|
java.lang.Number |
getValueNumeric()
Return the numeric value this column should be set to.
|
java.lang.Object |
getValueObject()
Return the value from whatever setValue* function was called.
|
SequenceCurrentValueFunction |
getValueSequenceCurrent() |
SequenceNextValueFunction |
getValueSequenceNext() |
boolean |
hasDefaultValue()
Returns true if any of the setDefaultValue* functions have had a non-null value set
|
java.lang.Boolean |
isAutoIncrement()
Returns true if this Column should be set to be auto increment.
|
ColumnConfig |
setAutoIncrement(java.lang.Boolean autoIncrement) |
ColumnConfig |
setConstraints(ConstraintsConfig constraints) |
ColumnConfig |
setDefaultValue(java.lang.String defaultValue)
Sets the string default value to assign to this column.
|
ColumnConfig |
setDefaultValueBoolean(java.lang.Boolean defaultValueBoolean) |
ColumnConfig |
setDefaultValueBoolean(java.lang.String defaultValueBoolean)
Set the defaultValueBoolean based on a given string.
|
ColumnConfig |
setDefaultValueComputed(DatabaseFunction defaultValueComputed) |
ColumnConfig |
setDefaultValueDate(java.util.Date defaultValueDate) |
ColumnConfig |
setDefaultValueDate(java.lang.String defaultValueDate)
Set the date this column should default to.
|
ColumnConfig |
setDefaultValueNumeric(java.lang.Number defaultValueNumeric) |
ColumnConfig |
setDefaultValueNumeric(java.lang.String defaultValueNumeric)
Set the number this column should use as its default.
|
ColumnConfig |
setDefaultValueSequenceNext(SequenceNextValueFunction defaultValueSequenceNext) |
ColumnConfig |
setIncrementBy(java.math.BigInteger incrementBy) |
ColumnConfig |
setName(java.lang.String name) |
ColumnConfig |
setRemarks(java.lang.String remarks) |
ColumnConfig |
setStartWith(java.math.BigInteger startWith) |
ColumnConfig |
setType(java.lang.String type) |
ColumnConfig |
setValue(java.lang.String value)
Sets the string value this column should be set to.
|
ColumnConfig |
setValueBlobFile(java.lang.String valueBlobFile) |
ColumnConfig |
setValueBoolean(java.lang.Boolean valueBoolean) |
ColumnConfig |
setValueBoolean(java.lang.String valueBoolean)
Set the valueBoolean based on a given string.
|
ColumnConfig |
setValueClobFile(java.lang.String valueClobFile) |
ColumnConfig |
setValueComputed(DatabaseFunction valueComputed) |
ColumnConfig |
setValueDate(java.util.Date valueDate) |
ColumnConfig |
setValueDate(java.lang.String valueDate)
Set the date this column should be set to.
|
ColumnConfig |
setValueNumeric(java.lang.Number valueNumeric) |
ColumnConfig |
setValueNumeric(java.lang.String valueNumeric)
Set the number this column should be set to.
|
ColumnConfig |
setValueSequenceCurrent(SequenceCurrentValueFunction valueSequenceCurrent) |
ColumnConfig |
setValueSequenceNext(SequenceNextValueFunction valueSequenceNext) |
public ColumnConfig(Column columnSnapshot)
Column
snapshot.
It will attempt to set as much as possible based on the information in the snapshot.public ColumnConfig()
public java.lang.String getName()
public ColumnConfig setName(java.lang.String name)
public java.lang.String getType()
DataTypeFactory.fromDescription(String)
before being included in SQL.public ColumnConfig setType(java.lang.String type)
public java.lang.String getValue()
setValue(String)
use a more specific function like getValueNumeric()
or the more generic getValueObject()
If performing an data manipulation operation, the setValue* functions should be used to set what the columns should be set to.
If performing a data definition operation, this setValue* functions should be used to set what existing rows should be set to (may be different than the default value for new rows)public ColumnConfig setValue(java.lang.String value)
setValueNumeric(Number)
.
This method does no processing of the string. Any trimming is expected to be done beforehand. It does not conver the string "null" to null
so that you can set the string "null" as a value if you are feeling particularly crazy.public java.lang.Number getValueNumeric()
setValue(String)
public ColumnConfig setValueNumeric(java.lang.String valueNumeric)
public ColumnConfig setValueNumeric(java.lang.Number valueNumeric)
public java.lang.Boolean getValueBoolean()
setValue(String)
public ColumnConfig setValueBoolean(java.lang.Boolean valueBoolean)
public ColumnConfig setValueBoolean(java.lang.String valueBoolean)
public DatabaseFunction getValueComputed()
setValue(String)
public ColumnConfig setValueComputed(DatabaseFunction valueComputed)
public ColumnConfig setValueSequenceNext(SequenceNextValueFunction valueSequenceNext)
public SequenceNextValueFunction getValueSequenceNext()
public ColumnConfig setValueSequenceCurrent(SequenceCurrentValueFunction valueSequenceCurrent)
public SequenceCurrentValueFunction getValueSequenceCurrent()
public java.util.Date getValueDate()
setValue(String)
public ColumnConfig setValueDate(java.util.Date valueDate)
public ColumnConfig setValueDate(java.lang.String valueDate)
ISODateFormat
.
If the passed value cannot be parsed as a date, it is assumed to be a function that returns a date.
If the string "null" is passed, it will set a null value.public java.lang.String getValueBlobFile()
setValue(String)
public ColumnConfig setValueBlobFile(java.lang.String valueBlobFile)
public java.lang.String getValueClobFile()
setValue(String)
public ColumnConfig setValueClobFile(java.lang.String valueClobFile)
public java.lang.Object getValueObject()
public java.lang.String getDefaultValue()
setDefaultValue(String)
use a more specific function like getDefaultValueNumeric()
or the more generic getDefaultValueObject()
public ColumnConfig setDefaultValue(java.lang.String defaultValue)
setDefaultValueNumeric(Number)
.
This method does no processing of the string. Any trimming is expected to be done beforehand. It does not convert the string "null" to null
so that you can set the string "null" as a value if you are feeling particularly crazy.public java.lang.Number getDefaultValueNumeric()
setDefaultValue(String)
public ColumnConfig setDefaultValueNumeric(java.lang.Number defaultValueNumeric)
public ColumnConfig setDefaultValueNumeric(java.lang.String defaultValueNumeric)
public java.util.Date getDefaultValueDate()
setDefaultValue(String)
public ColumnConfig setDefaultValueDate(java.lang.String defaultValueDate)
ISODateFormat
.
If the passed value cannot be parsed as a date, it is assumed to be a function that returns a date.
If the string "null" or an empty string is passed, it will set a null value.public ColumnConfig setDefaultValueDate(java.util.Date defaultValueDate)
public java.lang.Boolean getDefaultValueBoolean()
setDefaultValue(String)
public ColumnConfig setDefaultValueBoolean(java.lang.Boolean defaultValueBoolean)
public ColumnConfig setDefaultValueBoolean(java.lang.String defaultValueBoolean)
public DatabaseFunction getDefaultValueComputed()
setDefaultValue(String)
public ColumnConfig setDefaultValueComputed(DatabaseFunction defaultValueComputed)
public java.lang.Object getDefaultValueObject()
public ConstraintsConfig getConstraints()
public ColumnConfig setConstraints(ConstraintsConfig constraints)
public java.lang.Boolean isAutoIncrement()
public ColumnConfig setAutoIncrement(java.lang.Boolean autoIncrement)
public java.math.BigInteger getStartWith()
public ColumnConfig setStartWith(java.math.BigInteger startWith)
public java.math.BigInteger getIncrementBy()
public ColumnConfig setIncrementBy(java.math.BigInteger incrementBy)
public boolean hasDefaultValue()
public java.lang.String getRemarks()
public ColumnConfig setRemarks(java.lang.String remarks)
public java.lang.String getSerializedObjectName()
getSerializedObjectName
in interface LiquibaseSerializable
public java.util.Set<java.lang.String> getSerializableFields()
getSerializableFields
in interface LiquibaseSerializable
public java.lang.Object getSerializableFieldValue(java.lang.String field)
getSerializableFieldValue
in interface LiquibaseSerializable
public SequenceNextValueFunction getDefaultValueSequenceNext()
public ColumnConfig setDefaultValueSequenceNext(SequenceNextValueFunction defaultValueSequenceNext)
public LiquibaseSerializable.SerializationType getSerializableFieldType(java.lang.String field)
getSerializableFieldType
in interface LiquibaseSerializable