001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.queue;
005
006
007import com.echothree.model.data.core.common.pk.EntityInstancePK;
008import com.echothree.model.data.queue.common.pk.QueueTypePK;
009import com.echothree.model.data.queue.common.pk.QueuedEntityPK;
010import com.echothree.model.jooq.server.KeyRegistry;
011import com.echothree.model.jooq.server.tables.core.EntityInstances.EntityInstancesPath;
012import com.echothree.model.jooq.server.tables.queue.QueueTypes.QueueTypesPath;
013
014import java.util.Arrays;
015import java.util.Collection;
016import java.util.List;
017
018import org.jooq.Condition;
019import org.jooq.Converter;
020import org.jooq.Field;
021import org.jooq.ForeignKey;
022import org.jooq.Name;
023import org.jooq.PlainSQL;
024import org.jooq.QueryPart;
025import org.jooq.SQL;
026import org.jooq.Stringly;
027import org.jooq.Table;
028import org.jooq.TableField;
029import org.jooq.TableLike;
030import org.jooq.TableOptions;
031import org.jooq.UniqueKey;
032import org.jooq.impl.DSL;
033import org.jooq.impl.Internal;
034import org.jooq.impl.SQLDataType;
035import org.jooq.impl.TableImpl;
036
037
038/**
039 * This class is generated by jOOQ.
040 */
041@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
042public class QueuedEntities extends TableImpl<com.echothree.model.jooq.server.records.queue.QueuedEntities> {
043
044    private static final long serialVersionUID = 1L;
045
046    /**
047     * The reference instance of <code>queuedentities</code>
048     */
049    public static final QueuedEntities QueuedEntities = new QueuedEntities();
050
051    /**
052     * The class holding records for this type
053     */
054    @Override
055    public Class<com.echothree.model.jooq.server.records.queue.QueuedEntities> getRecordType() {
056        return com.echothree.model.jooq.server.records.queue.QueuedEntities.class;
057    }
058
059    /**
060     * The column <code>queuedentities.qeni_queuedentityid</code>.
061     */
062    public final TableField<com.echothree.model.jooq.server.records.queue.QueuedEntities, QueuedEntityPK> QUEUED_ENTITY = createField(DSL.name("qeni_queuedentityid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, QueuedEntityPK.class, id -> new com.echothree.model.data.queue.common.pk.QueuedEntityPK(id), primaryKey -> primaryKey.getEntityId()));
063
064    /**
065     * The column <code>queuedentities.qeni_qtyp_queuetypeid</code>.
066     */
067    public final TableField<com.echothree.model.jooq.server.records.queue.QueuedEntities, QueueTypePK> QUEUE_TYPE = createField(DSL.name("qeni_qtyp_queuetypeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, QueueTypePK.class, id -> new com.echothree.model.data.queue.common.pk.QueueTypePK(id), primaryKey -> primaryKey.getEntityId()));
068
069    /**
070     * The column <code>queuedentities.qeni_eni_entityinstanceid</code>.
071     */
072    public final TableField<com.echothree.model.jooq.server.records.queue.QueuedEntities, EntityInstancePK> ENTITY_INSTANCE = createField(DSL.name("qeni_eni_entityinstanceid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, EntityInstancePK.class, id -> new com.echothree.model.data.core.common.pk.EntityInstancePK(id), primaryKey -> primaryKey.getEntityId()));
073
074    /**
075     * The column <code>queuedentities.qeni_time</code>.
076     */
077    public final TableField<com.echothree.model.jooq.server.records.queue.QueuedEntities, Long> TIME = createField(DSL.name("qeni_time"), SQLDataType.BIGINT.nullable(false), this, "");
078
079    private QueuedEntities(Name alias, Table<com.echothree.model.jooq.server.records.queue.QueuedEntities> aliased) {
080        this(alias, aliased, (Field<?>[]) null, null);
081    }
082
083    private QueuedEntities(Name alias, Table<com.echothree.model.jooq.server.records.queue.QueuedEntities> aliased, Field<?>[] parameters, Condition where) {
084        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
085    }
086
087    /**
088     * Create an aliased <code>queuedentities</code> table reference
089     */
090    public QueuedEntities(String alias) {
091        this(DSL.name(alias), QueuedEntities);
092    }
093
094    /**
095     * Create an aliased <code>queuedentities</code> table reference
096     */
097    public QueuedEntities(Name alias) {
098        this(alias, QueuedEntities);
099    }
100
101    /**
102     * Create a <code>queuedentities</code> table reference
103     */
104    public QueuedEntities() {
105        this(DSL.name("queuedentities"), null);
106    }
107
108    @Override
109    public UniqueKey<com.echothree.model.jooq.server.records.queue.QueuedEntities> getPrimaryKey() {
110        return KeyRegistry.QUEUED_ENTITIES_PK;
111    }
112
113    @Override
114    public List<ForeignKey<com.echothree.model.jooq.server.records.queue.QueuedEntities, ?>> getReferences() {
115        return Arrays.asList(KeyRegistry.QUEUED_ENTITIES_ENTITY_INSTANCE_FK, KeyRegistry.QUEUED_ENTITIES_QUEUE_TYPE_FK);
116    }
117
118    private transient EntityInstancesPath _qeni_eni_entityinstanceid_fk;
119
120    /**
121     * Get the implicit join path to the <code>entityinstances</code> table.
122     */
123    public EntityInstancesPath qeni_eni_entityinstanceid_fk() {
124        if (_qeni_eni_entityinstanceid_fk == null)
125            _qeni_eni_entityinstanceid_fk = new EntityInstancesPath(this, KeyRegistry.QUEUED_ENTITIES_ENTITY_INSTANCE_FK, null);
126
127        return _qeni_eni_entityinstanceid_fk;
128    }
129
130    private transient QueueTypesPath _qeni_qtyp_queuetypeid_fk;
131
132    /**
133     * Get the implicit join path to the <code>queuetypes</code> table.
134     */
135    public QueueTypesPath qeni_qtyp_queuetypeid_fk() {
136        if (_qeni_qtyp_queuetypeid_fk == null)
137            _qeni_qtyp_queuetypeid_fk = new QueueTypesPath(this, KeyRegistry.QUEUED_ENTITIES_QUEUE_TYPE_FK, null);
138
139        return _qeni_qtyp_queuetypeid_fk;
140    }
141
142    @Override
143    public QueuedEntities as(String alias) {
144        return new QueuedEntities(DSL.name(alias), this);
145    }
146
147    @Override
148    public QueuedEntities as(Name alias) {
149        return new QueuedEntities(alias, this);
150    }
151
152    @Override
153    public QueuedEntities as(Table<?> alias) {
154        return new QueuedEntities(alias.getQualifiedName(), this);
155    }
156
157    /**
158     * Rename this table
159     */
160    @Override
161    public QueuedEntities rename(String name) {
162        return new QueuedEntities(DSL.name(name), null);
163    }
164
165    /**
166     * Rename this table
167     */
168    @Override
169    public QueuedEntities rename(Name name) {
170        return new QueuedEntities(name, null);
171    }
172
173    /**
174     * Rename this table
175     */
176    @Override
177    public QueuedEntities rename(Table<?> name) {
178        return new QueuedEntities(name.getQualifiedName(), null);
179    }
180
181    /**
182     * Create an inline derived table from this table
183     */
184    @Override
185    public QueuedEntities where(Condition condition) {
186        return new QueuedEntities(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
187    }
188
189    /**
190     * Create an inline derived table from this table
191     */
192    @Override
193    public QueuedEntities where(Collection<? extends Condition> conditions) {
194        return where(DSL.and(conditions));
195    }
196
197    /**
198     * Create an inline derived table from this table
199     */
200    @Override
201    public QueuedEntities where(Condition... conditions) {
202        return where(DSL.and(conditions));
203    }
204
205    /**
206     * Create an inline derived table from this table
207     */
208    @Override
209    public QueuedEntities where(Field<Boolean> condition) {
210        return where(DSL.condition(condition));
211    }
212
213    /**
214     * Create an inline derived table from this table
215     */
216    @Override
217    @PlainSQL
218    public QueuedEntities where(SQL condition) {
219        return where(DSL.condition(condition));
220    }
221
222    /**
223     * Create an inline derived table from this table
224     */
225    @Override
226    @PlainSQL
227    public QueuedEntities where(@Stringly.SQL String condition) {
228        return where(DSL.condition(condition));
229    }
230
231    /**
232     * Create an inline derived table from this table
233     */
234    @Override
235    @PlainSQL
236    public QueuedEntities where(@Stringly.SQL String condition, Object... binds) {
237        return where(DSL.condition(condition, binds));
238    }
239
240    /**
241     * Create an inline derived table from this table
242     */
243    @Override
244    @PlainSQL
245    public QueuedEntities where(@Stringly.SQL String condition, QueryPart... parts) {
246        return where(DSL.condition(condition, parts));
247    }
248
249    /**
250     * Create an inline derived table from this table
251     */
252    @Override
253    public QueuedEntities whereExists(TableLike<?> select) {
254        return where(DSL.exists(select));
255    }
256
257    /**
258     * Create an inline derived table from this table
259     */
260    @Override
261    public QueuedEntities whereNotExists(TableLike<?> select) {
262        return where(DSL.notExists(select));
263    }
264}