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

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

package info.archinnov.achilles.generated.dsl;

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.EntityWithStaticAnnotations_AchillesMeta;
import info.archinnov.achilles.internals.entities.EntityWithStaticAnnotations;
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.String;
import java.lang.SuppressWarnings;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import org.apache.commons.lang3.ArrayUtils;

public final class EntityWithStaticAnnotations_Update extends AbstractUpdate {
  protected final EntityWithStaticAnnotations_AchillesMeta meta;

  protected final Class entityClass = EntityWithStaticAnnotations.class;

  public EntityWithStaticAnnotations_Update(RuntimeEngine rte, EntityWithStaticAnnotations_AchillesMeta meta) {
    super(rte);
    this.meta = meta;
  }

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

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

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

    /**
     * Generate an UPDATE FROM ... SET value = ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateColumns stringValue_Set(final String stringValue) {
      where.with(QueryBuilder.set("value", QueryBuilder.bindMarker("value")));
      boundValues.add(stringValue);
      encodedValues.add(meta.stringValue.encodeFromJava(stringValue));
      return this;
    }

    /**
     * Generate an UPDATE FROM ... SET "overRiden" = ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateColumns overridenName_Set(final String overridenName) {
      where.with(QueryBuilder.set("\"overRiden\"", QueryBuilder.bindMarker("\"overRiden\"")));
      boundValues.add(overridenName);
      encodedValues.add(meta.overridenName.encodeFromJava(overridenName));
      return this;
    }

    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateWhere_PartitionKey where() {
      return new EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateWhere_PartitionKey(where);
    }
  }

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

    /**
     * Generate an UPDATE FROM ... SET value = ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateColumns stringValue_Set(final String stringValue) {
      where.with(QueryBuilder.set("value", QueryBuilder.bindMarker("value")));
      boundValues.add(stringValue);
      encodedValues.add(meta.stringValue.encodeFromJava(stringValue));
      return new EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateColumns(where);
    }

    /**
     * Generate an UPDATE FROM ... SET "overRiden" = ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateColumns overridenName_Set(final String overridenName) {
      where.with(QueryBuilder.set("\"overRiden\"", QueryBuilder.bindMarker("\"overRiden\"")));
      boundValues.add(overridenName);
      encodedValues.add(meta.overridenName.encodeFromJava(overridenName));
      return new EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateColumns(where);
    }
  }

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

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

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

  public final class EntityWithStaticAnnotations_UpdateEnd extends AbstractUpdateEnd {
    public EntityWithStaticAnnotations_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 EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd getThis() {
      return this;
    }

    /**
     * Generate an ... IF stringValue = ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifStringValue_Eq(final String stringValue) {
      boundValues.add(stringValue);
      encodedValues.add(meta.stringValue.encodeFromJava(stringValue));
      where.onlyIf(QueryBuilder.eq("value", QueryBuilder.bindMarker("value")));
      return this;
    }

    /**
     * Generate an ... IF stringValue > ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifStringValue_Gt(final String stringValue) {
      boundValues.add(stringValue);
      encodedValues.add(meta.stringValue.encodeFromJava(stringValue));
      where.onlyIf(QueryBuilder.gt("value", QueryBuilder.bindMarker("value")));
      return this;
    }

    /**
     * Generate an ... IF stringValue >= ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifStringValue_Gte(final String stringValue) {
      boundValues.add(stringValue);
      encodedValues.add(meta.stringValue.encodeFromJava(stringValue));
      where.onlyIf(QueryBuilder.gte("value", QueryBuilder.bindMarker("value")));
      return this;
    }

    /**
     * Generate an ... IF stringValue < ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifStringValue_Lt(final String stringValue) {
      boundValues.add(stringValue);
      encodedValues.add(meta.stringValue.encodeFromJava(stringValue));
      where.onlyIf(QueryBuilder.lt("value", QueryBuilder.bindMarker("value")));
      return this;
    }

    /**
     * Generate an ... IF stringValue <= ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifStringValue_Lte(final String stringValue) {
      boundValues.add(stringValue);
      encodedValues.add(meta.stringValue.encodeFromJava(stringValue));
      where.onlyIf(QueryBuilder.lte("value", QueryBuilder.bindMarker("value")));
      return this;
    }

    /**
     * Generate an  ... IF stringValue != ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifStringValue_NotEq(final String stringValue) {
      boundValues.add(stringValue);
      encodedValues.add(meta.stringValue.encodeFromJava(stringValue));
      where.onlyIf(NotEq.of("value", QueryBuilder.bindMarker("value")));
      return this;
    }

    /**
     * Generate an ... IF overridenName = ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifOverridenName_Eq(final String overridenName) {
      boundValues.add(overridenName);
      encodedValues.add(meta.overridenName.encodeFromJava(overridenName));
      where.onlyIf(QueryBuilder.eq("overRiden", QueryBuilder.bindMarker("overRiden")));
      return this;
    }

    /**
     * Generate an ... IF overridenName > ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifOverridenName_Gt(final String overridenName) {
      boundValues.add(overridenName);
      encodedValues.add(meta.overridenName.encodeFromJava(overridenName));
      where.onlyIf(QueryBuilder.gt("overRiden", QueryBuilder.bindMarker("overRiden")));
      return this;
    }

    /**
     * Generate an ... IF overridenName >= ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifOverridenName_Gte(final String overridenName) {
      boundValues.add(overridenName);
      encodedValues.add(meta.overridenName.encodeFromJava(overridenName));
      where.onlyIf(QueryBuilder.gte("overRiden", QueryBuilder.bindMarker("overRiden")));
      return this;
    }

    /**
     * Generate an ... IF overridenName < ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifOverridenName_Lt(final String overridenName) {
      boundValues.add(overridenName);
      encodedValues.add(meta.overridenName.encodeFromJava(overridenName));
      where.onlyIf(QueryBuilder.lt("overRiden", QueryBuilder.bindMarker("overRiden")));
      return this;
    }

    /**
     * Generate an ... IF overridenName <= ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifOverridenName_Lte(final String overridenName) {
      boundValues.add(overridenName);
      encodedValues.add(meta.overridenName.encodeFromJava(overridenName));
      where.onlyIf(QueryBuilder.lte("overRiden", QueryBuilder.bindMarker("overRiden")));
      return this;
    }

    /**
     * Generate an  ... IF overridenName != ? */
    @SuppressWarnings("static-access")
    public final EntityWithStaticAnnotations_Update.EntityWithStaticAnnotations_UpdateEnd ifOverridenName_NotEq(final String overridenName) {
      boundValues.add(overridenName);
      encodedValues.add(meta.overridenName.encodeFromJava(overridenName));
      where.onlyIf(NotEq.of("overRiden", QueryBuilder.bindMarker("overRiden")));
      return this;
    }
  }
}