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