001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.training;
005
006
007import com.echothree.model.data.training.common.pk.PartyTrainingClassSessionPK;
008import com.echothree.model.data.training.common.pk.PartyTrainingClassSessionPagePK;
009import com.echothree.model.data.training.common.pk.TrainingClassPagePK;
010import com.echothree.model.jooq.server.KeyRegistry;
011import com.echothree.model.jooq.server.tables.training.PartyTrainingClassSessions.PartyTrainingClassSessionsPath;
012import com.echothree.model.jooq.server.tables.training.TrainingClassPages.TrainingClassPagesPath;
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.InverseForeignKey;
023import org.jooq.Name;
024import org.jooq.Path;
025import org.jooq.PlainSQL;
026import org.jooq.QueryPart;
027import org.jooq.Record;
028import org.jooq.SQL;
029import org.jooq.Stringly;
030import org.jooq.Table;
031import org.jooq.TableField;
032import org.jooq.TableLike;
033import org.jooq.TableOptions;
034import org.jooq.UniqueKey;
035import org.jooq.impl.DSL;
036import org.jooq.impl.Internal;
037import org.jooq.impl.SQLDataType;
038import org.jooq.impl.TableImpl;
039
040
041/**
042 * This class is generated by jOOQ.
043 */
044@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
045public class PartyTrainingClassSessionPages extends TableImpl<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> {
046
047    private static final long serialVersionUID = 1L;
048
049    /**
050     * The reference instance of <code>partytrainingclasssessionpages</code>
051     */
052    public static final PartyTrainingClassSessionPages PartyTrainingClassSessionPages = new PartyTrainingClassSessionPages();
053
054    /**
055     * The class holding records for this type
056     */
057    @Override
058    public Class<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> getRecordType() {
059        return com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages.class;
060    }
061
062    /**
063     * The column
064     * <code>partytrainingclasssessionpages.ptrnclsp_partytrainingclasssessionpageid</code>.
065     */
066    public final TableField<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, PartyTrainingClassSessionPagePK> PARTY_TRAINING_CLASS_SESSION_PAGE = createField(DSL.name("ptrnclsp_partytrainingclasssessionpageid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PartyTrainingClassSessionPagePK.class, id -> new com.echothree.model.data.training.common.pk.PartyTrainingClassSessionPagePK(id), primaryKey -> primaryKey.getEntityId()));
067
068    /**
069     * The column
070     * <code>partytrainingclasssessionpages.ptrnclsp_ptrnclssess_partytrainingclasssessionid</code>.
071     */
072    public final TableField<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, PartyTrainingClassSessionPK> PARTY_TRAINING_CLASS_SESSION = createField(DSL.name("ptrnclsp_ptrnclssess_partytrainingclasssessionid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PartyTrainingClassSessionPK.class, id -> new com.echothree.model.data.training.common.pk.PartyTrainingClassSessionPK(id), primaryKey -> primaryKey.getEntityId()));
073
074    /**
075     * The column
076     * <code>partytrainingclasssessionpages.ptrnclsp_partytrainingclasssessionpagesequence</code>.
077     */
078    public final TableField<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, Integer> PARTY_TRAINING_CLASS_SESSION_PAGE_SEQUENCE = createField(DSL.name("ptrnclsp_partytrainingclasssessionpagesequence"), SQLDataType.INTEGER.nullable(false), this, "");
079
080    /**
081     * The column
082     * <code>partytrainingclasssessionpages.ptrnclsp_trnclsp_trainingclasspageid</code>.
083     */
084    public final TableField<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, TrainingClassPagePK> TRAINING_CLASS_PAGE = createField(DSL.name("ptrnclsp_trnclsp_trainingclasspageid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, TrainingClassPagePK.class, id -> new com.echothree.model.data.training.common.pk.TrainingClassPagePK(id), primaryKey -> primaryKey.getEntityId()));
085
086    /**
087     * The column
088     * <code>partytrainingclasssessionpages.ptrnclsp_readingstarttime</code>.
089     */
090    public final TableField<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, Long> READING_START_TIME = createField(DSL.name("ptrnclsp_readingstarttime"), SQLDataType.BIGINT.nullable(false), this, "");
091
092    /**
093     * The column
094     * <code>partytrainingclasssessionpages.ptrnclsp_readingendtime</code>.
095     */
096    public final TableField<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, Long> READING_END_TIME = createField(DSL.name("ptrnclsp_readingendtime"), SQLDataType.BIGINT, this, "");
097
098    /**
099     * The column <code>partytrainingclasssessionpages.ptrnclsp_fromtime</code>.
100     */
101    public final TableField<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, Long> FROM_TIME = createField(DSL.name("ptrnclsp_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
102
103    /**
104     * The column <code>partytrainingclasssessionpages.ptrnclsp_thrutime</code>.
105     */
106    public final TableField<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, Long> THRU_TIME = createField(DSL.name("ptrnclsp_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
107
108    private PartyTrainingClassSessionPages(Name alias, Table<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> aliased) {
109        this(alias, aliased, (Field<?>[]) null, null);
110    }
111
112    private PartyTrainingClassSessionPages(Name alias, Table<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> aliased, Field<?>[] parameters, Condition where) {
113        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
114    }
115
116    /**
117     * Create an aliased <code>partytrainingclasssessionpages</code> table
118     * reference
119     */
120    public PartyTrainingClassSessionPages(String alias) {
121        this(DSL.name(alias), PartyTrainingClassSessionPages);
122    }
123
124    /**
125     * Create an aliased <code>partytrainingclasssessionpages</code> table
126     * reference
127     */
128    public PartyTrainingClassSessionPages(Name alias) {
129        this(alias, PartyTrainingClassSessionPages);
130    }
131
132    /**
133     * Create a <code>partytrainingclasssessionpages</code> table reference
134     */
135    public PartyTrainingClassSessionPages() {
136        this(DSL.name("partytrainingclasssessionpages"), null);
137    }
138
139    public <O extends Record> PartyTrainingClassSessionPages(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> parentPath) {
140        super(path, childPath, parentPath, PartyTrainingClassSessionPages);
141    }
142
143    /**
144     * A subtype implementing {@link Path} for simplified path-based joins.
145     */
146    public static class PartyTrainingClassSessionPagesPath extends PartyTrainingClassSessionPages implements Path<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> {
147
148        private static final long serialVersionUID = 1L;
149        public <O extends Record> PartyTrainingClassSessionPagesPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> parentPath) {
150            super(path, childPath, parentPath);
151        }
152        private PartyTrainingClassSessionPagesPath(Name alias, Table<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> aliased) {
153            super(alias, aliased);
154        }
155
156        @Override
157        public PartyTrainingClassSessionPagesPath as(String alias) {
158            return new PartyTrainingClassSessionPagesPath(DSL.name(alias), this);
159        }
160
161        @Override
162        public PartyTrainingClassSessionPagesPath as(Name alias) {
163            return new PartyTrainingClassSessionPagesPath(alias, this);
164        }
165
166        @Override
167        public PartyTrainingClassSessionPagesPath as(Table<?> alias) {
168            return new PartyTrainingClassSessionPagesPath(alias.getQualifiedName(), this);
169        }
170    }
171
172    @Override
173    public UniqueKey<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages> getPrimaryKey() {
174        return KeyRegistry.PARTY_TRAINING_CLASS_SESSION_PAGES_PK;
175    }
176
177    @Override
178    public List<UniqueKey<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages>> getUniqueKeys() {
179        return Arrays.asList(KeyRegistry.PARTY_TRAINING_CLASS_SESSION_PAGES_PARTY_TRAINING_CLASS_SESSION_AND_PARTY_TRAINING_CLASS_SESSION_PAGE_SEQUENCE_AND_THRU_TIME_UK);
180    }
181
182    @Override
183    public List<ForeignKey<com.echothree.model.jooq.server.records.training.PartyTrainingClassSessionPages, ?>> getReferences() {
184        return Arrays.asList(KeyRegistry.PARTY_TRAINING_CLASS_SESSION_PAGES_PARTY_TRAINING_CLASS_SESSION_FK, KeyRegistry.PARTY_TRAINING_CLASS_SESSION_PAGES_TRAINING_CLASS_PAGE_FK);
185    }
186
187    private transient PartyTrainingClassSessionsPath _ptrnclsp_ptrnclssess_partytrainingclasssessionid_fk;
188
189    /**
190     * Get the implicit join path to the <code>partytrainingclasssessions</code>
191     * table.
192     */
193    public PartyTrainingClassSessionsPath ptrnclsp_ptrnclssess_partytrainingclasssessionid_fk() {
194        if (_ptrnclsp_ptrnclssess_partytrainingclasssessionid_fk == null)
195            _ptrnclsp_ptrnclssess_partytrainingclasssessionid_fk = new PartyTrainingClassSessionsPath(this, KeyRegistry.PARTY_TRAINING_CLASS_SESSION_PAGES_PARTY_TRAINING_CLASS_SESSION_FK, null);
196
197        return _ptrnclsp_ptrnclssess_partytrainingclasssessionid_fk;
198    }
199
200    private transient TrainingClassPagesPath _ptrnclsp_trnclsp_trainingclasspageid_fk;
201
202    /**
203     * Get the implicit join path to the <code>trainingclasspages</code> table.
204     */
205    public TrainingClassPagesPath ptrnclsp_trnclsp_trainingclasspageid_fk() {
206        if (_ptrnclsp_trnclsp_trainingclasspageid_fk == null)
207            _ptrnclsp_trnclsp_trainingclasspageid_fk = new TrainingClassPagesPath(this, KeyRegistry.PARTY_TRAINING_CLASS_SESSION_PAGES_TRAINING_CLASS_PAGE_FK, null);
208
209        return _ptrnclsp_trnclsp_trainingclasspageid_fk;
210    }
211
212    @Override
213    public PartyTrainingClassSessionPages as(String alias) {
214        return new PartyTrainingClassSessionPages(DSL.name(alias), this);
215    }
216
217    @Override
218    public PartyTrainingClassSessionPages as(Name alias) {
219        return new PartyTrainingClassSessionPages(alias, this);
220    }
221
222    @Override
223    public PartyTrainingClassSessionPages as(Table<?> alias) {
224        return new PartyTrainingClassSessionPages(alias.getQualifiedName(), this);
225    }
226
227    /**
228     * Rename this table
229     */
230    @Override
231    public PartyTrainingClassSessionPages rename(String name) {
232        return new PartyTrainingClassSessionPages(DSL.name(name), null);
233    }
234
235    /**
236     * Rename this table
237     */
238    @Override
239    public PartyTrainingClassSessionPages rename(Name name) {
240        return new PartyTrainingClassSessionPages(name, null);
241    }
242
243    /**
244     * Rename this table
245     */
246    @Override
247    public PartyTrainingClassSessionPages rename(Table<?> name) {
248        return new PartyTrainingClassSessionPages(name.getQualifiedName(), null);
249    }
250
251    /**
252     * Create an inline derived table from this table
253     */
254    @Override
255    public PartyTrainingClassSessionPages where(Condition condition) {
256        return new PartyTrainingClassSessionPages(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
257    }
258
259    /**
260     * Create an inline derived table from this table
261     */
262    @Override
263    public PartyTrainingClassSessionPages where(Collection<? extends Condition> conditions) {
264        return where(DSL.and(conditions));
265    }
266
267    /**
268     * Create an inline derived table from this table
269     */
270    @Override
271    public PartyTrainingClassSessionPages where(Condition... conditions) {
272        return where(DSL.and(conditions));
273    }
274
275    /**
276     * Create an inline derived table from this table
277     */
278    @Override
279    public PartyTrainingClassSessionPages where(Field<Boolean> condition) {
280        return where(DSL.condition(condition));
281    }
282
283    /**
284     * Create an inline derived table from this table
285     */
286    @Override
287    @PlainSQL
288    public PartyTrainingClassSessionPages where(SQL condition) {
289        return where(DSL.condition(condition));
290    }
291
292    /**
293     * Create an inline derived table from this table
294     */
295    @Override
296    @PlainSQL
297    public PartyTrainingClassSessionPages where(@Stringly.SQL String condition) {
298        return where(DSL.condition(condition));
299    }
300
301    /**
302     * Create an inline derived table from this table
303     */
304    @Override
305    @PlainSQL
306    public PartyTrainingClassSessionPages where(@Stringly.SQL String condition, Object... binds) {
307        return where(DSL.condition(condition, binds));
308    }
309
310    /**
311     * Create an inline derived table from this table
312     */
313    @Override
314    @PlainSQL
315    public PartyTrainingClassSessionPages where(@Stringly.SQL String condition, QueryPart... parts) {
316        return where(DSL.condition(condition, parts));
317    }
318
319    /**
320     * Create an inline derived table from this table
321     */
322    @Override
323    public PartyTrainingClassSessionPages whereExists(TableLike<?> select) {
324        return where(DSL.exists(select));
325    }
326
327    /**
328     * Create an inline derived table from this table
329     */
330    @Override
331    public PartyTrainingClassSessionPages whereNotExists(TableLike<?> select) {
332        return where(DSL.notExists(select));
333    }
334}