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

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

package info.archinnov.achilles.generated.dsl;

import com.datastax.driver.core.querybuilder.QueryBuilder;
import com.datastax.driver.core.querybuilder.Update;
import info.archinnov.achilles.generated.meta.entity.EntityWithStaticCounterColumn_AchillesMeta;
import info.archinnov.achilles.internals.entities.EntityWithStaticCounterColumn;
import info.archinnov.achilles.internals.metamodel.AbstractEntityProperty;
import info.archinnov.achilles.internals.options.Options;
import info.archinnov.achilles.internals.query.dsl.update.AbstractUpdate;
import info.archinnov.achilles.internals.query.dsl.update.AbstractUpdateColumns;
import info.archinnov.achilles.internals.query.dsl.update.AbstractUpdateEnd;
import info.archinnov.achilles.internals.query.dsl.update.AbstractUpdateFrom;
import info.archinnov.achilles.internals.query.dsl.update.AbstractUpdateWhere;
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.Long;
import java.lang.Object;
import java.lang.Override;
import java.lang.SuppressWarnings;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
import java.util.stream.Collectors;
import org.apache.commons.lang3.ArrayUtils;

public final class EntityWithStaticCounterColumn_Update extends AbstractUpdate {
  protected final EntityWithStaticCounterColumn_AchillesMeta meta;

  protected final Class entityClass = EntityWithStaticCounterColumn.class;

  public EntityWithStaticCounterColumn_Update(RuntimeEngine rte, EntityWithStaticCounterColumn_AchillesMeta meta) {
    super(rte);
    this.meta = meta;
  }

  /**
   * Generate an UPDATE FROM ... */
  public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateFrom 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 EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateFrom(where);
  }

  /**
   * Generate an UPDATE FROM ... using the given SchemaNameProvider */
  public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateFrom 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 EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateFrom(where);
  }

  public class EntityWithStaticCounterColumn_UpdateColumns extends AbstractUpdateColumns {
    EntityWithStaticCounterColumn_UpdateColumns(Update.Where where) {
      super(where);
    }

    /**
     * Generate an UPDATE FROM ... SET static_count = static_count + 1 */
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns staticCount_Incr() {
      where.with(QueryBuilder.incr("static_count"));
      return this;
    }

    /**
     * Generate an UPDATE FROM ... SET staticCount = staticCount + ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns staticCount_Incr(final Long staticCount_increment) {
      where.with(QueryBuilder.incr("static_count", QueryBuilder.bindMarker("static_count")));
      boundValues.add(staticCount_increment);
      encodedValues.add(meta.staticCount.encodeFromJava(staticCount_increment));
      return this;
    }

    /**
     * Generate an UPDATE FROM ... SET staticCount = staticCount - 1 */
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns staticCount_Decr() {
      where.with(QueryBuilder.decr("static_count"));
      return this;
    }

    /**
     * Generate an UPDATE FROM ... SET staticCount = staticCount - ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns staticCount_Decr(final Long staticCount_increment) {
      where.with(QueryBuilder.decr("static_count", QueryBuilder.bindMarker("static_count")));
      boundValues.add(staticCount_increment);
      encodedValues.add(meta.staticCount.encodeFromJava(staticCount_increment));
      return this;
    }

    /**
     * Generate an UPDATE FROM ... SET count = count + 1 */
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns count_Incr() {
      where.with(QueryBuilder.incr("count"));
      return this;
    }

    /**
     * Generate an UPDATE FROM ... SET count = count + ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns count_Incr(final Long count_increment) {
      where.with(QueryBuilder.incr("count", QueryBuilder.bindMarker("count")));
      boundValues.add(count_increment);
      encodedValues.add(meta.count.encodeFromJava(count_increment));
      return this;
    }

    /**
     * Generate an UPDATE FROM ... SET count = count - 1 */
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns count_Decr() {
      where.with(QueryBuilder.decr("count"));
      return this;
    }

    /**
     * Generate an UPDATE FROM ... SET count = count - ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns count_Decr(final Long count_increment) {
      where.with(QueryBuilder.decr("count", QueryBuilder.bindMarker("count")));
      boundValues.add(count_increment);
      encodedValues.add(meta.count.encodeFromJava(count_increment));
      return this;
    }

    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateWhere_Id where() {
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateWhere_Id(where);
    }
  }

  public class EntityWithStaticCounterColumn_UpdateFrom extends AbstractUpdateFrom {
    EntityWithStaticCounterColumn_UpdateFrom(Update.Where where) {
      super(where);
    }

    /**
     * Generate an UPDATE FROM ... SET static_count = static_count + 1 */
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns staticCount_Incr() {
      where.with(QueryBuilder.incr("static_count"));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns(where);
    }

    /**
     * Generate an UPDATE FROM ... SET staticCount = staticCount + ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns staticCount_Incr(final Long staticCount_increment) {
      where.with(QueryBuilder.incr("static_count", QueryBuilder.bindMarker("static_count")));
      boundValues.add(staticCount_increment);
      encodedValues.add(meta.staticCount.encodeFromJava(staticCount_increment));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns(where);
    }

    /**
     * Generate an UPDATE FROM ... SET staticCount = staticCount - 1 */
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns staticCount_Decr() {
      where.with(QueryBuilder.decr("static_count"));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns(where);
    }

    /**
     * Generate an UPDATE FROM ... SET staticCount = staticCount - ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns staticCount_Decr(final Long staticCount_increment) {
      where.with(QueryBuilder.decr("static_count", QueryBuilder.bindMarker("static_count")));
      boundValues.add(staticCount_increment);
      encodedValues.add(meta.staticCount.encodeFromJava(staticCount_increment));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns(where);
    }

    /**
     * Generate an UPDATE FROM ... SET count = count + 1 */
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns count_Incr() {
      where.with(QueryBuilder.incr("count"));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns(where);
    }

    /**
     * Generate an UPDATE FROM ... SET count = count + ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns count_Incr(final Long count_increment) {
      where.with(QueryBuilder.incr("count", QueryBuilder.bindMarker("count")));
      boundValues.add(count_increment);
      encodedValues.add(meta.count.encodeFromJava(count_increment));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns(where);
    }

    /**
     * Generate an UPDATE FROM ... SET count = count - 1 */
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns count_Decr() {
      where.with(QueryBuilder.decr("count"));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns(where);
    }

    /**
     * Generate an UPDATE FROM ... SET count = count - ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns count_Decr(final Long count_increment) {
      where.with(QueryBuilder.decr("count", QueryBuilder.bindMarker("count")));
      boundValues.add(count_increment);
      encodedValues.add(meta.count.encodeFromJava(count_increment));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateColumns(where);
    }
  }

  public final class EntityWithStaticCounterColumn_UpdateWhere_Id extends AbstractUpdateWhere {
    public EntityWithStaticCounterColumn_UpdateWhere_Id(Update.Where where) {
      super(where);
    }

    /**
     * Generate a SELECT ... FROM ... WHERE ... id = ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateWhere_Uuid id_Eq(Long id) {
      where.and(QueryBuilder.eq("id", QueryBuilder.bindMarker("id_Eq")));
      boundValues.add(id);
      encodedValues.add(meta.id.encodeFromJava(id));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateWhere_Uuid(where);
    }

    /**
     * Generate a SELECT ... FROM ... WHERE ... id IN ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateWhere_Uuid id_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)).collect(Collectors.toList());
      boundValues.add(varargs);
      encodedValues.add(encodedVarargs);
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateWhere_Uuid(where);
    }
  }

  public final class EntityWithStaticCounterColumn_UpdateWhere_Uuid extends AbstractUpdateWhere {
    public EntityWithStaticCounterColumn_UpdateWhere_Uuid(Update.Where where) {
      super(where);
    }

    /**
     * Generate a SELECT ... FROM ... WHERE ... uuid = ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateEnd uuid_Eq(UUID uuid) {
      where.and(QueryBuilder.eq("uuid", QueryBuilder.bindMarker("uuid_Eq")));
      boundValues.add(uuid);
      encodedValues.add(meta.uuid.encodeFromJava(uuid));
      return new EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateEnd(where);
    }
  }

  public final class EntityWithStaticCounterColumn_UpdateEnd extends AbstractUpdateEnd {
    public EntityWithStaticCounterColumn_UpdateEnd(Update.Where where) {
      super(where);
    }

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

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

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

    @Override
    protected final Options getOptions() {
      return options;
    }

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

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

    @Override
    protected final EntityWithStaticCounterColumn_Update.EntityWithStaticCounterColumn_UpdateEnd getThis() {
      return this;
    }
  }
}