Package com.clickhouse.client.data
Class ClickHouseObjectValue<T>
- java.lang.Object
-
- com.clickhouse.client.data.ClickHouseObjectValue<T>
-
- All Implemented Interfaces:
ClickHouseValue
,Serializable
- Direct Known Subclasses:
ClickHouseArrayValue
,ClickHouseBigDecimalValue
,ClickHouseBigIntegerValue
,ClickHouseBitmapValue
,ClickHouseByteArrayValue
,ClickHouseDateTimeValue
,ClickHouseDateValue
,ClickHouseDoubleArrayValue
,ClickHouseFloatArrayValue
,ClickHouseGeoMultiPolygonValue
,ClickHouseGeoPointValue
,ClickHouseGeoPolygonValue
,ClickHouseGeoRingValue
,ClickHouseIntArrayValue
,ClickHouseIpv4Value
,ClickHouseIpv6Value
,ClickHouseLongArrayValue
,ClickHouseMapValue
,ClickHouseNestedValue
,ClickHouseOffsetDateTimeValue
,ClickHouseShortArrayValue
,ClickHouseTupleValue
,ClickHouseUuidValue
public abstract class ClickHouseObjectValue<T> extends Object implements ClickHouseValue
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ClickHouseObjectValue(T value)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BigDecimal
asBigDecimal(int scale)
Gets value asBigDecimal
.BigInteger
asBigInteger()
Gets value asBigInteger
.byte
asByte()
Gets value as byte.double
asDouble()
Gets value as double.float
asFloat()
Gets value as float.int
asInteger()
Gets value as integer.long
asLong()
Gets value as long.Object
asObject()
Gets value as an object.short
asShort()
Gets value as short.String
asString(int length, Charset charset)
Gets value as fixed length(in bytes) string.boolean
equals(Object obj)
T
getValue()
Gets value.int
hashCode()
boolean
isNullOrEmpty()
Checks if the value is null, or empty for non-null types like Array, Tuple and Map.ClickHouseObjectValue<T>
resetToNullOrEmpty()
Resets value to null, or empty when null is not supported(e.g.protected ClickHouseObjectValue<T>
set(T value)
String
toSqlExpression()
Converts the value to escaped SQL expression.String
toString()
ClickHouseValue
update(Object value)
Updates value.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.clickhouse.client.ClickHouseValue
asArray, asArray, asBigDecimal, asBoolean, asByteStream, asCharacter, asCharacterStream, asDate, asDateTime, asDateTime, asEnum, asInet4Address, asInet6Address, asMap, asMap, asObject, asOffsetDateTime, asOffsetDateTime, asString, asString, asString, asTime, asTime, asTuple, asUuid, asZonedDateTime, asZonedDateTime, copy, copy, isInfinity, isNaN, newUnsupportedException, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, update, updateUnknown
-
-
-
-
Constructor Detail
-
ClickHouseObjectValue
protected ClickHouseObjectValue(T value)
-
-
Method Detail
-
set
protected ClickHouseObjectValue<T> set(T value)
-
getValue
public T getValue()
Gets value.- Returns:
- value
-
isNullOrEmpty
public boolean isNullOrEmpty()
Description copied from interface:ClickHouseValue
Checks if the value is null, or empty for non-null types like Array, Tuple and Map.Please pay attention that only nullability will be considered for String, meaning this method will return
false
for an empty string. This is because String is treated as value-based type instead of a container like Array.- Specified by:
isNullOrEmpty
in interfaceClickHouseValue
- Returns:
- true if the value is null or empty; false otherwise
-
asByte
public byte asByte()
Description copied from interface:ClickHouseValue
Gets value as byte.- Specified by:
asByte
in interfaceClickHouseValue
- Returns:
- byte value
-
asShort
public short asShort()
Description copied from interface:ClickHouseValue
Gets value as short.- Specified by:
asShort
in interfaceClickHouseValue
- Returns:
- short value
-
asInteger
public int asInteger()
Description copied from interface:ClickHouseValue
Gets value as integer.- Specified by:
asInteger
in interfaceClickHouseValue
- Returns:
- integer value
-
asLong
public long asLong()
Description copied from interface:ClickHouseValue
Gets value as long.- Specified by:
asLong
in interfaceClickHouseValue
- Returns:
- long value
-
asBigInteger
public BigInteger asBigInteger()
Description copied from interface:ClickHouseValue
Gets value asBigInteger
.- Specified by:
asBigInteger
in interfaceClickHouseValue
- Returns:
- big integer, could be null
-
asFloat
public float asFloat()
Description copied from interface:ClickHouseValue
Gets value as float.- Specified by:
asFloat
in interfaceClickHouseValue
- Returns:
- float value
-
asDouble
public double asDouble()
Description copied from interface:ClickHouseValue
Gets value as double.- Specified by:
asDouble
in interfaceClickHouseValue
- Returns:
- double value
-
asBigDecimal
public BigDecimal asBigDecimal(int scale)
Description copied from interface:ClickHouseValue
Gets value asBigDecimal
.- Specified by:
asBigDecimal
in interfaceClickHouseValue
- Parameters:
scale
- scale of the decimal- Returns:
- big decimal, could be null
-
asObject
public Object asObject()
Description copied from interface:ClickHouseValue
Gets value as an object.- Specified by:
asObject
in interfaceClickHouseValue
- Returns:
- an object representing the value, could be null
-
asString
public String asString(int length, Charset charset)
Description copied from interface:ClickHouseValue
Gets value as fixed length(in bytes) string.- Specified by:
asString
in interfaceClickHouseValue
- Parameters:
length
- byte length of the string, 0 or negative number means unboundedcharset
- charset, null is same as default(UTF-8)- Returns:
- string value, could be null
-
resetToNullOrEmpty
public ClickHouseObjectValue<T> resetToNullOrEmpty()
Description copied from interface:ClickHouseValue
Resets value to null, or empty when null is not supported(e.g. Array, Tuple and Map etc.).Keep in mind that String is value-based type, so this method will change its value to null instead of an empty string.
- Specified by:
resetToNullOrEmpty
in interfaceClickHouseValue
- Returns:
- this object
-
toSqlExpression
public String toSqlExpression()
Description copied from interface:ClickHouseValue
Converts the value to escaped SQL expression. For example, number 123 will be converted to123
, while string "12'3" will be converted to @{code '12\'3'}.- Specified by:
toSqlExpression
in interfaceClickHouseValue
- Returns:
- escaped SQL expression
-
update
public ClickHouseValue update(Object value)
Description copied from interface:ClickHouseValue
Updates value. This method tries to identify type ofvalue
and then use corresponding update method to proceed. Unknown value will be passed toClickHouseValue.updateUnknown(Object)
.- Specified by:
update
in interfaceClickHouseValue
- Parameters:
value
- value to update, could be null- Returns:
- this object
-
-