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