All Downloads are FREE. Search and download functionalities are using the official Maven repository.

info.archinnov.achilles.generated.dsl.EntityWithComplexIndices_Update Maven / Gradle / Ivy

The newest version!
package info.archinnov.achilles.generated.dsl;

import com.datastax.driver.core.querybuilder.NonEscapingSetAssignment;
import com.datastax.driver.core.querybuilder.NotEq;
import com.datastax.driver.core.querybuilder.QueryBuilder;
import com.datastax.driver.core.querybuilder.Update;
import info.archinnov.achilles.generated.meta.entity.EntityWithComplexIndices_AchillesMeta;
import info.archinnov.achilles.internals.dsl.query.update.AbstractUpdate;
import info.archinnov.achilles.internals.dsl.query.update.AbstractUpdateColumns;
import info.archinnov.achilles.internals.dsl.query.update.AbstractUpdateEnd;
import info.archinnov.achilles.internals.dsl.query.update.AbstractUpdateFrom;
import info.archinnov.achilles.internals.dsl.query.update.AbstractUpdateWhere;
import info.archinnov.achilles.internals.entities.EntityWithComplexIndices;
import info.archinnov.achilles.internals.metamodel.AbstractEntityProperty;
import info.archinnov.achilles.internals.options.CassandraOptions;
import info.archinnov.achilles.internals.runtime.RuntimeEngine;
import info.archinnov.achilles.type.SchemaNameProvider;
import info.archinnov.achilles.validation.Validator;
import java.lang.Class;
import java.lang.Integer;
import java.lang.Long;
import java.lang.Object;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
import org.apache.commons.lang3.ArrayUtils;

public final class EntityWithComplexIndices_Update extends AbstractUpdate {
  protected final EntityWithComplexIndices_AchillesMeta meta;

  protected final Class entityClass = EntityWithComplexIndices.class;

  public EntityWithComplexIndices_Update(RuntimeEngine rte, EntityWithComplexIndices_AchillesMeta meta) {
    super(rte);
    this.meta = meta;
  }

  /**
   * Generate an UPDATE FROM ... */
  public final EntityWithComplexIndices_Update.F fromBaseTable() {
    final String currentKeyspace = meta.getKeyspace().orElse("unknown_keyspace_for_" + meta.entityClass.getCanonicalName());
    final Update.Where where = QueryBuilder.update(currentKeyspace, meta.getTableOrViewName()).where();
    return new EntityWithComplexIndices_Update.F(where, new CassandraOptions());
  }

  /**
   * Generate an UPDATE FROM ... using the given SchemaNameProvider */
  public final EntityWithComplexIndices_Update.F from(final SchemaNameProvider schemaNameProvider) {
    final String currentKeyspace = lookupKeyspace(schemaNameProvider, meta.entityClass);
    final String currentTable = lookupTable(schemaNameProvider, meta.entityClass);
    final Update.Where where = QueryBuilder.update(currentKeyspace, currentTable).where();
    return new EntityWithComplexIndices_Update.F(where, CassandraOptions.withSchemaNameProvider(schemaNameProvider));
  }

  public class Cols extends AbstractUpdateColumns {
    Cols(Update.Where where, CassandraOptions cassandraOptions) {
      super(where, cassandraOptions);
    }

    public final Cols.SimpleIndex simpleIndex() {
      return new Cols.SimpleIndex();
    }

    public final Cols.CollectionIndex collectionIndex() {
      return new Cols.CollectionIndex();
    }

    public final Cols.FullIndexOnCollection fullIndexOnCollection() {
      return new Cols.FullIndexOnCollection();
    }

    public final Cols.IndexOnMapKey indexOnMapKey() {
      return new Cols.IndexOnMapKey();
    }

    public final Cols.IndexOnMapValue indexOnMapValue() {
      return new Cols.IndexOnMapValue();
    }

    public final Cols.IndexOnMapEntry indexOnMapEntry() {
      return new Cols.IndexOnMapEntry();
    }

    public final EntityWithComplexIndices_Update.W_Id where() {
      return new EntityWithComplexIndices_Update.W_Id(where, cassandraOptions);
    }

    public final class SimpleIndex {
      /**
       * Generate an UPDATE FROM ... SET simpleindex = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final String simpleIndex) {
        where.with(NonEscapingSetAssignment.of("simpleindex", QueryBuilder.bindMarker("simpleindex")));
        boundValues.add(simpleIndex);
        encodedValues.add(meta.simpleIndex.encodeFromJava(simpleIndex, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }
    }

    public final class CollectionIndex {
      /**
       * Generate an UPDATE FROM ... SET collectionindex = collectionindex + [?] */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AppendTo(final String collectionIndex_element) {
        where.with(QueryBuilder.appendAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(Arrays.asList(collectionIndex_element));
        encodedValues.add(meta.collectionIndex.encodeFromJava(Arrays.asList(collectionIndex_element), Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = collectionIndex + ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AppendAllTo(final List collectionIndex_element) {
        where.with(QueryBuilder.appendAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = [?] + collectionIndex */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols PrependTo(final String collectionIndex_element) {
        where.with(QueryBuilder.prependAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(Arrays.asList(collectionIndex_element));
        encodedValues.add(meta.collectionIndex.encodeFromJava(Arrays.asList(collectionIndex_element), Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = ? + collectionIndex */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols PrependAllTo(final List collectionIndex_element) {
        where.with(QueryBuilder.prependAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex[index] = ? */
      public final EntityWithComplexIndices_Update.Cols SetAtIndex(final int index, final String collectionIndex_element) {
        where.with(QueryBuilder.setIdx("collectionindex", index, QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.valueProperty.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex[index] = null */
      public final EntityWithComplexIndices_Update.Cols RemoveAtIndex(final int index) {
        where.with(QueryBuilder.setIdx("collectionindex", index, QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(null);
        encodedValues.add(null);
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = collectionIndex - [?] */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveFrom(final String collectionIndex_element) {
        where.with(QueryBuilder.discardAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(Arrays.asList(collectionIndex_element));
        encodedValues.add(meta.collectionIndex.encodeFromJava(Arrays.asList(collectionIndex_element), Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = collectionIndex - ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveAllFrom(final List collectionIndex_element) {
        where.with(QueryBuilder.discardAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final List collectionIndex_element) {
        where.with(NonEscapingSetAssignment.of("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }
    }

    public final class FullIndexOnCollection {
      /**
       * Generate an UPDATE FROM ... SET fullIndexOnCollection = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final Set fullIndexOnCollection_element) {
        where.with(NonEscapingSetAssignment.of("fullindexoncollection", QueryBuilder.bindMarker("fullindexoncollection")));
        boundValues.add(fullIndexOnCollection_element);
        encodedValues.add(meta.fullIndexOnCollection.encodeFromJava(fullIndexOnCollection_element, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }
    }

    public final class IndexOnMapKey {
      /**
       * Generate an UPDATE FROM ... SET indexonmapkey[?] = ? */
      public final EntityWithComplexIndices_Update.Cols PutTo(final String indexOnMapKey_key, final String indexOnMapKey_value) {
        where.with(QueryBuilder.put("indexonmapkey", QueryBuilder.bindMarker("indexOnMapKey_key"), QueryBuilder.bindMarker("indexOnMapKey_value")));
        boundValues.add(indexOnMapKey_key);
        boundValues.add(indexOnMapKey_value);
        encodedValues.add(meta.indexOnMapKey.keyProperty.encodeFromJava(indexOnMapKey_key, Optional.of(cassandraOptions)));
        encodedValues.add(meta.indexOnMapKey.valueProperty.encodeFromJava(indexOnMapKey_value, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapKey = indexOnMapKey + ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AddAllTo(final Map indexOnMapKey) {
        where.with(QueryBuilder.addAll("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapKey[?] = null */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveByKey(final String indexOnMapKey_key) {
        where.with(QueryBuilder.put("indexonmapkey", QueryBuilder.bindMarker("indexOnMapKey_key"), QueryBuilder.bindMarker("indexOnMapKey_value")));
        boundValues.add(indexOnMapKey_key);
        boundValues.add(null);
        encodedValues.add(meta.indexOnMapKey.keyProperty.encodeFromJava(indexOnMapKey_key, Optional.of(cassandraOptions)));
        encodedValues.add(null);
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapKey = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final Map indexOnMapKey) {
        where.with(NonEscapingSetAssignment.of("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }
    }

    public final class IndexOnMapValue {
      /**
       * Generate an UPDATE FROM ... SET indexonmapvalue[?] = ? */
      public final EntityWithComplexIndices_Update.Cols PutTo(final Integer indexOnMapValue_key, final String indexOnMapValue_value) {
        where.with(QueryBuilder.put("indexonmapvalue", QueryBuilder.bindMarker("indexOnMapValue_key"), QueryBuilder.bindMarker("indexOnMapValue_value")));
        boundValues.add(indexOnMapValue_key);
        boundValues.add(indexOnMapValue_value);
        encodedValues.add(meta.indexOnMapValue.keyProperty.encodeFromJava(indexOnMapValue_key, Optional.of(cassandraOptions)));
        encodedValues.add(meta.indexOnMapValue.valueProperty.encodeFromJava(indexOnMapValue_value, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapValue = indexOnMapValue + ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AddAllTo(final Map indexOnMapValue) {
        where.with(QueryBuilder.addAll("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapValue[?] = null */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveByKey(final Integer indexOnMapValue_key) {
        where.with(QueryBuilder.put("indexonmapvalue", QueryBuilder.bindMarker("indexOnMapValue_key"), QueryBuilder.bindMarker("indexOnMapValue_value")));
        boundValues.add(indexOnMapValue_key);
        boundValues.add(null);
        encodedValues.add(meta.indexOnMapValue.keyProperty.encodeFromJava(indexOnMapValue_key, Optional.of(cassandraOptions)));
        encodedValues.add(null);
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapValue = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final Map indexOnMapValue) {
        where.with(NonEscapingSetAssignment.of("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }
    }

    public final class IndexOnMapEntry {
      /**
       * Generate an UPDATE FROM ... SET indexonmapentry[?] = ? */
      public final EntityWithComplexIndices_Update.Cols PutTo(final Integer indexOnMapEntry_key, final String indexOnMapEntry_value) {
        where.with(QueryBuilder.put("indexonmapentry", QueryBuilder.bindMarker("indexOnMapEntry_key"), QueryBuilder.bindMarker("indexOnMapEntry_value")));
        boundValues.add(indexOnMapEntry_key);
        boundValues.add(indexOnMapEntry_value);
        encodedValues.add(meta.indexOnMapEntry.keyProperty.encodeFromJava(indexOnMapEntry_key, Optional.of(cassandraOptions)));
        encodedValues.add(meta.indexOnMapEntry.valueProperty.encodeFromJava(indexOnMapEntry_value, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapEntry = indexOnMapEntry + ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AddAllTo(final Map indexOnMapEntry) {
        where.with(QueryBuilder.addAll("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapEntry[?] = null */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveByKey(final Integer indexOnMapEntry_key) {
        where.with(QueryBuilder.put("indexonmapentry", QueryBuilder.bindMarker("indexOnMapEntry_key"), QueryBuilder.bindMarker("indexOnMapEntry_value")));
        boundValues.add(indexOnMapEntry_key);
        boundValues.add(null);
        encodedValues.add(meta.indexOnMapEntry.keyProperty.encodeFromJava(indexOnMapEntry_key, Optional.of(cassandraOptions)));
        encodedValues.add(null);
        return EntityWithComplexIndices_Update.Cols.this;
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapEntry = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final Map indexOnMapEntry) {
        where.with(NonEscapingSetAssignment.of("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        return EntityWithComplexIndices_Update.Cols.this;
      }
    }
  }

  public class F extends AbstractUpdateFrom {
    F(Update.Where where, CassandraOptions cassandraOptions) {
      super(where, cassandraOptions);
    }

    public final F.SimpleIndex simpleIndex() {
      return new F.SimpleIndex();
    }

    public final F.CollectionIndex collectionIndex() {
      return new F.CollectionIndex();
    }

    public final F.FullIndexOnCollection fullIndexOnCollection() {
      return new F.FullIndexOnCollection();
    }

    public final F.IndexOnMapKey indexOnMapKey() {
      return new F.IndexOnMapKey();
    }

    public final F.IndexOnMapValue indexOnMapValue() {
      return new F.IndexOnMapValue();
    }

    public final F.IndexOnMapEntry indexOnMapEntry() {
      return new F.IndexOnMapEntry();
    }

    public final class SimpleIndex {
      /**
       * Generate an UPDATE FROM ... SET simpleindex = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final String simpleIndex) {
        where.with(NonEscapingSetAssignment.of("simpleindex", QueryBuilder.bindMarker("simpleindex")));
        boundValues.add(simpleIndex);
        encodedValues.add(meta.simpleIndex.encodeFromJava(simpleIndex, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }
    }

    public final class CollectionIndex {
      /**
       * Generate an UPDATE FROM ... SET collectionindex = collectionindex + [?] */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AppendTo(final String collectionIndex_element) {
        where.with(QueryBuilder.appendAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(Arrays.asList(collectionIndex_element));
        encodedValues.add(meta.collectionIndex.encodeFromJava(Arrays.asList(collectionIndex_element), Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = collectionIndex + ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AppendAllTo(final List collectionIndex_element) {
        where.with(QueryBuilder.appendAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = [?] + collectionIndex */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols PrependTo(final String collectionIndex_element) {
        where.with(QueryBuilder.prependAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(Arrays.asList(collectionIndex_element));
        encodedValues.add(meta.collectionIndex.encodeFromJava(Arrays.asList(collectionIndex_element), Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = ? + collectionIndex */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols PrependAllTo(final List collectionIndex_element) {
        where.with(QueryBuilder.prependAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex[index] = ? */
      public final EntityWithComplexIndices_Update.Cols SetAtIndex(final int index, final String collectionIndex_element) {
        where.with(QueryBuilder.setIdx("collectionindex", index, QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.valueProperty.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex[index] = null */
      public final EntityWithComplexIndices_Update.Cols RemoveAtIndex(final int index) {
        where.with(QueryBuilder.setIdx("collectionindex", index, QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(null);
        encodedValues.add(null);
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = collectionIndex - [?] */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveFrom(final String collectionIndex_element) {
        where.with(QueryBuilder.discardAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(Arrays.asList(collectionIndex_element));
        encodedValues.add(meta.collectionIndex.encodeFromJava(Arrays.asList(collectionIndex_element), Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = collectionIndex - ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveAllFrom(final List collectionIndex_element) {
        where.with(QueryBuilder.discardAll("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET collectionIndex = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final List collectionIndex_element) {
        where.with(NonEscapingSetAssignment.of("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        boundValues.add(collectionIndex_element);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex_element, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }
    }

    public final class FullIndexOnCollection {
      /**
       * Generate an UPDATE FROM ... SET fullIndexOnCollection = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final Set fullIndexOnCollection_element) {
        where.with(NonEscapingSetAssignment.of("fullindexoncollection", QueryBuilder.bindMarker("fullindexoncollection")));
        boundValues.add(fullIndexOnCollection_element);
        encodedValues.add(meta.fullIndexOnCollection.encodeFromJava(fullIndexOnCollection_element, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }
    }

    public final class IndexOnMapKey {
      /**
       * Generate an UPDATE FROM ... SET indexonmapkey[?] = ? */
      public final EntityWithComplexIndices_Update.Cols PutTo(final String indexOnMapKey_key, final String indexOnMapKey_value) {
        where.with(QueryBuilder.put("indexonmapkey", QueryBuilder.bindMarker("indexOnMapKey_key"), QueryBuilder.bindMarker("indexOnMapKey_value")));
        boundValues.add(indexOnMapKey_key);
        boundValues.add(indexOnMapKey_value);
        encodedValues.add(meta.indexOnMapKey.keyProperty.encodeFromJava(indexOnMapKey_key, Optional.of(cassandraOptions)));
        encodedValues.add(meta.indexOnMapKey.valueProperty.encodeFromJava(indexOnMapKey_value, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapKey = indexOnMapKey + ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AddAllTo(final Map indexOnMapKey) {
        where.with(QueryBuilder.addAll("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapKey[?] = null */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveByKey(final String indexOnMapKey_key) {
        where.with(QueryBuilder.put("indexonmapkey", QueryBuilder.bindMarker("indexOnMapKey_key"), QueryBuilder.bindMarker("indexOnMapKey_value")));
        boundValues.add(indexOnMapKey_key);
        boundValues.add(null);
        encodedValues.add(meta.indexOnMapKey.keyProperty.encodeFromJava(indexOnMapKey_key, Optional.of(cassandraOptions)));
        encodedValues.add(null);
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapKey = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final Map indexOnMapKey) {
        where.with(NonEscapingSetAssignment.of("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }
    }

    public final class IndexOnMapValue {
      /**
       * Generate an UPDATE FROM ... SET indexonmapvalue[?] = ? */
      public final EntityWithComplexIndices_Update.Cols PutTo(final Integer indexOnMapValue_key, final String indexOnMapValue_value) {
        where.with(QueryBuilder.put("indexonmapvalue", QueryBuilder.bindMarker("indexOnMapValue_key"), QueryBuilder.bindMarker("indexOnMapValue_value")));
        boundValues.add(indexOnMapValue_key);
        boundValues.add(indexOnMapValue_value);
        encodedValues.add(meta.indexOnMapValue.keyProperty.encodeFromJava(indexOnMapValue_key, Optional.of(cassandraOptions)));
        encodedValues.add(meta.indexOnMapValue.valueProperty.encodeFromJava(indexOnMapValue_value, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapValue = indexOnMapValue + ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AddAllTo(final Map indexOnMapValue) {
        where.with(QueryBuilder.addAll("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapValue[?] = null */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveByKey(final Integer indexOnMapValue_key) {
        where.with(QueryBuilder.put("indexonmapvalue", QueryBuilder.bindMarker("indexOnMapValue_key"), QueryBuilder.bindMarker("indexOnMapValue_value")));
        boundValues.add(indexOnMapValue_key);
        boundValues.add(null);
        encodedValues.add(meta.indexOnMapValue.keyProperty.encodeFromJava(indexOnMapValue_key, Optional.of(cassandraOptions)));
        encodedValues.add(null);
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapValue = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final Map indexOnMapValue) {
        where.with(NonEscapingSetAssignment.of("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }
    }

    public final class IndexOnMapEntry {
      /**
       * Generate an UPDATE FROM ... SET indexonmapentry[?] = ? */
      public final EntityWithComplexIndices_Update.Cols PutTo(final Integer indexOnMapEntry_key, final String indexOnMapEntry_value) {
        where.with(QueryBuilder.put("indexonmapentry", QueryBuilder.bindMarker("indexOnMapEntry_key"), QueryBuilder.bindMarker("indexOnMapEntry_value")));
        boundValues.add(indexOnMapEntry_key);
        boundValues.add(indexOnMapEntry_value);
        encodedValues.add(meta.indexOnMapEntry.keyProperty.encodeFromJava(indexOnMapEntry_key, Optional.of(cassandraOptions)));
        encodedValues.add(meta.indexOnMapEntry.valueProperty.encodeFromJava(indexOnMapEntry_value, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapEntry = indexOnMapEntry + ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols AddAllTo(final Map indexOnMapEntry) {
        where.with(QueryBuilder.addAll("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapEntry[?] = null */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols RemoveByKey(final Integer indexOnMapEntry_key) {
        where.with(QueryBuilder.put("indexonmapentry", QueryBuilder.bindMarker("indexOnMapEntry_key"), QueryBuilder.bindMarker("indexOnMapEntry_value")));
        boundValues.add(indexOnMapEntry_key);
        boundValues.add(null);
        encodedValues.add(meta.indexOnMapEntry.keyProperty.encodeFromJava(indexOnMapEntry_key, Optional.of(cassandraOptions)));
        encodedValues.add(null);
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }

      /**
       * Generate an UPDATE FROM ... SET indexOnMapEntry = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.Cols Set(final Map indexOnMapEntry) {
        where.with(NonEscapingSetAssignment.of("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.Cols(where, cassandraOptions);
      }
    }
  }

  public final class W_Id extends AbstractUpdateWhere {
    public W_Id(Update.Where where, CassandraOptions cassandraOptions) {
      super(where, cassandraOptions);
    }

    public final EntityWithComplexIndices_Update.W_Id.Relation id() {
      return new EntityWithComplexIndices_Update.W_Id.Relation();
    }

    public final class Relation {
      /**
       * Generate a SELECT ... FROM ... WHERE ... id = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.W_Clust1 Eq(Long id) {
        where.and(QueryBuilder.eq("id", QueryBuilder.bindMarker("id")));
        boundValues.add(id);
        encodedValues.add(meta.id.encodeFromJava(id, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.W_Clust1(where, cassandraOptions);
      }

      /**
       * Generate a SELECT ... FROM ... WHERE ... id IN ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.W_Clust1 IN(Long... id) {
        Validator.validateTrue(ArrayUtils.isNotEmpty(id), "Varargs for field '%s' should not be null/empty", "id");
        where.and(QueryBuilder.in("id",QueryBuilder.bindMarker("id")));
        final List varargs = Arrays.asList((Object[])id);
        final List encodedVarargs = Arrays.stream((Long[])id).map(x -> meta.id.encodeFromJava(x, Optional.of(cassandraOptions))).collect(Collectors.toList());
        boundValues.add(varargs);
        encodedValues.add(encodedVarargs);
        return new EntityWithComplexIndices_Update.W_Clust1(where, cassandraOptions);
      }
    }
  }

  public final class W_Clust1 extends AbstractUpdateWhere {
    public W_Clust1(Update.Where where, CassandraOptions cassandraOptions) {
      super(where, cassandraOptions);
    }

    public final EntityWithComplexIndices_Update.W_Clust1.Relation clust1() {
      return new EntityWithComplexIndices_Update.W_Clust1.Relation();
    }

    public final class Relation {
      /**
       * Generate a SELECT ... FROM ... WHERE ... clust1 = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.W_Clust2 Eq(int clust1) {
        where.and(QueryBuilder.eq("clust1", QueryBuilder.bindMarker("clust1")));
        boundValues.add(clust1);
        encodedValues.add(meta.clust1.encodeFromJava(clust1, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.W_Clust2(where, cassandraOptions);
      }
    }
  }

  public final class W_Clust2 extends AbstractUpdateWhere {
    public W_Clust2(Update.Where where, CassandraOptions cassandraOptions) {
      super(where, cassandraOptions);
    }

    public final EntityWithComplexIndices_Update.W_Clust2.Relation clust2() {
      return new EntityWithComplexIndices_Update.W_Clust2.Relation();
    }

    public final class Relation {
      /**
       * Generate a SELECT ... FROM ... WHERE ... clust2 = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.W_Clust3 Eq(int clust2) {
        where.and(QueryBuilder.eq("clust2", QueryBuilder.bindMarker("clust2")));
        boundValues.add(clust2);
        encodedValues.add(meta.clust2.encodeFromJava(clust2, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.W_Clust3(where, cassandraOptions);
      }
    }
  }

  public final class W_Clust3 extends AbstractUpdateWhere {
    public W_Clust3(Update.Where where, CassandraOptions cassandraOptions) {
      super(where, cassandraOptions);
    }

    public final EntityWithComplexIndices_Update.W_Clust3.Relation clust3() {
      return new EntityWithComplexIndices_Update.W_Clust3.Relation();
    }

    public final class Relation {
      /**
       * Generate a SELECT ... FROM ... WHERE ... clust3 = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Eq(String clust3) {
        where.and(QueryBuilder.eq("clust3", QueryBuilder.bindMarker("clust3")));
        boundValues.add(clust3);
        encodedValues.add(meta.clust3.encodeFromJava(clust3, Optional.of(cassandraOptions)));
        return new EntityWithComplexIndices_Update.E(where, cassandraOptions);
      }
    }
  }

  public final class E extends AbstractUpdateEnd {
    public E(Update.Where where, CassandraOptions cassandraOptions) {
      super(where, cassandraOptions);
    }

    @Override
    protected final Class getEntityClass() {
      return entityClass;
    }

    @Override
    protected final AbstractEntityProperty getMetaInternal() {
      return meta;
    }

    @Override
    protected final RuntimeEngine getRte() {
      return rte;
    }

    @Override
    protected final CassandraOptions getOptions() {
      return cassandraOptions;
    }

    @Override
    protected final List getBoundValuesInternal() {
      return boundValues;
    }

    @Override
    protected final List getEncodedValuesInternal() {
      return encodedValues;
    }

    @Override
    protected final EntityWithComplexIndices_Update.E getThis() {
      return this;
    }

    public final E.If_SimpleIndex if_SimpleIndex() {
      return new E.If_SimpleIndex();
    }

    public final E.If_CollectionIndex if_CollectionIndex() {
      return new E.If_CollectionIndex();
    }

    public final E.If_FullIndexOnCollection if_FullIndexOnCollection() {
      return new E.If_FullIndexOnCollection();
    }

    public final E.If_IndexOnMapKey if_IndexOnMapKey() {
      return new E.If_IndexOnMapKey();
    }

    public final E.If_IndexOnMapValue if_IndexOnMapValue() {
      return new E.If_IndexOnMapValue();
    }

    public final E.If_IndexOnMapEntry if_IndexOnMapEntry() {
      return new E.If_IndexOnMapEntry();
    }

    public final class If_SimpleIndex {
      /**
       * Generate an ... IF simpleIndex = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Eq(final String simpleIndex) {
        boundValues.add(simpleIndex);
        encodedValues.add(meta.simpleIndex.encodeFromJava(simpleIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.eq("simpleindex", QueryBuilder.bindMarker("simpleindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF simpleIndex > ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gt(final String simpleIndex) {
        boundValues.add(simpleIndex);
        encodedValues.add(meta.simpleIndex.encodeFromJava(simpleIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gt("simpleindex", QueryBuilder.bindMarker("simpleindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF simpleIndex >= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gte(final String simpleIndex) {
        boundValues.add(simpleIndex);
        encodedValues.add(meta.simpleIndex.encodeFromJava(simpleIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gte("simpleindex", QueryBuilder.bindMarker("simpleindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF simpleIndex < ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lt(final String simpleIndex) {
        boundValues.add(simpleIndex);
        encodedValues.add(meta.simpleIndex.encodeFromJava(simpleIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lt("simpleindex", QueryBuilder.bindMarker("simpleindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF simpleIndex <= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lte(final String simpleIndex) {
        boundValues.add(simpleIndex);
        encodedValues.add(meta.simpleIndex.encodeFromJava(simpleIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lte("simpleindex", QueryBuilder.bindMarker("simpleindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an  ... IF simpleIndex != ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E NotEq(final String simpleIndex) {
        boundValues.add(simpleIndex);
        encodedValues.add(meta.simpleIndex.encodeFromJava(simpleIndex, Optional.of(cassandraOptions)));
        where.onlyIf(NotEq.of("simpleindex", QueryBuilder.bindMarker("simpleindex")));
        return EntityWithComplexIndices_Update.E.this;
      }
    }

    public final class If_CollectionIndex {
      /**
       * Generate an ... IF collectionIndex = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Eq(final List collectionIndex) {
        boundValues.add(collectionIndex);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.eq("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF collectionIndex > ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gt(final List collectionIndex) {
        boundValues.add(collectionIndex);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gt("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF collectionIndex >= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gte(final List collectionIndex) {
        boundValues.add(collectionIndex);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gte("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF collectionIndex < ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lt(final List collectionIndex) {
        boundValues.add(collectionIndex);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lt("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF collectionIndex <= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lte(final List collectionIndex) {
        boundValues.add(collectionIndex);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lte("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an  ... IF collectionIndex != ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E NotEq(final List collectionIndex) {
        boundValues.add(collectionIndex);
        encodedValues.add(meta.collectionIndex.encodeFromJava(collectionIndex, Optional.of(cassandraOptions)));
        where.onlyIf(NotEq.of("collectionindex", QueryBuilder.bindMarker("collectionindex")));
        return EntityWithComplexIndices_Update.E.this;
      }
    }

    public final class If_FullIndexOnCollection {
      /**
       * Generate an ... IF fullIndexOnCollection = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Eq(final Set fullIndexOnCollection) {
        boundValues.add(fullIndexOnCollection);
        encodedValues.add(meta.fullIndexOnCollection.encodeFromJava(fullIndexOnCollection, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.eq("fullindexoncollection", QueryBuilder.bindMarker("fullindexoncollection")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF fullIndexOnCollection > ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gt(final Set fullIndexOnCollection) {
        boundValues.add(fullIndexOnCollection);
        encodedValues.add(meta.fullIndexOnCollection.encodeFromJava(fullIndexOnCollection, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gt("fullindexoncollection", QueryBuilder.bindMarker("fullindexoncollection")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF fullIndexOnCollection >= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gte(final Set fullIndexOnCollection) {
        boundValues.add(fullIndexOnCollection);
        encodedValues.add(meta.fullIndexOnCollection.encodeFromJava(fullIndexOnCollection, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gte("fullindexoncollection", QueryBuilder.bindMarker("fullindexoncollection")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF fullIndexOnCollection < ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lt(final Set fullIndexOnCollection) {
        boundValues.add(fullIndexOnCollection);
        encodedValues.add(meta.fullIndexOnCollection.encodeFromJava(fullIndexOnCollection, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lt("fullindexoncollection", QueryBuilder.bindMarker("fullindexoncollection")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF fullIndexOnCollection <= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lte(final Set fullIndexOnCollection) {
        boundValues.add(fullIndexOnCollection);
        encodedValues.add(meta.fullIndexOnCollection.encodeFromJava(fullIndexOnCollection, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lte("fullindexoncollection", QueryBuilder.bindMarker("fullindexoncollection")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an  ... IF fullIndexOnCollection != ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E NotEq(final Set fullIndexOnCollection) {
        boundValues.add(fullIndexOnCollection);
        encodedValues.add(meta.fullIndexOnCollection.encodeFromJava(fullIndexOnCollection, Optional.of(cassandraOptions)));
        where.onlyIf(NotEq.of("fullindexoncollection", QueryBuilder.bindMarker("fullindexoncollection")));
        return EntityWithComplexIndices_Update.E.this;
      }
    }

    public final class If_IndexOnMapKey {
      /**
       * Generate an ... IF indexOnMapKey = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Eq(final Map indexOnMapKey) {
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.eq("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapKey > ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gt(final Map indexOnMapKey) {
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gt("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapKey >= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gte(final Map indexOnMapKey) {
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gte("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapKey < ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lt(final Map indexOnMapKey) {
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lt("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapKey <= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lte(final Map indexOnMapKey) {
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lte("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an  ... IF indexOnMapKey != ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E NotEq(final Map indexOnMapKey) {
        boundValues.add(indexOnMapKey);
        encodedValues.add(meta.indexOnMapKey.encodeFromJava(indexOnMapKey, Optional.of(cassandraOptions)));
        where.onlyIf(NotEq.of("indexonmapkey", QueryBuilder.bindMarker("indexonmapkey")));
        return EntityWithComplexIndices_Update.E.this;
      }
    }

    public final class If_IndexOnMapValue {
      /**
       * Generate an ... IF indexOnMapValue = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Eq(final Map indexOnMapValue) {
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.eq("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapValue > ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gt(final Map indexOnMapValue) {
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gt("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapValue >= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gte(final Map indexOnMapValue) {
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gte("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapValue < ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lt(final Map indexOnMapValue) {
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lt("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapValue <= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lte(final Map indexOnMapValue) {
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lte("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an  ... IF indexOnMapValue != ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E NotEq(final Map indexOnMapValue) {
        boundValues.add(indexOnMapValue);
        encodedValues.add(meta.indexOnMapValue.encodeFromJava(indexOnMapValue, Optional.of(cassandraOptions)));
        where.onlyIf(NotEq.of("indexonmapvalue", QueryBuilder.bindMarker("indexonmapvalue")));
        return EntityWithComplexIndices_Update.E.this;
      }
    }

    public final class If_IndexOnMapEntry {
      /**
       * Generate an ... IF indexOnMapEntry = ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Eq(final Map indexOnMapEntry) {
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.eq("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapEntry > ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gt(final Map indexOnMapEntry) {
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gt("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapEntry >= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Gte(final Map indexOnMapEntry) {
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.gte("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapEntry < ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lt(final Map indexOnMapEntry) {
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lt("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an ... IF indexOnMapEntry <= ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E Lte(final Map indexOnMapEntry) {
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        where.onlyIf(QueryBuilder.lte("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        return EntityWithComplexIndices_Update.E.this;
      }

      /**
       * Generate an  ... IF indexOnMapEntry != ? */
      @SuppressWarnings("static-access")
      public final EntityWithComplexIndices_Update.E NotEq(final Map indexOnMapEntry) {
        boundValues.add(indexOnMapEntry);
        encodedValues.add(meta.indexOnMapEntry.encodeFromJava(indexOnMapEntry, Optional.of(cassandraOptions)));
        where.onlyIf(NotEq.of("indexonmapentry", QueryBuilder.bindMarker("indexonmapentry")));
        return EntityWithComplexIndices_Update.E.this;
      }
    }
  }
}