public class ValueMetaBase extends Object implements ValueMetaInterface
Modifier and Type | Field and Description |
---|---|
static String |
DEFAULT_DATE_FORMAT_MASK |
static String |
DEFAULT_TIMESTAMP_FORMAT_MASK |
static boolean |
EMPTY_STRING_AND_NULL_ARE_DIFFERENT |
static String[] |
SINGLE_BYTE_ENCODINGS |
static String[] |
trimTypeCode
The trim type codes
|
static String[] |
trimTypeDesc
The trim description
|
static String |
XML_DATA_TAG |
static String |
XML_META_TAG |
DEFAULT_INTEGER_LENGTH, SORT_TYPE_ASCENDING, SORT_TYPE_DESCENDING, SORT_TYPE_NOT_SORTED, sortTypeCodes, STORAGE_TYPE_BINARY_STRING, STORAGE_TYPE_INDEXED, STORAGE_TYPE_NORMAL, storageTypeCodes, TRIM_TYPE_BOTH, TRIM_TYPE_LEFT, TRIM_TYPE_NONE, TRIM_TYPE_RIGHT, TYPE_BIGNUMBER, TYPE_BINARY, TYPE_BOOLEAN, TYPE_DATE, TYPE_INET, TYPE_INTEGER, TYPE_NONE, TYPE_NUMBER, TYPE_SERIALIZABLE, TYPE_STRING, TYPE_TIMESTAMP, typeCodes
Constructor and Description |
---|
ValueMetaBase() |
ValueMetaBase(DataInputStream inputStream)
Deprecated.
in favor of a combination of
ValueMetaFactory .createValueMeta() and the loadMetaData() method. |
ValueMetaBase(Node node) |
ValueMetaBase(String name) |
ValueMetaBase(String name,
int type) |
ValueMetaBase(String name,
int type,
int storageType) |
ValueMetaBase(String name,
int type,
int length,
int precision) |
Modifier and Type | Method and Description |
---|---|
ValueMetaBase |
clone() |
Object |
cloneValueData(Object object)
Clones the data.
|
int |
compare(Object data1,
Object data2)
Compare 2 values of the same data type
|
int |
compare(Object data1,
ValueMetaInterface meta2,
Object data2)
Compare 2 values of the same data type
|
Object |
convertBinaryStringToNativeType(byte[] binary)
Convert the binary data to the actual data type.
- byte[] --> Long (Integer) - byte[] --> Double (Number) - byte[] --> BigDecimal (BigNumber) - byte[] --> Date (Date) - byte[] --> Boolean (Boolean) - byte[] --> byte[] (Binary) |
Object |
convertData(ValueMetaInterface meta2,
Object data2)
Convert the specified data to the data type specified in this object.
|
Object |
convertDataCompatible(ValueMetaInterface meta2,
Object data2)
Convert the specified data to the data type specified in this object.
|
Object |
convertDataFromString(String pol,
ValueMetaInterface convertMeta,
String nullIf,
String ifNull,
int trim_type)
Convert the specified string to the data type specified in this object.
|
Object |
convertDataUsingConversionMetaData(Object data)
Convert an object to the data type specified in the conversion metadata
|
Object |
convertNormalStorageTypeToBinaryString(Object object)
Convert a normal storage type to a binary string object.
|
static Boolean |
convertStringToBoolean(String string) |
Object |
convertToBinaryStringStorageType(Object object)
Converts the specified data object to the binary string storage type.
|
Object |
convertToNormalStorageType(Object object)
Converts the specified data object to the normal storage type.
|
Value |
createOriginalValue(Object data)
Create an old-style value for backward compatibility reasons
|
void |
drawValue(PrimitiveGCInterface gc,
Object value)
This method draws the value using the supplied graphical context.
|
static String[] |
getAllTypes()
Get an array of String describing the possible types a Value can have.
|
BigDecimal |
getBigNumber(Object object)
Convert the supplied data to a BigNumber
|
byte[] |
getBinary(Object object)
Convert the supplied data to binary data
|
byte[] |
getBinaryString(Object object)
convert the supplied data to a binary string representation (for writing text)
|
Boolean |
getBoolean(Object object)
Convert the supplied data to a Boolean
|
String |
getComments()
Gets the comments.
|
String |
getCompatibleString(Object object)
Convert the supplied data to a String compatible with version 2.5.
|
String |
getConversionMask()
Deprecated.
|
ValueMetaInterface |
getConversionMetadata()
This conversion metadata can be attached to a String object to see where it came from and with which mask it was
generated, the encoding, the local languages used, padding, etc.
|
String |
getCurrencySymbol()
Gets the currency symbol.
|
String |
getDatabaseColumnTypeDefinition(DatabaseInterface databaseInterface,
String tk,
String pk,
boolean use_autoinc,
boolean add_fieldname,
boolean add_cr)
Ask for suggestions as to how this plugin data type should be represented in the specified database interface
|
String |
getDataXML(Object object)
Returns an XML representation of the row data.
|
Date |
getDate(Object object)
Convert the supplied data to a Date
|
SimpleDateFormat |
getDateFormat()
Gets the date format.
|
Locale |
getDateFormatLocale()
Returns the locale from the date format.
|
TimeZone |
getDateFormatTimeZone() |
DecimalFormat |
getDecimalFormat()
Gets the decimal format.
|
DecimalFormat |
getDecimalFormat(boolean useBigDecimal)
Gets the decimal format.
|
String |
getDecimalSymbol()
Gets the decimal symbol.
|
String |
getGroupingSymbol()
Gets the grouping symbol.
|
Object[] |
getIndex()
Gets the index.
|
Long |
getInteger(Object object)
Convert the supplied data to an Integer
|
int |
getLength()
Gets the length.
|
String |
getMetaXML()
Returns an XML representation of the row metadata.
|
String |
getName()
Gets the name.
|
Object |
getNativeDataType(Object object)
This method gives you the native Java data type corresponding to the value meta-data.
|
Double |
getNumber(Object object)
Convert the supplied data to a Number
|
long |
getNumberOfBinaryStringConversions()
Returns the number of binary string to native data type conversions done with this object conversions
|
String |
getOrigin()
Gets the origin.
|
int |
getOriginalColumnType()
store original JDBC RecordSetMetaData for later use
|
String |
getOriginalColumnTypeName()
Gets the original column type name.
|
int |
getOriginalPrecision()
Gets the original precision.
|
int |
getOriginalScale()
Gets the original scale.
|
int |
getPrecision()
Gets the precision.
|
ValueMetaInterface |
getStorageMetadata()
Returns the storage Meta data that is needed for internal conversion from BinaryString or String to the specified
type.
|
int |
getStorageType()
Gets the storage type.
|
static int |
getStorageType(String desc)
Convert the String description of a storage type to an integer type.
|
static String |
getStorageTypeCode(int storageType) |
String |
getStorageTypeDesc()
Return the storage type of a value in a textual form: "normal", "binary-string", "indexes"
|
String |
getString(Object object)
Convert the supplied data to a String
|
String |
getStringEncoding()
Gets the string encoding.
|
int |
getTrimType()
Gets the trim type.
|
static int |
getTrimTypeByCode(String tt) |
static int |
getTrimTypeByDesc(String tt) |
static String |
getTrimTypeCode(int i) |
static String[] |
getTrimTypeCodes() |
static String |
getTrimTypeDesc(int i) |
static String[] |
getTrimTypeDescriptions() |
int |
getType()
Gets the type.
|
static int |
getType(String desc)
Convert the String description of a type to an integer type.
|
String |
getTypeDesc()
Return the type of a value in a textual form: "String", "Number", "Integer", "Boolean", "Date", ...
|
static String |
getTypeDesc(int type)
TODO: change Desc to Code all over the place.
|
static String[] |
getTypes()
get an array of String describing the possible types a Value can have.
|
Object |
getValue(Node node)
Convert a data XML node to an Object that corresponds to the metadata.
|
Object |
getValueData(Value value)
Extracts the primitive data from an old style Value object
|
Object |
getValueFromResultSet(DatabaseInterface databaseInterface,
ResultSet resultSet,
int index)
Get a value from a result set column based on the current value metadata
|
ValueMetaInterface |
getValueFromSQLType(DatabaseMeta databaseMeta,
String name,
ResultSetMetaData rm,
int index,
boolean ignoreLength,
boolean lazyConversion)
Investigate JDBC result set metadata at the specified index.
|
int |
hashCode(Object object)
Calculate the hashcode of the specified data object
|
boolean |
isBigNumber()
Checks whether or not the value is a Big Number
|
boolean |
isBigNumberFormatting() |
boolean |
isBinary()
Checks whether or not this value is of type Binary
|
boolean |
isBoolean()
Checks whether or not this value is a boolean
|
boolean |
isCaseInsensitive()
Returns a true of the value object is case insensitive, false if it is case sensitive,
|
boolean |
isDate()
Checks whether or not this value is a Date
|
boolean |
isDateFormatLenient()
Returns true of the date format is leniant, false if it is strict.
|
boolean |
isInteger()
Checks whether or not this value is an Integer
|
boolean |
isLargeTextField()
Returns true if this is a large text field (CLOB, TEXT) with arbitrary length.
|
boolean |
isLenientStringToNumber() |
boolean |
isNull(Object data)
Determine if an object is null.
|
boolean |
isNumber()
Checks whether or not the value is a Number
|
boolean |
isNumeric()
Checks whether or not this Value is Numeric A Value is numeric if it is either of type Number or Integer
|
static boolean |
isNumeric(int t)
Checks whether or not the specified type is either Integer or Number
|
boolean |
isOriginalAutoIncrement()
Checks if is original auto increment.
|
int |
isOriginalNullable()
Checks if is original nullable.
|
boolean |
isOriginalSigned()
Checks if is original signed.
|
boolean |
isOutputPaddingEnabled()
Returns true if output padding is enabled (padding to specified length).
|
boolean |
isSerializableType()
Checks whether or not this value is of type Serializable
|
boolean |
isSingleByteEncoding() |
boolean |
isSortedAscending() |
boolean |
isSortedDescending()
Returns whether or not the value should be sorted in descending order.
|
boolean |
isStorageBinaryString()
Checks if is storage binary string.
|
boolean |
isStorageIndexed()
Checks if is storage indexed.
|
boolean |
isStorageNormal()
Checks if is storage normal.
|
boolean |
isString()
Checks whether or not the value is a String.
|
Object |
readData(DataInputStream inputStream)
De-serialize data from an inputstream.
|
void |
readMetaData(DataInputStream inputStream)
Load the attributes of this particular value meta object from the input stream.
|
boolean |
requiresRealClone()
Returns true if the data type requires a real copy.
|
void |
setBigNumberFormatting(boolean bigNumberFormatting) |
void |
setCaseInsensitive(boolean caseInsensitive)
Sets whether or not the value object is case sensitive.
|
void |
setComments(String comments)
Sets the comments for the object implementing the interface.
|
void |
setConversionMask(String conversionMask)
Sets the conversion mask.
|
void |
setConversionMetadata(ValueMetaInterface conversionMetadata)
Attach conversion metadata to a String object to see where it came from and with which mask it was generated, the
encoding, the local languages used, padding, etc.
|
void |
setCurrencySymbol(String currencySymbol)
Sets the currency symbol.
|
void |
setDateFormatLenient(boolean dateFormatLenient)
Set to true if the date formatting (parsing) is to be set to lenient.
|
void |
setDateFormatLocale(Locale dateFormatLocale)
Sets the locale of the date format.
|
void |
setDateFormatTimeZone(TimeZone dateFormatTimeZone) |
void |
setDecimalSymbol(String decimalSymbol)
Sets the decimal symbol.
|
void |
setGroupingSymbol(String groupingSymbol)
Sets the grouping symbol.
|
void |
setIndex(Object[] index)
Sets the index.
|
void |
setLargeTextField(boolean largeTextField)
Set to true if the this is to be a large text field (CLOB, TEXT) with arbitrary length.
|
void |
setLength(int length)
Sets the length.
|
void |
setLength(int length,
int precision)
Sets the length.
|
void |
setLenientStringToNumber(boolean lenientStringToNumber) |
void |
setName(String name)
Sets the name.
|
void |
setNumberOfBinaryStringConversions(long numberOfBinaryStringConversions)
Returns the number of binary string to native data type done with this object conversions to set.
|
void |
setOrigin(String origin)
Sets the origin.
|
void |
setOriginalAutoIncrement(boolean originalAutoIncrement)
Sets the original auto increment.
|
void |
setOriginalColumnType(int originalColumnType)
Sets the original column type.
|
void |
setOriginalColumnTypeName(String originalColumnTypeName)
Sets the original column type name.
|
void |
setOriginalNullable(int originalNullable)
Sets the original nullable.
|
void |
setOriginalPrecision(int originalPrecision)
Sets the original precision.
|
void |
setOriginalScale(int originalScale)
Sets the original scale.
|
void |
setOriginalSigned(boolean originalSigned)
Sets the original signed.
|
void |
setOutputPaddingEnabled(boolean outputPaddingEnabled)
Set to true if output padding is to be enabled (padding to specified length).
|
void |
setPrecision(int precision)
Sets the precision.
|
void |
setPreparedStatementValue(DatabaseMeta databaseMeta,
PreparedStatement preparedStatement,
int index,
Object data)
Set a value on a JDBC prepared statement on the specified position
|
void |
setSortedDescending(boolean sortedDescending)
Sets whether or not the value should be set in a descending order.
|
void |
setStorageMetadata(ValueMetaInterface storageMetadata)
Sets the storage meta data.
|
void |
setStorageType(int storageType)
Sets the storage type.
|
void |
setStringEncoding(String encoding)
Sets the string encoding.
|
void |
setTrimType(int trimType)
Sets the trim type.
|
void |
setType(int type)
Deprecated.
|
String |
toString() |
String |
toStringMeta()
a String text representation of this Value, optionally padded to the specified length
|
void |
writeData(DataOutputStream outputStream,
Object object)
Serialize the content of the specified data object to the outputStream.
|
void |
writeMeta(DataOutputStream outputStream)
Write the content of this class (metadata) to the specified output stream.
|
public static final String DEFAULT_DATE_FORMAT_MASK
public static final String DEFAULT_TIMESTAMP_FORMAT_MASK
public static final String XML_META_TAG
public static final String XML_DATA_TAG
public static final boolean EMPTY_STRING_AND_NULL_ARE_DIFFERENT
public static final String[] trimTypeCode
public static final String[] trimTypeDesc
public static final String[] SINGLE_BYTE_ENCODINGS
public ValueMetaBase()
public ValueMetaBase(String name)
public ValueMetaBase(String name, int type)
public ValueMetaBase(String name, int type, int storageType)
public ValueMetaBase(String name, int type, int length, int precision)
@Deprecated public ValueMetaBase(DataInputStream inputStream) throws KettleFileException, KettleEOFException
ValueMetaFactory
.createValueMeta() and the loadMetaData() method.inputStream
- KettleFileException
KettleEOFException
public ValueMetaBase(Node node) throws KettleException
KettleException
public ValueMetaBase clone()
clone
in interface ValueMetaInterface
clone
in class Object
public String getComments()
ValueMetaInterface
getComments
in interface ValueMetaInterface
public void setComments(String comments)
ValueMetaInterface
setComments
in interface ValueMetaInterface
comments
- the comments to setpublic Object[] getIndex()
ValueMetaInterface
getIndex
in interface ValueMetaInterface
public void setIndex(Object[] index)
ValueMetaInterface
setIndex
in interface ValueMetaInterface
index
- the index to setpublic int getLength()
ValueMetaInterface
getLength
in interface ValueMetaInterface
public void setLength(int length)
ValueMetaInterface
setLength
in interface ValueMetaInterface
length
- the length to setpublic void setLength(int length, int precision)
ValueMetaInterface
setLength
in interface ValueMetaInterface
length
- the length to setprecision
- the precisionpublic String getName()
ValueMetaInterface
getName
in interface ValueMetaInterface
public void setName(String name)
ValueMetaInterface
setName
in interface ValueMetaInterface
name
- the name to setpublic String getOrigin()
ValueMetaInterface
getOrigin
in interface ValueMetaInterface
public void setOrigin(String origin)
ValueMetaInterface
setOrigin
in interface ValueMetaInterface
origin
- the origin to setpublic int getPrecision()
ValueMetaInterface
getPrecision
in interface ValueMetaInterface
public void setPrecision(int precision)
ValueMetaInterface
setPrecision
in interface ValueMetaInterface
precision
- the precision to setpublic int getStorageType()
ValueMetaInterface
getStorageType
in interface ValueMetaInterface
public void setStorageType(int storageType)
ValueMetaInterface
setStorageType
in interface ValueMetaInterface
storageType
- the storageType to setpublic boolean isStorageNormal()
ValueMetaInterface
isStorageNormal
in interface ValueMetaInterface
public boolean isStorageIndexed()
ValueMetaInterface
isStorageIndexed
in interface ValueMetaInterface
public boolean isStorageBinaryString()
ValueMetaInterface
isStorageBinaryString
in interface ValueMetaInterface
public int getType()
ValueMetaInterface
getType
in interface ValueMetaInterface
@Deprecated public void setType(int type)
ValueMetaInterface
setType
in interface ValueMetaInterface
type
- the type to set@Deprecated public String getConversionMask()
ValueMetaInterface
getConversionMask
in interface ValueMetaInterface
public void setConversionMask(String conversionMask)
ValueMetaInterface
setConversionMask
in interface ValueMetaInterface
conversionMask
- the conversionMask to setpublic String getStringEncoding()
ValueMetaInterface
getStringEncoding
in interface ValueMetaInterface
public void setStringEncoding(String encoding)
ValueMetaInterface
setStringEncoding
in interface ValueMetaInterface
encoding
- the encoding to setpublic String getDecimalSymbol()
ValueMetaInterface
getDecimalSymbol
in interface ValueMetaInterface
public void setDecimalSymbol(String decimalSymbol)
ValueMetaInterface
setDecimalSymbol
in interface ValueMetaInterface
decimalSymbol
- the decimalSymbol to setpublic String getGroupingSymbol()
ValueMetaInterface
getGroupingSymbol
in interface ValueMetaInterface
public void setGroupingSymbol(String groupingSymbol)
ValueMetaInterface
setGroupingSymbol
in interface ValueMetaInterface
groupingSymbol
- the groupingSymbol to setpublic String getCurrencySymbol()
ValueMetaInterface
getCurrencySymbol
in interface ValueMetaInterface
public void setCurrencySymbol(String currencySymbol)
ValueMetaInterface
setCurrencySymbol
in interface ValueMetaInterface
currencySymbol
- the currencySymbol to setpublic boolean isCaseInsensitive()
ValueMetaInterface
isCaseInsensitive
in interface ValueMetaInterface
public void setCaseInsensitive(boolean caseInsensitive)
ValueMetaInterface
setCaseInsensitive
in interface ValueMetaInterface
caseInsensitive
- the caseInsensitive to setpublic boolean isSortedDescending()
ValueMetaInterface
isSortedDescending
in interface ValueMetaInterface
public void setSortedDescending(boolean sortedDescending)
ValueMetaInterface
setSortedDescending
in interface ValueMetaInterface
sortedDescending
- the sortedDescending to setpublic boolean isOutputPaddingEnabled()
ValueMetaInterface
isOutputPaddingEnabled
in interface ValueMetaInterface
public void setOutputPaddingEnabled(boolean outputPaddingEnabled)
ValueMetaInterface
setOutputPaddingEnabled
in interface ValueMetaInterface
outputPaddingEnabled
- Set to true if output padding is to be enabled (padding to specified length)public boolean isLargeTextField()
ValueMetaInterface
isLargeTextField
in interface ValueMetaInterface
public void setLargeTextField(boolean largeTextField)
ValueMetaInterface
setLargeTextField
in interface ValueMetaInterface
largeTextField
- Set to true if this is to be a large text field (CLOB, TEXT) with arbitrary length.public boolean isDateFormatLenient()
ValueMetaInterface
ValueMetaInterface.setDateFormatLenient(boolean)
isDateFormatLenient
in interface ValueMetaInterface
public void setDateFormatLenient(boolean dateFormatLenient)
ValueMetaInterface
15 - (December = 12) = 3 = March.Set to false for stricter formatting validation.
setDateFormatLenient
in interface ValueMetaInterface
dateFormatLenient
- the dateFormatLenient to setpublic Locale getDateFormatLocale()
ValueMetaInterface
getDateFormatLocale
in interface ValueMetaInterface
public void setDateFormatLocale(Locale dateFormatLocale)
ValueMetaInterface
setDateFormatLocale
in interface ValueMetaInterface
dateFormatLocale
- the dateFormatLocale to setpublic SimpleDateFormat getDateFormat()
ValueMetaInterface
getDateFormat
in interface ValueMetaInterface
public DecimalFormat getDecimalFormat()
ValueMetaInterface
getDecimalFormat
in interface ValueMetaInterface
public DecimalFormat getDecimalFormat(boolean useBigDecimal)
ValueMetaInterface
getDecimalFormat
in interface ValueMetaInterface
useBigDecimal
- the use big decimalpublic Object convertToNormalStorageType(Object object) throws KettleValueException
convertToNormalStorageType
in interface ValueMetaInterface
object
- the data object to convertKettleValueException
- In case there is a data conversion error.public Object convertToBinaryStringStorageType(Object object) throws KettleValueException
convertToBinaryStringStorageType
in interface ValueMetaInterface
object
- the data object to convertKettleValueException
- In case there is a data conversion error.public Object convertBinaryStringToNativeType(byte[] binary) throws KettleValueException
convertBinaryStringToNativeType
in interface ValueMetaInterface
binary
- KettleValueException
public Object convertNormalStorageTypeToBinaryString(Object object) throws KettleValueException
ValueMetaInterface
convertNormalStorageTypeToBinaryString
in interface ValueMetaInterface
object
- The object expressed in a normal storage typeKettleValueException
- in case there is a data conversion errorpublic Object cloneValueData(Object object) throws KettleValueException
cloneValueData
in interface ValueMetaInterface
object
- the objectKettleValueException
- the kettle value exceptionpublic String getCompatibleString(Object object) throws KettleValueException
ValueMetaInterface
getCompatibleString
in interface ValueMetaInterface
KettleValueException
public String getString(Object object) throws KettleValueException
ValueMetaInterface
getString
in interface ValueMetaInterface
KettleValueException
public Double getNumber(Object object) throws KettleValueException
ValueMetaInterface
getNumber
in interface ValueMetaInterface
KettleValueException
public Long getInteger(Object object) throws KettleValueException
ValueMetaInterface
getInteger
in interface ValueMetaInterface
KettleValueException
public BigDecimal getBigNumber(Object object) throws KettleValueException
ValueMetaInterface
getBigNumber
in interface ValueMetaInterface
KettleValueException
public Boolean getBoolean(Object object) throws KettleValueException
ValueMetaInterface
getBoolean
in interface ValueMetaInterface
KettleValueException
public Date getDate(Object object) throws KettleValueException
ValueMetaInterface
getDate
in interface ValueMetaInterface
KettleValueException
public byte[] getBinary(Object object) throws KettleValueException
ValueMetaInterface
getBinary
in interface ValueMetaInterface
KettleValueException
public byte[] getBinaryString(Object object) throws KettleValueException
ValueMetaInterface
getBinaryString
in interface ValueMetaInterface
KettleValueException
public boolean isString()
isString
in interface ValueMetaInterface
public boolean isDate()
isDate
in interface ValueMetaInterface
public boolean isBigNumber()
isBigNumber
in interface ValueMetaInterface
public boolean isNumber()
isNumber
in interface ValueMetaInterface
public boolean isBoolean()
isBoolean
in interface ValueMetaInterface
public boolean isSerializableType()
isSerializableType
in interface ValueMetaInterface
public boolean isBinary()
isBinary
in interface ValueMetaInterface
public boolean isInteger()
isInteger
in interface ValueMetaInterface
public boolean isNumeric()
isNumeric
in interface ValueMetaInterface
public static final boolean isNumeric(int t)
t
- the type to checkpublic boolean isSortedAscending()
public String getTypeDesc()
getTypeDesc
in interface ValueMetaInterface
public String getStorageTypeDesc()
public String toStringMeta()
toStringMeta
in interface ValueMetaInterface
public void writeData(DataOutputStream outputStream, Object object) throws KettleFileException
ValueMetaInterface
writeData
in interface ValueMetaInterface
outputStream
- the outputstream to write toobject
- the data object to serializeKettleFileException
- in case a I/O error occurspublic Object readData(DataInputStream inputStream) throws KettleFileException, KettleEOFException, SocketTimeoutException
ValueMetaInterface
readData
in interface ValueMetaInterface
inputStream
- the input stream to read fromKettleFileException
- in case a I/O error occursKettleEOFException
- When we have read all the data there is to readSocketTimeoutException
- In case there is a timeout (when set on a socket) during readingpublic void writeMeta(DataOutputStream outputStream) throws KettleFileException
ValueMetaInterface
writeMeta
in interface ValueMetaInterface
outputStream
- the outputstream to write toKettleFileException
- in case a I/O error occurspublic void readMetaData(DataInputStream inputStream) throws KettleFileException, KettleEOFException
readMetaData
in interface ValueMetaInterface
inputStream
- the input stream to read fromKettleFileException
- In case there was a IO problemKettleEOFException
- If we reached the end of the streampublic String getMetaXML() throws IOException
ValueMetaInterface
getMetaXML
in interface ValueMetaInterface
IOException
- Thrown in case there is an (Base64/GZip) decoding problempublic String getDataXML(Object object) throws IOException
ValueMetaInterface
getDataXML
in interface ValueMetaInterface
object
- The data to serialize as XMLIOException
- Thrown in case there is an (Base64/GZip) decoding problempublic Object getValue(Node node) throws KettleException
getValue
in interface ValueMetaInterface
node
- the node to retrieve the data value fromIOException
- thrown in case there is a problem with the XML to object conversionKettleException
- thrown in case there is a problem with the XML to object conversionpublic static final String[] getTypes()
public static final String[] getAllTypes()
public static final String getTypeDesc(int type)
type
- the typepublic static final int getType(String desc)
desc
- The description of the type to convertpublic static final int getStorageType(String desc)
desc
- The description of the storage type to convertpublic static final String getStorageTypeCode(int storageType)
public boolean isNull(Object data) throws KettleValueException
isNull
in interface ValueMetaInterface
data
- the object to testKettleValueException
- in case there is a conversion error (only thrown in case of lazy conversion)public int compare(Object data1, Object data2) throws KettleValueException
compare
in interface ValueMetaInterface
data1
- the first valuedata2
- the second valueKettleValueException
- In case we get conversion errorspublic int compare(Object data1, ValueMetaInterface meta2, Object data2) throws KettleValueException
compare
in interface ValueMetaInterface
data1
- the first valuemeta2
- the second value's metadatadata2
- the second valueKettleValueException
- In case we get conversion errorspublic Object convertData(ValueMetaInterface meta2, Object data2) throws KettleValueException
convertData
in interface ValueMetaInterface
meta2
- the metadata of the object to be converteddata2
- the data of the object to be convertedKettleValueException
- in case there is a data conversion errorpublic Object convertDataCompatible(ValueMetaInterface meta2, Object data2) throws KettleValueException
convertDataCompatible
in interface ValueMetaInterface
meta2
- the metadata of the object to be converteddata2
- the data of the object to be convertedKettleValueException
- in case there is a data conversion errorpublic Object convertDataUsingConversionMetaData(Object data) throws KettleValueException
convertDataUsingConversionMetaData
in interface ValueMetaInterface
data
- The dataKettleValueException
- in case there is a conversion error.public Object convertDataFromString(String pol, ValueMetaInterface convertMeta, String nullIf, String ifNull, int trim_type) throws KettleValueException
convertDataFromString
in interface ValueMetaInterface
pol
- the string to be convertedconvertMeta
- the metadata of the object (only string type) to be convertednullIf
- set the object to null if pos equals nullif (IgnoreCase)ifNull
- set the object to ifNull when pol is empty or nulltrim_type
- the trim type to be used (ValueMetaInterface.TRIM_TYPE_XXX)KettleValueException
- in case there is a data conversion errorpublic int hashCode(Object object) throws KettleValueException
hashCode
in interface ValueMetaInterface
object
- the data value to calculate a hashcode forKettleValueException
public Value createOriginalValue(Object data) throws KettleValueException
createOriginalValue
in interface ValueMetaInterface
data
- the data to store in the valueKettleValueException
- case there is a data conversion problempublic Object getValueData(Value value) throws KettleValueException
getValueData
in interface ValueMetaInterface
value
- the old style Value objectKettleValueException
- case there is a data conversion problempublic ValueMetaInterface getStorageMetadata()
ValueMetaInterface
getStorageMetadata
in interface ValueMetaInterface
public void setStorageMetadata(ValueMetaInterface storageMetadata)
ValueMetaInterface
setStorageMetadata
in interface ValueMetaInterface
storageMetadata
- the storageMetadata to setpublic int getTrimType()
ValueMetaInterface
getTrimType
in interface ValueMetaInterface
public void setTrimType(int trimType)
ValueMetaInterface
setTrimType
in interface ValueMetaInterface
trimType
- the trimType to setpublic static final int getTrimTypeByCode(String tt)
public static final int getTrimTypeByDesc(String tt)
public static final String getTrimTypeCode(int i)
public static final String getTrimTypeDesc(int i)
public ValueMetaInterface getConversionMetadata()
ValueMetaInterface
getConversionMetadata
in interface ValueMetaInterface
public void setConversionMetadata(ValueMetaInterface conversionMetadata)
ValueMetaInterface
setConversionMetadata
in interface ValueMetaInterface
conversionMetadata
- the conversionMetadata to setpublic boolean isSingleByteEncoding()
isSingleByteEncoding
in interface ValueMetaInterface
public long getNumberOfBinaryStringConversions()
ValueMetaInterface
getNumberOfBinaryStringConversions
in interface ValueMetaInterface
public void setNumberOfBinaryStringConversions(long numberOfBinaryStringConversions)
ValueMetaInterface
setNumberOfBinaryStringConversions
in interface ValueMetaInterface
numberOfBinaryStringConversions
- the number of binary string to native data type done with this object conversions to setpublic boolean isOriginalAutoIncrement()
ValueMetaInterface
isOriginalAutoIncrement
in interface ValueMetaInterface
public void setOriginalAutoIncrement(boolean originalAutoIncrement)
ValueMetaInterface
setOriginalAutoIncrement
in interface ValueMetaInterface
originalAutoIncrement
- the new original auto incrementpublic int getOriginalColumnType()
ValueMetaInterface
getOriginalColumnType
in interface ValueMetaInterface
ResultSetMetaData
public void setOriginalColumnType(int originalColumnType)
ValueMetaInterface
setOriginalColumnType
in interface ValueMetaInterface
originalColumnType
- the new original column typepublic String getOriginalColumnTypeName()
ValueMetaInterface
getOriginalColumnTypeName
in interface ValueMetaInterface
public void setOriginalColumnTypeName(String originalColumnTypeName)
ValueMetaInterface
setOriginalColumnTypeName
in interface ValueMetaInterface
originalColumnTypeName
- the new original column type namepublic int isOriginalNullable()
ValueMetaInterface
isOriginalNullable
in interface ValueMetaInterface
public void setOriginalNullable(int originalNullable)
ValueMetaInterface
setOriginalNullable
in interface ValueMetaInterface
originalNullable
- the new original nullablepublic int getOriginalPrecision()
ValueMetaInterface
getOriginalPrecision
in interface ValueMetaInterface
public void setOriginalPrecision(int originalPrecision)
ValueMetaInterface
setOriginalPrecision
in interface ValueMetaInterface
originalPrecision
- the new original precisionpublic int getOriginalScale()
ValueMetaInterface
getOriginalScale
in interface ValueMetaInterface
public void setOriginalScale(int originalScale)
ValueMetaInterface
setOriginalScale
in interface ValueMetaInterface
originalScale
- the new original scalepublic boolean isOriginalSigned()
ValueMetaInterface
isOriginalSigned
in interface ValueMetaInterface
public void setOriginalSigned(boolean originalSigned)
ValueMetaInterface
setOriginalSigned
in interface ValueMetaInterface
originalSigned
- the new original signedpublic boolean isBigNumberFormatting()
public void setBigNumberFormatting(boolean bigNumberFormatting)
bigNumberFormatting
- the bigNumberFormatting flag to set : true if BigNumbers of formatted as wellpublic static String[] getTrimTypeCodes()
public static String[] getTrimTypeDescriptions()
public boolean requiresRealClone()
ValueMetaInterface
requiresRealClone
in interface ValueMetaInterface
public boolean isLenientStringToNumber()
isLenientStringToNumber
in interface ValueMetaInterface
public void setLenientStringToNumber(boolean lenientStringToNumber)
setLenientStringToNumber
in interface ValueMetaInterface
lenientStringToNumber
- the lenientStringToNumber to setpublic TimeZone getDateFormatTimeZone()
getDateFormatTimeZone
in interface ValueMetaInterface
public void setDateFormatTimeZone(TimeZone dateFormatTimeZone)
setDateFormatTimeZone
in interface ValueMetaInterface
dateFormatTimeZone
- the date format time zone to setpublic void drawValue(PrimitiveGCInterface gc, Object value) throws KettleValueException
ValueMetaInterface
drawValue
in interface ValueMetaInterface
gc
- The graphical context to draw on.KettleValueException
public ValueMetaInterface getValueFromSQLType(DatabaseMeta databaseMeta, String name, ResultSetMetaData rm, int index, boolean ignoreLength, boolean lazyConversion) throws KettleDatabaseException
ValueMetaInterface
getValueFromSQLType
in interface ValueMetaInterface
databaseMeta
- the database metadata to reference capabilities and so on.name
- The name of the new valuerm
- The result metadata to investigateindex
- The index to look at (1-based)ignoreLength
- Don't look at the lengthlazyConversion
- use lazy conversionKettleDatabaseException
- In case something went wrong.public Object getValueFromResultSet(DatabaseInterface databaseInterface, ResultSet resultSet, int index) throws KettleDatabaseException
getValueFromResultSet
in interface ValueMetaInterface
databaseInterface
- the database metadata to useresultSet
- The JDBC result set to read fromindex
- The column index (1-based)KettleDatabaseException
- in case something goes wrong.public void setPreparedStatementValue(DatabaseMeta databaseMeta, PreparedStatement preparedStatement, int index, Object data) throws KettleDatabaseException
ValueMetaInterface
setPreparedStatementValue
in interface ValueMetaInterface
databaseMeta
- the database metadata to referencepreparedStatement
- The prepared statementindex
- the column index (1-based)data
- the value to setKettleDatabaseException
- in case something goes wrongpublic Object getNativeDataType(Object object) throws KettleValueException
ValueMetaInterface
getNativeDataType
in interface ValueMetaInterface
object
- The input dataKettleValueException
- in case there is an unexpected data conversion error.public String getDatabaseColumnTypeDefinition(DatabaseInterface databaseInterface, String tk, String pk, boolean use_autoinc, boolean add_fieldname, boolean add_cr)
ValueMetaInterface
getDatabaseColumnTypeDefinition
in interface ValueMetaInterface
databaseInterface
- The database type/dialect to get the column type definition fortk
- Is this a technical key field?pk
- Is this a primary key field?use_autoinc
- Use auto-increment?add_fieldname
- add the fieldname to the column type definition?add_cr
- add a cariage return to the string?