001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.document;
005
006
007import com.echothree.model.data.document.common.pk.DocumentClobPK;
008import com.echothree.model.data.document.common.pk.DocumentPK;
009import com.echothree.model.jooq.server.KeyRegistry;
010import com.echothree.model.jooq.server.tables.document.Documents.DocumentsPath;
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 DocumentClobs extends TableImpl<com.echothree.model.jooq.server.records.document.DocumentClobs> {
041
042    private static final long serialVersionUID = 1L;
043
044    /**
045     * The reference instance of <code>documentclobs</code>
046     */
047    public static final DocumentClobs DocumentClobs = new DocumentClobs();
048
049    /**
050     * The class holding records for this type
051     */
052    @Override
053    public Class<com.echothree.model.jooq.server.records.document.DocumentClobs> getRecordType() {
054        return com.echothree.model.jooq.server.records.document.DocumentClobs.class;
055    }
056
057    /**
058     * The column <code>documentclobs.dcmntc_documentclobid</code>.
059     */
060    public final TableField<com.echothree.model.jooq.server.records.document.DocumentClobs, DocumentClobPK> DOCUMENT_CLOB = createField(DSL.name("dcmntc_documentclobid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, DocumentClobPK.class, id -> new com.echothree.model.data.document.common.pk.DocumentClobPK(id), primaryKey -> primaryKey.getEntityId()));
061
062    /**
063     * The column <code>documentclobs.dcmntc_dcmnt_documentid</code>.
064     */
065    public final TableField<com.echothree.model.jooq.server.records.document.DocumentClobs, DocumentPK> DOCUMENT = createField(DSL.name("dcmntc_dcmnt_documentid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, DocumentPK.class, id -> new com.echothree.model.data.document.common.pk.DocumentPK(id), primaryKey -> primaryKey.getEntityId()));
066
067    /**
068     * The column <code>documentclobs.dcmntc_clob</code>.
069     */
070    public final TableField<com.echothree.model.jooq.server.records.document.DocumentClobs, String> CLOB = createField(DSL.name("dcmntc_clob"), SQLDataType.CLOB.nullable(false), this, "");
071
072    /**
073     * The column <code>documentclobs.dcmntc_fromtime</code>.
074     */
075    public final TableField<com.echothree.model.jooq.server.records.document.DocumentClobs, Long> FROM_TIME = createField(DSL.name("dcmntc_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
076
077    /**
078     * The column <code>documentclobs.dcmntc_thrutime</code>.
079     */
080    public final TableField<com.echothree.model.jooq.server.records.document.DocumentClobs, Long> THRU_TIME = createField(DSL.name("dcmntc_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
081
082    private DocumentClobs(Name alias, Table<com.echothree.model.jooq.server.records.document.DocumentClobs> aliased) {
083        this(alias, aliased, (Field<?>[]) null, null);
084    }
085
086    private DocumentClobs(Name alias, Table<com.echothree.model.jooq.server.records.document.DocumentClobs> aliased, Field<?>[] parameters, Condition where) {
087        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
088    }
089
090    /**
091     * Create an aliased <code>documentclobs</code> table reference
092     */
093    public DocumentClobs(String alias) {
094        this(DSL.name(alias), DocumentClobs);
095    }
096
097    /**
098     * Create an aliased <code>documentclobs</code> table reference
099     */
100    public DocumentClobs(Name alias) {
101        this(alias, DocumentClobs);
102    }
103
104    /**
105     * Create a <code>documentclobs</code> table reference
106     */
107    public DocumentClobs() {
108        this(DSL.name("documentclobs"), null);
109    }
110
111    @Override
112    public UniqueKey<com.echothree.model.jooq.server.records.document.DocumentClobs> getPrimaryKey() {
113        return KeyRegistry.DOCUMENT_CLOBS_PK;
114    }
115
116    @Override
117    public List<UniqueKey<com.echothree.model.jooq.server.records.document.DocumentClobs>> getUniqueKeys() {
118        return Arrays.asList(KeyRegistry.DOCUMENT_CLOBS_DOCUMENT_AND_THRU_TIME_UK);
119    }
120
121    @Override
122    public List<ForeignKey<com.echothree.model.jooq.server.records.document.DocumentClobs, ?>> getReferences() {
123        return Arrays.asList(KeyRegistry.DOCUMENT_CLOBS_DOCUMENT_FK);
124    }
125
126    private transient DocumentsPath _dcmntc_dcmnt_documentid_fk;
127
128    /**
129     * Get the implicit join path to the <code>documents</code> table.
130     */
131    public DocumentsPath dcmntc_dcmnt_documentid_fk() {
132        if (_dcmntc_dcmnt_documentid_fk == null)
133            _dcmntc_dcmnt_documentid_fk = new DocumentsPath(this, KeyRegistry.DOCUMENT_CLOBS_DOCUMENT_FK, null);
134
135        return _dcmntc_dcmnt_documentid_fk;
136    }
137
138    @Override
139    public DocumentClobs as(String alias) {
140        return new DocumentClobs(DSL.name(alias), this);
141    }
142
143    @Override
144    public DocumentClobs as(Name alias) {
145        return new DocumentClobs(alias, this);
146    }
147
148    @Override
149    public DocumentClobs as(Table<?> alias) {
150        return new DocumentClobs(alias.getQualifiedName(), this);
151    }
152
153    /**
154     * Rename this table
155     */
156    @Override
157    public DocumentClobs rename(String name) {
158        return new DocumentClobs(DSL.name(name), null);
159    }
160
161    /**
162     * Rename this table
163     */
164    @Override
165    public DocumentClobs rename(Name name) {
166        return new DocumentClobs(name, null);
167    }
168
169    /**
170     * Rename this table
171     */
172    @Override
173    public DocumentClobs rename(Table<?> name) {
174        return new DocumentClobs(name.getQualifiedName(), null);
175    }
176
177    /**
178     * Create an inline derived table from this table
179     */
180    @Override
181    public DocumentClobs where(Condition condition) {
182        return new DocumentClobs(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
183    }
184
185    /**
186     * Create an inline derived table from this table
187     */
188    @Override
189    public DocumentClobs where(Collection<? extends Condition> conditions) {
190        return where(DSL.and(conditions));
191    }
192
193    /**
194     * Create an inline derived table from this table
195     */
196    @Override
197    public DocumentClobs where(Condition... conditions) {
198        return where(DSL.and(conditions));
199    }
200
201    /**
202     * Create an inline derived table from this table
203     */
204    @Override
205    public DocumentClobs where(Field<Boolean> condition) {
206        return where(DSL.condition(condition));
207    }
208
209    /**
210     * Create an inline derived table from this table
211     */
212    @Override
213    @PlainSQL
214    public DocumentClobs where(SQL condition) {
215        return where(DSL.condition(condition));
216    }
217
218    /**
219     * Create an inline derived table from this table
220     */
221    @Override
222    @PlainSQL
223    public DocumentClobs where(@Stringly.SQL String condition) {
224        return where(DSL.condition(condition));
225    }
226
227    /**
228     * Create an inline derived table from this table
229     */
230    @Override
231    @PlainSQL
232    public DocumentClobs where(@Stringly.SQL String condition, Object... binds) {
233        return where(DSL.condition(condition, binds));
234    }
235
236    /**
237     * Create an inline derived table from this table
238     */
239    @Override
240    @PlainSQL
241    public DocumentClobs where(@Stringly.SQL String condition, QueryPart... parts) {
242        return where(DSL.condition(condition, parts));
243    }
244
245    /**
246     * Create an inline derived table from this table
247     */
248    @Override
249    public DocumentClobs whereExists(TableLike<?> select) {
250        return where(DSL.exists(select));
251    }
252
253    /**
254     * Create an inline derived table from this table
255     */
256    @Override
257    public DocumentClobs whereNotExists(TableLike<?> select) {
258        return where(DSL.notExists(select));
259    }
260}