package features.domain; import java.util.ArrayList; import java.util.List; import joist.domain.DomainObject; import joist.domain.orm.queries.Alias; import joist.domain.orm.queries.JoinClause; import joist.domain.orm.queries.columns.AliasColumn; import joist.domain.orm.queries.columns.ForeignKeyAliasColumn; import joist.domain.orm.queries.columns.IdAliasColumn; import joist.domain.orm.queries.columns.LongAliasColumn; import joist.domain.orm.queries.columns.StringAliasColumn; public class ValidationAFooAlias extends Alias<ValidationAFoo> { private final List<AliasColumn<ValidationAFoo, ?, ?>> columns = new ArrayList<AliasColumn<ValidationAFoo, ?, ?>>(); public final IdAliasColumn<ValidationAFoo> id = new IdAliasColumn<ValidationAFoo>(this, "id", ValidationAFooCodegen.Shims.id); public final StringAliasColumn<ValidationAFoo> name = new StringAliasColumn<ValidationAFoo>(this, "name", ValidationAFooCodegen.Shims.name); public final LongAliasColumn<ValidationAFoo> version = new LongAliasColumn<ValidationAFoo>(this, "version", ValidationAFooCodegen.Shims.version); public ValidationAFooAlias() { this("vaf0", null, true); } public ValidationAFooAlias(String alias) { this(alias, null, true); } public ValidationAFooAlias(String alias, Object noopBaseAlias, boolean addSubClasses) { super(ValidationAFoo.class, "validation_a_foo", alias); this.columns.add(this.id); this.columns.add(this.name); this.columns.add(this.version); } public List<AliasColumn<ValidationAFoo, ?, ?>> getColumns() { return this.columns; } public IdAliasColumn<ValidationAFoo> getIdColumn() { return this.id; } public LongAliasColumn<ValidationAFoo> getVersionColumn() { return this.version; } public IdAliasColumn<ValidationAFoo> getSubClassIdColumn() { return null; } public int getOrder() { return 53; } public <T extends DomainObject> JoinClause<T, ValidationAFoo> on(ForeignKeyAliasColumn<T, ValidationAFoo> on) { return new JoinClause<T, ValidationAFoo>("INNER JOIN", this, on); } public <T extends DomainObject> JoinClause<T, ValidationAFoo> leftOn(ForeignKeyAliasColumn<T, ValidationAFoo> on) { return new JoinClause<T, ValidationAFoo>("LEFT OUTER JOIN", this, on); } }