Interface SettableByNameData<T extends SettableData<T>>

  • All Known Subinterfaces:
    SettableData<T>
    All Known Implementing Classes:
    UDTValue

    public interface SettableByNameData<T extends SettableData<T>>
    Collection of (typed) CQL values that can set by name.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      <V> T set​(java.lang.String name, V v, com.google.common.reflect.TypeToken<V> targetType)
      Sets the value for (all occurrences of) variable name to the provided value of the provided Java type.
      <V> T set​(java.lang.String name, V v, java.lang.Class<V> targetClass)
      Sets the value for (all occurrences of) variable name to the provided value of the provided Java class.
      <V> T set​(java.lang.String name, V v, TypeCodec<V> codec)
      Sets the value for (all occurrences of) variable name to the provided value, converted using the given TypeCodec.
      T setBool​(java.lang.String name, boolean v)
      Sets the value for (all occurrences of) variable name to the provided boolean.
      T setByte​(java.lang.String name, byte v)
      Sets the value for (all occurrences of) variable name to the provided byte.
      T setBytes​(java.lang.String name, java.nio.ByteBuffer v)
      Sets the value for (all occurrences of) variable name to the provided byte buffer.
      T setBytesUnsafe​(java.lang.String name, java.nio.ByteBuffer v)
      Sets the value for (all occurrences of) variable name to the provided byte buffer.
      T setDate​(java.lang.String name, LocalDate v)
      Sets the value for (all occurrences of) variable name to the provided date (without time).
      T setDecimal​(java.lang.String name, java.math.BigDecimal v)
      Sets the value for (all occurrences of) variable name to the provided big decimal.
      T setDouble​(java.lang.String name, double v)
      Sets the value for (all occurrences of) variable name to the provided double.
      T setFloat​(java.lang.String name, float v)
      Sets the value for (all occurrences of) variable name to the provided float.
      T setInet​(java.lang.String name, java.net.InetAddress v)
      Sets the value for (all occurrences of) variable name to the provided inet address.
      T setInt​(java.lang.String name, int v)
      Sets the value for (all occurrences of) variable name to the provided integer.
      <E> T setList​(java.lang.String name, java.util.List<E> v)
      Sets the value for (all occurrences of) variable name to the provided list.
      <E> T setList​(java.lang.String name, java.util.List<E> v, com.google.common.reflect.TypeToken<E> elementsType)
      Sets the value for (all occurrences of) variable name to the provided list, which elements are of the provided Java type.
      <E> T setList​(java.lang.String name, java.util.List<E> v, java.lang.Class<E> elementsClass)
      Sets the value for (all occurrences of) variable name to the provided list, which elements are of the provided Java class.
      T setLong​(java.lang.String name, long v)
      Sets the value for (all occurrences of) variable name to the provided long.
      <K,​V>
      T
      setMap​(java.lang.String name, java.util.Map<K,​V> v)
      Sets the value for (all occurrences of) variable name to the provided map.
      <K,​V>
      T
      setMap​(java.lang.String name, java.util.Map<K,​V> v, com.google.common.reflect.TypeToken<K> keysType, com.google.common.reflect.TypeToken<V> valuesType)
      Sets the value for (all occurrences of) variable name to the provided map, which keys and values are of the provided Java types.
      <K,​V>
      T
      setMap​(java.lang.String name, java.util.Map<K,​V> v, java.lang.Class<K> keysClass, java.lang.Class<V> valuesClass)
      Sets the value for (all occurrences of) variable name to the provided map, which keys and values are of the provided Java classes.
      <E> T setSet​(java.lang.String name, java.util.Set<E> v)
      Sets the value for (all occurrences of) variable name to the provided set.
      <E> T setSet​(java.lang.String name, java.util.Set<E> v, com.google.common.reflect.TypeToken<E> elementsType)
      Sets the value for (all occurrences of) variable name to the provided set, which elements are of the provided Java type.
      <E> T setSet​(java.lang.String name, java.util.Set<E> v, java.lang.Class<E> elementsClass)
      Sets the value for (all occurrences of) variable name to the provided set, which elements are of the provided Java class.
      T setShort​(java.lang.String name, short v)
      Sets the value for (all occurrences of) variable name to the provided short.
      T setString​(java.lang.String name, java.lang.String v)
      Sets the value for (all occurrences of) variable name to the provided string.
      T setTime​(java.lang.String name, long v)
      Sets the value for (all occurrences of) variable name to the provided time as a long in nanoseconds since midnight.
      T setTimestamp​(java.lang.String name, java.util.Date v)
      Sets the value for (all occurrences of) variable name to the provided date.
      T setToNull​(java.lang.String name)
      Sets the value for (all occurrences of) variable name to null.
      T setTupleValue​(java.lang.String name, TupleValue v)
      Sets the value for (all occurrences of) variable name to the provided tuple value.
      T setUDTValue​(java.lang.String name, UDTValue v)
      Sets the value for (all occurrences of) variable name to the provided UDT value.
      T setUUID​(java.lang.String name, java.util.UUID v)
      Sets the value for (all occurrences of) variable name to the provided UUID.
      T setVarint​(java.lang.String name, java.math.BigInteger v)
      Sets the value for (all occurrences of) variable name to the provided big integer.
    • Method Detail

      • setBool

        T setBool​(java.lang.String name,
                  boolean v)
        Sets the value for (all occurrences of) variable name to the provided boolean.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type boolean, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. To set the value to NULL, use setToNull(String) or set(name, v, Boolean.class).
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setByte

        T setByte​(java.lang.String name,
                  byte v)
        Sets the value for (all occurrences of) variable name to the provided byte.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type tinyint, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. To set the value to NULL, use setToNull(String) or set(name, v, Byte.class).
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setShort

        T setShort​(java.lang.String name,
                   short v)
        Sets the value for (all occurrences of) variable name to the provided short.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type smallint, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. To set the value to NULL, use setToNull(String) or set(name, v, Short.class).
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setInt

        T setInt​(java.lang.String name,
                 int v)
        Sets the value for (all occurrences of) variable name to the provided integer.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type int, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. To set the value to NULL, use setToNull(String) or set(name, v, Integer.class).
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setLong

        T setLong​(java.lang.String name,
                  long v)
        Sets the value for (all occurrences of) variable name to the provided long.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type bigint, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. To set the value to NULL, use setToNull(String) or set(name, v, Long.class).
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setTimestamp

        T setTimestamp​(java.lang.String name,
                       java.util.Date v)
        Sets the value for (all occurrences of) variable name to the provided date.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type timestamp, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setDate

        T setDate​(java.lang.String name,
                  LocalDate v)
        Sets the value for (all occurrences of) variable name to the provided date (without time).

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type date, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setTime

        T setTime​(java.lang.String name,
                  long v)
        Sets the value for (all occurrences of) variable name to the provided time as a long in nanoseconds since midnight.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type time, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setFloat

        T setFloat​(java.lang.String name,
                   float v)
        Sets the value for (all occurrences of) variable name to the provided float.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type float, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. To set the value to NULL, use setToNull(String) or set(name, v, Float.class).
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setDouble

        T setDouble​(java.lang.String name,
                    double v)
        Sets the value for (all occurrences of) variable name to the provided double.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type double, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. To set the value to NULL, use setToNull(String) or set(name, v, Double.class).
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setString

        T setString​(java.lang.String name,
                    java.lang.String v)
        Sets the value for (all occurrences of) variable name to the provided string.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL types text, varchar and ascii, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setBytes

        T setBytes​(java.lang.String name,
                   java.nio.ByteBuffer v)
        Sets the value for (all occurrences of) variable name to the provided byte buffer.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type blob, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setBytesUnsafe

        T setBytesUnsafe​(java.lang.String name,
                         java.nio.ByteBuffer v)
        Sets the value for (all occurrences of) variable name to the provided byte buffer.

        This method does not use any codec; it sets the value in its binary form directly. If you insert data that is not compatible with the underlying CQL type, you will get an InvalidQueryException at execute time.

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
      • setVarint

        T setVarint​(java.lang.String name,
                    java.math.BigInteger v)
        Sets the value for (all occurrences of) variable name to the provided big integer.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type varint, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setDecimal

        T setDecimal​(java.lang.String name,
                     java.math.BigDecimal v)
        Sets the value for (all occurrences of) variable name to the provided big decimal.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type decimal, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setUUID

        T setUUID​(java.lang.String name,
                  java.util.UUID v)
        Sets the value for (all occurrences of) variable name to the provided UUID.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL types uuid and timeuuid, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setInet

        T setInet​(java.lang.String name,
                  java.net.InetAddress v)
        Sets the value for (all occurrences of) variable name to the provided inet address.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (for CQL type inet, this will be the built-in codec).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setList

        <E> T setList​(java.lang.String name,
                      java.util.List<E> v)
        Sets the value for (all occurrences of) variable name to the provided list.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (the type of the elements in the Java list is not considered). If two or more codecs target that CQL type, the one that was first registered will be used. For this reason, it is generally preferable to use the more deterministic methods setList(String, List, Class) or setList(String, List, TypeToken).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. Note that null values inside collections are not supported by CQL.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setList

        <E> T setList​(java.lang.String name,
                      java.util.List<E> v,
                      java.lang.Class<E> elementsClass)
        Sets the value for (all occurrences of) variable name to the provided list, which elements are of the provided Java class.

        This method uses the CodecRegistry to find a codec to handle the conversion of lists of the given Java type to the underlying CQL type.

        If the type of the elements is generic, use setList(String, List, TypeToken).

        Parameters:
        name - the name of the value to set; if name is present multiple
        v - the value to set. Note that null values inside collections are not supported by CQL.
        elementsClass - the class for the elements of the list.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setList

        <E> T setList​(java.lang.String name,
                      java.util.List<E> v,
                      com.google.common.reflect.TypeToken<E> elementsType)
        Sets the value for (all occurrences of) variable name to the provided list, which elements are of the provided Java type.

        This method uses the CodecRegistry to find a codec to handle the conversion of lists of the given Java type to the underlying CQL type.

        Parameters:
        name - the name of the value to set; if name is present multiple
        v - the value to set. Note that null values inside collections are not supported by CQL.
        elementsType - the type for the elements of the list.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setMap

        <K,​V> T setMap​(java.lang.String name,
                             java.util.Map<K,​V> v)
        Sets the value for (all occurrences of) variable name to the provided map.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (the type of the elements in the Java map is not considered). If two or more codecs target that CQL type, the one that was first registered will be used. For this reason, it is generally preferable to use the more deterministic methods setMap(String, Map, Class, Class) or setMap(String, Map, TypeToken, TypeToken).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. Note that null values inside collections are not supported by CQL.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setMap

        <K,​V> T setMap​(java.lang.String name,
                             java.util.Map<K,​V> v,
                             java.lang.Class<K> keysClass,
                             java.lang.Class<V> valuesClass)
        Sets the value for (all occurrences of) variable name to the provided map, which keys and values are of the provided Java classes.

        This method uses the CodecRegistry to find a codec to handle the conversion of lists of the given Java types to the underlying CQL type.

        If the type of the keys or values is generic, use setMap(String, Map, TypeToken, TypeToken).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. Note that null values inside collections are not supported by CQL.
        keysClass - the class for the keys of the map.
        valuesClass - the class for the values of the map.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setMap

        <K,​V> T setMap​(java.lang.String name,
                             java.util.Map<K,​V> v,
                             com.google.common.reflect.TypeToken<K> keysType,
                             com.google.common.reflect.TypeToken<V> valuesType)
        Sets the value for (all occurrences of) variable name to the provided map, which keys and values are of the provided Java types.

        This method uses the CodecRegistry to find a codec to handle the conversion of lists of the given Java types to the underlying CQL type.

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. Note that null values inside collections are not supported by CQL.
        keysType - the type for the keys of the map.
        valuesType - the type for the values of the map.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setSet

        <E> T setSet​(java.lang.String name,
                     java.util.Set<E> v)
        Sets the value for (all occurrences of) variable name to the provided set.

        This method uses the CodecRegistry to find a codec to handle the conversion to the underlying CQL type (the type of the elements in the Java set is not considered). If two or more codecs target that CQL type, the one that was first registered will be used. For this reason, it is generally preferable to use the more deterministic methods setSet(String, Set, Class) or setSet(String, Set, TypeToken).

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set. Note that null values inside collections are not supported by CQL.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setSet

        <E> T setSet​(java.lang.String name,
                     java.util.Set<E> v,
                     java.lang.Class<E> elementsClass)
        Sets the value for (all occurrences of) variable name to the provided set, which elements are of the provided Java class.

        This method uses the CodecRegistry to find a codec to handle the conversion of sets of the given Java type to the underlying CQL type.

        If the type of the elements is generic, use setSet(String, Set, TypeToken).

        Parameters:
        name - the name of the value to set; if name is present multiple
        v - the value to set. Note that null values inside collections are not supported by CQL.
        elementsClass - the class for the elements of the set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setSet

        <E> T setSet​(java.lang.String name,
                     java.util.Set<E> v,
                     com.google.common.reflect.TypeToken<E> elementsType)
        Sets the value for (all occurrences of) variable name to the provided set, which elements are of the provided Java type.

        This method uses the CodecRegistry to find a codec to handle the conversion of sets of the given Java type to the underlying CQL type.

        Parameters:
        name - the name of the value to set; if name is present multiple
        v - the value to set. Note that null values inside collections are not supported by CQL.
        elementsType - the type for the elements of the set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        java.lang.NullPointerException - if v contains null values. Nulls are not supported in collections by CQL.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setUDTValue

        T setUDTValue​(java.lang.String name,
                      UDTValue v)
        Sets the value for (all occurrences of) variable name to the provided UDT value.

        This method uses the CodecRegistry to find a codec to handle the conversion of UDTValue to the underlying CQL type.

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setTupleValue

        T setTupleValue​(java.lang.String name,
                        TupleValue v)
        Sets the value for (all occurrences of) variable name to the provided tuple value.

        This method uses the CodecRegistry to find a codec to handle the conversion of TupleValue to the underlying CQL type.

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • setToNull

        T setToNull​(java.lang.String name)
        Sets the value for (all occurrences of) variable name to null.

        This is mainly intended for CQL types which map to native Java types.

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
      • set

        <V> T set​(java.lang.String name,
                  V v,
                  java.lang.Class<V> targetClass)
        Sets the value for (all occurrences of) variable name to the provided value of the provided Java class.

        This method uses the CodecRegistry to find a codec to handle the conversion of the provided Java class to the underlying CQL type.

        If the Java type is generic, use set(String, Object, TypeToken) instead.

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set; may be null.
        targetClass - The Java class to convert to; must not be null;
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • set

        <V> T set​(java.lang.String name,
                  V v,
                  com.google.common.reflect.TypeToken<V> targetType)
        Sets the value for (all occurrences of) variable name to the provided value of the provided Java type.

        This method uses the CodecRegistry to find a codec to handle the conversion of the provided Java type to the underlying CQL type.

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set; may be null.
        targetType - The Java type to convert to; must not be null;
        Returns:
        this object.
        Throws:
        java.lang.IllegalArgumentException - if name is not a valid name for this object.
        CodecNotFoundException - if there is no registered codec to convert the value to the underlying CQL type.
      • set

        <V> T set​(java.lang.String name,
                  V v,
                  TypeCodec<V> codec)
        Sets the value for (all occurrences of) variable name to the provided value, converted using the given TypeCodec.

        This method entirely bypasses the 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 accepts the underlying CQL type; failing to do so may result in InvalidTypeExceptions being thrown.

        Parameters:
        name - the name of the value to set; if name is present multiple times, all its values are set.
        v - the value to set; may be null.
        codec - The TypeCodec to use to serialize the value; may not be null.
        Returns:
        this object.
        Throws:
        InvalidTypeException - if the given codec does not accept the underlying CQL type.
        java.lang.IllegalArgumentException - if name is not a valid name for this object.