Package com.clickhouse.client.data.array
Class ClickHouseByteArrayValue
- java.lang.Object
-
- com.clickhouse.client.data.ClickHouseObjectValue<byte[]>
-
- com.clickhouse.client.data.array.ClickHouseByteArrayValue
-
- All Implemented Interfaces:
ClickHouseValue
,Serializable
public class ClickHouseByteArrayValue extends ClickHouseObjectValue<byte[]>
Wrapper ofbyte[]
.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ClickHouseByteArrayValue(byte[] value)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Object[]
asArray()
Gets value as an object array.<E> E[]
asArray(Class<E> clazz)
Gets value as an array.<K,V>
Map<K,V>asMap(Class<K> keyClass, Class<V> valueClass)
Gets value as a map.String
asString(int length, Charset charset)
Gets value as fixed length(in bytes) string.ClickHouseByteArrayValue
copy(boolean deep)
Gets a copy of this value object.boolean
equals(Object obj)
int
hashCode()
boolean
isNullOrEmpty()
Checks if the value is null, or empty for non-null types like Array, Tuple and Map.static ClickHouseByteArrayValue
of(byte[] value)
Wrap the given value.static ClickHouseByteArrayValue
of(ClickHouseValue ref, byte[] value)
Update value of the given object or create a new instance ifref
is null.static ClickHouseByteArrayValue
ofEmpty()
Creates an empty array.ClickHouseByteArrayValue
resetToNullOrEmpty()
Resets value to null, or empty when null is not supported(e.g.protected ClickHouseByteArrayValue
set(byte[] value)
String
toSqlExpression()
Converts the value to escaped SQL expression.ClickHouseByteArrayValue
update(boolean[] value)
Updates value.ClickHouseByteArrayValue
update(byte value)
Updates value.ClickHouseByteArrayValue
update(byte[] value)
Updates value.ClickHouseByteArrayValue
update(char[] value)
Updates value.ClickHouseByteArrayValue
update(double value)
Updates value.ClickHouseByteArrayValue
update(double[] value)
Updates value.ClickHouseByteArrayValue
update(float value)
Updates value.ClickHouseByteArrayValue
update(float[] value)
Updates value.ClickHouseByteArrayValue
update(int value)
Updates value.ClickHouseByteArrayValue
update(int[] value)
Updates value.ClickHouseByteArrayValue
update(long value)
Updates value.ClickHouseByteArrayValue
update(long[] value)
Updates value.ClickHouseByteArrayValue
update(short value)
Updates value.ClickHouseByteArrayValue
update(short[] value)
Updates value.ClickHouseByteArrayValue
update(ClickHouseValue value)
Updates value.ClickHouseByteArrayValue
update(Enum<?> value)
Updates value.ClickHouseByteArrayValue
update(Object value)
Updates value.ClickHouseByteArrayValue
update(Object[] value)
Updates value.ClickHouseByteArrayValue
update(String value)
Updates value.ClickHouseByteArrayValue
update(BigDecimal value)
Updates value.ClickHouseByteArrayValue
update(BigInteger value)
Updates value.ClickHouseByteArrayValue
update(Inet4Address value)
Updates value.ClickHouseByteArrayValue
update(Inet6Address value)
Updates value.ClickHouseByteArrayValue
update(LocalDate value)
Updates value.ClickHouseByteArrayValue
update(LocalDateTime value)
Updates value.ClickHouseByteArrayValue
update(LocalTime value)
Updates value.ClickHouseByteArrayValue
update(Collection<?> value)
Updates value.ClickHouseByteArrayValue
update(Enumeration<?> value)
Updates value.ClickHouseByteArrayValue
update(Map<?,?> value)
Updates value.ClickHouseByteArrayValue
update(UUID value)
Updates value.ClickHouseValue
updateUnknown(Object value)
Updates value when the type is not supported.-
Methods inherited from class com.clickhouse.client.data.ClickHouseObjectValue
asBigDecimal, asBigInteger, asByte, asDouble, asFloat, asInteger, asLong, asObject, asShort, getValue, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.clickhouse.client.ClickHouseValue
asBigDecimal, asBinary, asBinary, asBinary, asBinary, asBoolean, asByteStream, asCharacter, asCharacterStream, asDate, asDateTime, asDateTime, asEnum, asInet4Address, asInet6Address, asInstant, asInstant, asMap, asObject, asOffsetDateTime, asOffsetDateTime, asString, asString, asString, asTime, asTime, asTuple, asUuid, asZonedDateTime, asZonedDateTime, copy, isInfinity, isNaN, newUnsupportedException, update, update, update, update, update, update, update
-
-
-
-
Method Detail
-
ofEmpty
public static ClickHouseByteArrayValue ofEmpty()
Creates an empty array.- Returns:
- empty array
-
of
public static ClickHouseByteArrayValue of(byte[] value)
Wrap the given value.- Parameters:
value
- value- Returns:
- object representing the value
-
of
public static ClickHouseByteArrayValue of(ClickHouseValue ref, byte[] value)
Update value of the given object or create a new instance ifref
is null.- Parameters:
ref
- object to update, could be nullvalue
- value- Returns:
- same object as
ref
or a new instance if it's null
-
set
protected ClickHouseByteArrayValue set(byte[] value)
- Overrides:
set
in classClickHouseObjectValue<byte[]>
-
asArray
public Object[] asArray()
Description copied from interface:ClickHouseValue
Gets value as an object array.- Returns:
- non-null object array
-
asArray
public <E> E[] asArray(Class<E> clazz)
Description copied from interface:ClickHouseValue
Gets value as an array.- Type Parameters:
E
- type of the element- Parameters:
clazz
- class of the element- Returns:
- non-null array
-
asMap
public <K,V> Map<K,V> asMap(Class<K> keyClass, Class<V> valueClass)
Description copied from interface:ClickHouseValue
Gets value as a map.- Type Parameters:
K
- type of keyV
- type of value- Parameters:
keyClass
- non-null class of keyvalueClass
- non-null class of value- Returns:
- non-null map value
-
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
- Overrides:
asString
in classClickHouseObjectValue<byte[]>
- 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
-
copy
public ClickHouseByteArrayValue copy(boolean deep)
Description copied from interface:ClickHouseValue
Gets a copy of this value object.- Parameters:
deep
- true to create a deep copy; false for a shallow copy- Returns:
- copy of this value object
-
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
- Overrides:
isNullOrEmpty
in classClickHouseObjectValue<byte[]>
- Returns:
- true if the value is null or empty; false otherwise
-
resetToNullOrEmpty
public ClickHouseByteArrayValue 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
- Overrides:
resetToNullOrEmpty
in classClickHouseObjectValue<byte[]>
- 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
- Overrides:
toSqlExpression
in classClickHouseObjectValue<byte[]>
- Returns:
- escaped SQL expression
-
update
public ClickHouseByteArrayValue update(boolean[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(char[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(byte value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(byte[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(short value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(short[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(int value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(int[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(long value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(long[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(float value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(float[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(double value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(double[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(BigInteger value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(BigDecimal value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(Enum<?> value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(Inet4Address value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(Inet6Address value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(LocalDate value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(LocalTime value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(LocalDateTime value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(Collection<?> value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(Enumeration<?> value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(Map<?,?> value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(String value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(UUID value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(ClickHouseValue value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue update(Object[] value)
Description copied from interface:ClickHouseValue
Updates value.- Parameters:
value
- value to update- Returns:
- this object
-
updateUnknown
public ClickHouseValue updateUnknown(Object value)
Description copied from interface:ClickHouseValue
Updates value when the type is not supported. This method will be called at the end ofClickHouseValue.update(Object)
after trying all known classes. By default, it's same asupdate(String.valueOf(value))
.Please avoid to call
ClickHouseValue.update(Object)
here as it will create endless loop.- Parameters:
value
- value to update- Returns:
- this object
-
update
public ClickHouseByteArrayValue 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
- Overrides:
update
in classClickHouseObjectValue<byte[]>
- Parameters:
value
- value to update, could be null- Returns:
- this object
-
equals
public boolean equals(Object obj)
- Overrides:
equals
in classClickHouseObjectValue<byte[]>
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classClickHouseObjectValue<byte[]>
-
-