001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.message;
005
006
007import com.echothree.model.data.core.common.pk.MimeTypePK;
008import com.echothree.model.data.message.common.pk.MessageClobPK;
009import com.echothree.model.data.message.common.pk.MessagePK;
010import com.echothree.model.data.party.common.pk.LanguagePK;
011import com.echothree.model.jooq.server.KeyRegistry;
012import com.echothree.model.jooq.server.tables.core.MimeTypes.MimeTypesPath;
013import com.echothree.model.jooq.server.tables.message.Messages.MessagesPath;
014import com.echothree.model.jooq.server.tables.party.Languages.LanguagesPath;
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 MessageClobs extends TableImpl<com.echothree.model.jooq.server.records.message.MessageClobs> {
045
046    private static final long serialVersionUID = 1L;
047
048    /**
049     * The reference instance of <code>messageclobs</code>
050     */
051    public static final MessageClobs MessageClobs = new MessageClobs();
052
053    /**
054     * The class holding records for this type
055     */
056    @Override
057    public Class<com.echothree.model.jooq.server.records.message.MessageClobs> getRecordType() {
058        return com.echothree.model.jooq.server.records.message.MessageClobs.class;
059    }
060
061    /**
062     * The column <code>messageclobs.mssgc_messageclobid</code>.
063     */
064    public final TableField<com.echothree.model.jooq.server.records.message.MessageClobs, MessageClobPK> MESSAGE_CLOB = createField(DSL.name("mssgc_messageclobid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, MessageClobPK.class, id -> new com.echothree.model.data.message.common.pk.MessageClobPK(id), primaryKey -> primaryKey.getEntityId()));
065
066    /**
067     * The column <code>messageclobs.mssgc_mssg_messageid</code>.
068     */
069    public final TableField<com.echothree.model.jooq.server.records.message.MessageClobs, MessagePK> MESSAGE = createField(DSL.name("mssgc_mssg_messageid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, MessagePK.class, id -> new com.echothree.model.data.message.common.pk.MessagePK(id), primaryKey -> primaryKey.getEntityId()));
070
071    /**
072     * The column <code>messageclobs.mssgc_lang_languageid</code>.
073     */
074    public final TableField<com.echothree.model.jooq.server.records.message.MessageClobs, LanguagePK> LANGUAGE = createField(DSL.name("mssgc_lang_languageid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, LanguagePK.class, id -> new com.echothree.model.data.party.common.pk.LanguagePK(id), primaryKey -> primaryKey.getEntityId()));
075
076    /**
077     * The column <code>messageclobs.mssgc_mtyp_mimetypeid</code>.
078     */
079    public final TableField<com.echothree.model.jooq.server.records.message.MessageClobs, MimeTypePK> MIME_TYPE = createField(DSL.name("mssgc_mtyp_mimetypeid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, MimeTypePK.class, id -> new com.echothree.model.data.core.common.pk.MimeTypePK(id), primaryKey -> primaryKey.getEntityId()));
080
081    /**
082     * The column <code>messageclobs.mssgc_clob</code>.
083     */
084    public final TableField<com.echothree.model.jooq.server.records.message.MessageClobs, String> CLOB = createField(DSL.name("mssgc_clob"), SQLDataType.CLOB.nullable(false), this, "");
085
086    /**
087     * The column <code>messageclobs.mssgc_fromtime</code>.
088     */
089    public final TableField<com.echothree.model.jooq.server.records.message.MessageClobs, Long> FROM_TIME = createField(DSL.name("mssgc_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
090
091    /**
092     * The column <code>messageclobs.mssgc_thrutime</code>.
093     */
094    public final TableField<com.echothree.model.jooq.server.records.message.MessageClobs, Long> THRU_TIME = createField(DSL.name("mssgc_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
095
096    private MessageClobs(Name alias, Table<com.echothree.model.jooq.server.records.message.MessageClobs> aliased) {
097        this(alias, aliased, (Field<?>[]) null, null);
098    }
099
100    private MessageClobs(Name alias, Table<com.echothree.model.jooq.server.records.message.MessageClobs> aliased, Field<?>[] parameters, Condition where) {
101        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
102    }
103
104    /**
105     * Create an aliased <code>messageclobs</code> table reference
106     */
107    public MessageClobs(String alias) {
108        this(DSL.name(alias), MessageClobs);
109    }
110
111    /**
112     * Create an aliased <code>messageclobs</code> table reference
113     */
114    public MessageClobs(Name alias) {
115        this(alias, MessageClobs);
116    }
117
118    /**
119     * Create a <code>messageclobs</code> table reference
120     */
121    public MessageClobs() {
122        this(DSL.name("messageclobs"), null);
123    }
124
125    @Override
126    public UniqueKey<com.echothree.model.jooq.server.records.message.MessageClobs> getPrimaryKey() {
127        return KeyRegistry.MESSAGE_CLOBS_PK;
128    }
129
130    @Override
131    public List<UniqueKey<com.echothree.model.jooq.server.records.message.MessageClobs>> getUniqueKeys() {
132        return Arrays.asList(KeyRegistry.MESSAGE_CLOBS_MESSAGE_AND_LANGUAGE_AND_THRU_TIME_UK);
133    }
134
135    @Override
136    public List<ForeignKey<com.echothree.model.jooq.server.records.message.MessageClobs, ?>> getReferences() {
137        return Arrays.asList(KeyRegistry.MESSAGE_CLOBS_LANGUAGE_FK, KeyRegistry.MESSAGE_CLOBS_MESSAGE_FK, KeyRegistry.MESSAGE_CLOBS_MIME_TYPE_FK);
138    }
139
140    private transient LanguagesPath _mssgc_lang_languageid_fk;
141
142    /**
143     * Get the implicit join path to the <code>languages</code> table.
144     */
145    public LanguagesPath mssgc_lang_languageid_fk() {
146        if (_mssgc_lang_languageid_fk == null)
147            _mssgc_lang_languageid_fk = new LanguagesPath(this, KeyRegistry.MESSAGE_CLOBS_LANGUAGE_FK, null);
148
149        return _mssgc_lang_languageid_fk;
150    }
151
152    private transient MessagesPath _mssgc_mssg_messageid_fk;
153
154    /**
155     * Get the implicit join path to the <code>messages</code> table.
156     */
157    public MessagesPath mssgc_mssg_messageid_fk() {
158        if (_mssgc_mssg_messageid_fk == null)
159            _mssgc_mssg_messageid_fk = new MessagesPath(this, KeyRegistry.MESSAGE_CLOBS_MESSAGE_FK, null);
160
161        return _mssgc_mssg_messageid_fk;
162    }
163
164    private transient MimeTypesPath _mssgc_mtyp_mimetypeid_fk;
165
166    /**
167     * Get the implicit join path to the <code>mimetypes</code> table.
168     */
169    public MimeTypesPath mssgc_mtyp_mimetypeid_fk() {
170        if (_mssgc_mtyp_mimetypeid_fk == null)
171            _mssgc_mtyp_mimetypeid_fk = new MimeTypesPath(this, KeyRegistry.MESSAGE_CLOBS_MIME_TYPE_FK, null);
172
173        return _mssgc_mtyp_mimetypeid_fk;
174    }
175
176    @Override
177    public MessageClobs as(String alias) {
178        return new MessageClobs(DSL.name(alias), this);
179    }
180
181    @Override
182    public MessageClobs as(Name alias) {
183        return new MessageClobs(alias, this);
184    }
185
186    @Override
187    public MessageClobs as(Table<?> alias) {
188        return new MessageClobs(alias.getQualifiedName(), this);
189    }
190
191    /**
192     * Rename this table
193     */
194    @Override
195    public MessageClobs rename(String name) {
196        return new MessageClobs(DSL.name(name), null);
197    }
198
199    /**
200     * Rename this table
201     */
202    @Override
203    public MessageClobs rename(Name name) {
204        return new MessageClobs(name, null);
205    }
206
207    /**
208     * Rename this table
209     */
210    @Override
211    public MessageClobs rename(Table<?> name) {
212        return new MessageClobs(name.getQualifiedName(), null);
213    }
214
215    /**
216     * Create an inline derived table from this table
217     */
218    @Override
219    public MessageClobs where(Condition condition) {
220        return new MessageClobs(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 MessageClobs 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 MessageClobs 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 MessageClobs 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 MessageClobs 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 MessageClobs 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 MessageClobs 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 MessageClobs 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 MessageClobs 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 MessageClobs whereNotExists(TableLike<?> select) {
296        return where(DSL.notExists(select));
297    }
298}