public interface SettableByName<SelfT extends SettableByName<SelfT>> extends SettableByIndex<SelfT>, AccessibleByName
Modifier and Type | Method and Description |
---|---|
default DataType |
getType(String name)
Returns the CQL type of the value for the first occurrence of
name . |
default <ValueT> SelfT |
set(String name,
ValueT v,
Class<ValueT> targetClass)
Returns the value for the first occurrence of
name , converting it to the given Java
type. |
default <ValueT> SelfT |
set(String name,
ValueT v,
GenericType<ValueT> targetType)
Sets the value for the first occurrence of
name , converting it to the given Java type. |
default <ValueT> SelfT |
set(String name,
ValueT v,
TypeCodec<ValueT> codec)
Sets the value for the first occurrence of
name , using the given codec for the
conversion. |
default SelfT |
setBigDecimal(String name,
BigDecimal v)
Sets the value for the first occurrence of
name to the provided Java big decimal. |
default SelfT |
setBigInteger(String name,
BigInteger v)
Sets the value for the first occurrence of
name to the provided Java big integer. |
default SelfT |
setBoolean(String name,
boolean v)
Sets the value for the first occurrence of
name to the provided Java primitive boolean. |
default SelfT |
setByte(String name,
byte v)
Sets the value for the first occurrence of
name to the provided Java primitive byte. |
default SelfT |
setByteBuffer(String name,
ByteBuffer v)
Sets the value for the first occurrence of
name to the provided Java byte buffer. |
default SelfT |
setBytesUnsafe(String name,
ByteBuffer v)
Sets the raw binary representation of the value for the first occurrence of
name . |
default SelfT |
setCqlDuration(String name,
CqlDuration v)
Sets the value for the first occurrence of
name to the provided duration. |
default SelfT |
setDouble(String name,
double v)
Sets the value for the first occurrence of
name to the provided Java primitive double. |
default SelfT |
setFloat(String name,
float v)
Sets the value for the first occurrence of
name to the provided Java primitive float. |
default SelfT |
setInetAddress(String name,
InetAddress v)
Sets the value for the first occurrence of
name to the provided Java IP address. |
default SelfT |
setInstant(String name,
Instant v)
Sets the value for the first occurrence of
name to the provided Java instant. |
default SelfT |
setInt(String name,
int v)
Sets the value for the first occurrence of
name to the provided Java primitive integer. |
default <ElementT> SelfT |
setList(String name,
List<ElementT> v,
Class<ElementT> elementsClass)
Sets the value for the first occurrence of
name to the provided Java list. |
default SelfT |
setLocalDate(String name,
LocalDate v)
Sets the value for the first occurrence of
name to the provided Java local date. |
default SelfT |
setLocalTime(String name,
LocalTime v)
Sets the value for the first occurrence of
name to the provided Java local time. |
default SelfT |
setLong(String name,
long v)
Sets the value for the first occurrence of
name to the provided Java primitive long. |
default <KeyT,ValueT> |
setMap(String name,
Map<KeyT,ValueT> v,
Class<KeyT> keyClass,
Class<ValueT> valueClass)
Sets the value for the first occurrence of
name to the provided Java map. |
default <ElementT> SelfT |
setSet(String name,
Set<ElementT> v,
Class<ElementT> elementsClass)
Sets the value for the first occurrence of
name to the provided Java set. |
default SelfT |
setShort(String name,
short v)
Sets the value for the first occurrence of
name to the provided Java primitive short. |
default SelfT |
setString(String name,
String v)
Sets the value for the first occurrence of
name to the provided Java string. |
default SelfT |
setToken(String name,
Token v)
Sets the value for the first occurrence of
name to the provided token. |
default SelfT |
setToNull(String name)
Sets the value for the first occurrence of
name to CQL NULL . |
default SelfT |
setTupleValue(String name,
TupleValue v)
Sets the value for the first occurrence of
name to the provided tuple value. |
default SelfT |
setUdtValue(String name,
UdtValue v)
Sets the value for the first occurrence of
name to the provided user defined type
value. |
default SelfT |
setUuid(String name,
UUID v)
Sets the value for the first occurrence of
name to the provided Java UUID. |
set, set, set, setBigDecimal, setBigInteger, setBoolean, setByte, setByteBuffer, setBytesUnsafe, setCqlDuration, setDouble, setFloat, setInetAddress, setInstant, setInt, setList, setLocalDate, setLocalTime, setLong, setMap, setSet, setShort, setString, setToken, setToNull, setTupleValue, setUdtValue, setUuid
firstIndexOf
getType, size
codecRegistry, protocolVersion
@NonNull @CheckReturnValue default SelfT setBytesUnsafe(@NonNull String name, @Nullable ByteBuffer v)
name
.
This is primarily for internal use; you'll likely want to use one of the typed setters instead, to pass a higher-level Java representation.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
v
- the raw value, or null
to set the CQL value NULL
. For performance
reasons, this is the actual instance used internally. If pass in a buffer that you're going
to modify elsewhere in your application, make sure to duplicate
it beforehand. If you change the buffer's index or its contents in any way,
further usage of this data will have unpredictable results.IllegalArgumentException
- if the name is invalid.@NonNull default DataType getType(@NonNull String name)
AccessibleByName
name
.
This method deals with case sensitivity in the way explained in the documentation of GettableByName
.
getType
in interface AccessibleByName
@NonNull @CheckReturnValue default SelfT setToNull(@NonNull String name)
name
to CQL NULL
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default <ValueT> SelfT set(@NonNull String name, @Nullable ValueT v, @NonNull TypeCodec<ValueT> codec)
name
, using the given codec for the
conversion.
This method completely bypasses the Data.codecRegistry()
, and forces the driver to use
the given codec instead. This can be useful if the codec would collide with a previously
registered one, or if you want to use the codec just once without registering it.
It is the caller's responsibility to ensure that the given codec is appropriate for the conversion. Failing to do so will result in errors at runtime.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default <ValueT> SelfT set(@NonNull String name, @Nullable ValueT v, @NonNull GenericType<ValueT> targetType)
name
, converting it to the given Java type.
The Data.codecRegistry()
will be used to look up a codec to handle the conversion.
This variant is for generic Java types. If the target type is not generic, use SettableByIndex.set(int, Object, Class)
instead, which may perform slightly better.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.CodecNotFoundException
- if no codec can perform the conversion.@NonNull @CheckReturnValue default <ValueT> SelfT set(@NonNull String name, @Nullable ValueT v, @NonNull Class<ValueT> targetClass)
name
, converting it to the given Java
type.
The Data.codecRegistry()
will be used to look up a codec to handle the conversion.
If the target type is generic, use SettableByIndex.set(int, Object, GenericType)
instead.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.CodecNotFoundException
- if no codec can perform the conversion.@NonNull @CheckReturnValue default SelfT setBoolean(@NonNull String name, boolean v)
name
to the provided Java primitive boolean.
By default, this works with CQL type boolean
.
To set the value to CQL NULL
, use SettableByIndex.setToNull(int)
, or set(i, v,
Boolean.class)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setByte(@NonNull String name, byte v)
name
to the provided Java primitive byte.
By default, this works with CQL type tinyint
.
To set the value to CQL NULL
, use SettableByIndex.setToNull(int)
, or set(i, v,
Boolean.class)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setDouble(@NonNull String name, double v)
name
to the provided Java primitive double.
By default, this works with CQL type double
.
To set the value to CQL NULL
, use SettableByIndex.setToNull(int)
, or set(i, v,
Double.class)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setFloat(@NonNull String name, float v)
name
to the provided Java primitive float.
By default, this works with CQL type float
.
To set the value to CQL NULL
, use SettableByIndex.setToNull(int)
, or set(i, v,
Float.class)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setInt(@NonNull String name, int v)
name
to the provided Java primitive integer.
By default, this works with CQL type int
.
To set the value to CQL NULL
, use SettableByIndex.setToNull(int)
, or set(i, v,
Integer.class)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setLong(@NonNull String name, long v)
name
to the provided Java primitive long.
By default, this works with CQL types bigint
and counter
.
To set the value to CQL NULL
, use SettableByIndex.setToNull(int)
, or set(i, v,
Long.class)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setShort(@NonNull String name, short v)
name
to the provided Java primitive short.
By default, this works with CQL type smallint
.
To set the value to CQL NULL
, use SettableByIndex.setToNull(int)
, or set(i, v,
Short.class)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setInstant(@NonNull String name, @Nullable Instant v)
name
to the provided Java instant.
By default, this works with CQL type timestamp
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setLocalDate(@NonNull String name, @Nullable LocalDate v)
name
to the provided Java local date.
By default, this works with CQL type date
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setLocalTime(@NonNull String name, @Nullable LocalTime v)
name
to the provided Java local time.
By default, this works with CQL type time
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setByteBuffer(@NonNull String name, @Nullable ByteBuffer v)
name
to the provided Java byte buffer.
By default, this works with CQL type blob
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setString(@NonNull String name, @Nullable String v)
name
to the provided Java string.
By default, this works with CQL types text
, varchar
and ascii
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setBigInteger(@NonNull String name, @Nullable BigInteger v)
name
to the provided Java big integer.
By default, this works with CQL type varint
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setBigDecimal(@NonNull String name, @Nullable BigDecimal v)
name
to the provided Java big decimal.
By default, this works with CQL type decimal
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setUuid(@NonNull String name, @Nullable UUID v)
name
to the provided Java UUID.
By default, this works with CQL types uuid
and timeuuid
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setInetAddress(@NonNull String name, @Nullable InetAddress v)
name
to the provided Java IP address.
By default, this works with CQL type inet
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setCqlDuration(@NonNull String name, @Nullable CqlDuration v)
name
to the provided duration.
By default, this works with CQL type duration
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setToken(@NonNull String name, @NonNull Token v)
name
to the provided token.
This works with the CQL type matching the partitioner in use for this cluster: bigint
for Murmur3Partitioner
, blob
for ByteOrderedPartitioner
, and
varint
for RandomPartitioner
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default <ElementT> SelfT setList(@NonNull String name, @Nullable List<ElementT> v, @NonNull Class<ElementT> elementsClass)
name
to the provided Java list.
By default, this works with CQL type list
.
This method is provided for convenience when the element type is a non-generic type. For
more complex list types, use SettableByIndex.set(int, Object, GenericType)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default <ElementT> SelfT setSet(@NonNull String name, @Nullable Set<ElementT> v, @NonNull Class<ElementT> elementsClass)
name
to the provided Java set.
By default, this works with CQL type set
.
This method is provided for convenience when the element type is a non-generic type. For
more complex set types, use SettableByIndex.set(int, Object, GenericType)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default <KeyT,ValueT> SelfT setMap(@NonNull String name, @Nullable Map<KeyT,ValueT> v, @NonNull Class<KeyT> keyClass, @NonNull Class<ValueT> valueClass)
name
to the provided Java map.
By default, this works with CQL type map
.
This method is provided for convenience when the element type is a non-generic type. For
more complex map types, use SettableByIndex.set(int, Object, GenericType)
.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setUdtValue(@NonNull String name, @Nullable UdtValue v)
name
to the provided user defined type
value.
By default, this works with CQL user-defined types.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.@NonNull @CheckReturnValue default SelfT setTupleValue(@NonNull String name, @Nullable TupleValue v)
name
to the provided tuple value.
By default, this works with CQL tuples.
This method deals with case sensitivity in the way explained in the documentation of AccessibleByName
.
IllegalArgumentException
- if the name is invalid.Copyright © 2017–2019. All rights reserved.