001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.party;
005
006
007import com.echothree.model.data.party.common.pk.DateTimeFormatDetailPK;
008import com.echothree.model.data.party.common.pk.DateTimeFormatPK;
009import com.echothree.model.jooq.server.KeyRegistry;
010import com.echothree.model.jooq.server.tables.party.DateTimeFormats.DateTimeFormatsPath;
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.InverseForeignKey;
021import org.jooq.Name;
022import org.jooq.Path;
023import org.jooq.PlainSQL;
024import org.jooq.QueryPart;
025import org.jooq.Record;
026import org.jooq.SQL;
027import org.jooq.Stringly;
028import org.jooq.Table;
029import org.jooq.TableField;
030import org.jooq.TableLike;
031import org.jooq.TableOptions;
032import org.jooq.UniqueKey;
033import org.jooq.impl.DSL;
034import org.jooq.impl.Internal;
035import org.jooq.impl.SQLDataType;
036import org.jooq.impl.TableImpl;
037
038
039/**
040 * This class is generated by jOOQ.
041 */
042@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
043public class DateTimeFormatDetails extends TableImpl<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> {
044
045    private static final long serialVersionUID = 1L;
046
047    /**
048     * The reference instance of <code>datetimeformatdetails</code>
049     */
050    public static final DateTimeFormatDetails DateTimeFormatDetails = new DateTimeFormatDetails();
051
052    /**
053     * The class holding records for this type
054     */
055    @Override
056    public Class<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> getRecordType() {
057        return com.echothree.model.jooq.server.records.party.DateTimeFormatDetails.class;
058    }
059
060    /**
061     * The column
062     * <code>datetimeformatdetails.dtfdt_datetimeformatdetailid</code>.
063     */
064    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, DateTimeFormatDetailPK> DATE_TIME_FORMAT_DETAIL = createField(DSL.name("dtfdt_datetimeformatdetailid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, DateTimeFormatDetailPK.class, id -> new com.echothree.model.data.party.common.pk.DateTimeFormatDetailPK(id), primaryKey -> primaryKey.getEntityId()));
065
066    /**
067     * The column <code>datetimeformatdetails.dtfdt_dtf_datetimeformatid</code>.
068     */
069    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, DateTimeFormatPK> DATE_TIME_FORMAT = createField(DSL.name("dtfdt_dtf_datetimeformatid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, DateTimeFormatPK.class, id -> new com.echothree.model.data.party.common.pk.DateTimeFormatPK(id), primaryKey -> primaryKey.getEntityId()));
070
071    /**
072     * The column <code>datetimeformatdetails.dtfdt_datetimeformatname</code>.
073     */
074    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> DATE_TIME_FORMAT_NAME = createField(DSL.name("dtfdt_datetimeformatname"), SQLDataType.VARCHAR(40).nullable(false), this, "");
075
076    /**
077     * The column <code>datetimeformatdetails.dtfdt_javashortdateformat</code>.
078     */
079    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> JAVA_SHORT_DATE_FORMAT = createField(DSL.name("dtfdt_javashortdateformat"), SQLDataType.VARCHAR(60).nullable(false), this, "");
080
081    /**
082     * The column <code>datetimeformatdetails.dtfdt_javaabbrevdateformat</code>.
083     */
084    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> JAVA_ABBREV_DATE_FORMAT = createField(DSL.name("dtfdt_javaabbrevdateformat"), SQLDataType.VARCHAR(60).nullable(false), this, "");
085
086    /**
087     * The column
088     * <code>datetimeformatdetails.dtfdt_javaabbrevdateformatweekday</code>.
089     */
090    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> JAVA_ABBREV_DATE_FORMAT_WEEKDAY = createField(DSL.name("dtfdt_javaabbrevdateformatweekday"), SQLDataType.VARCHAR(60).nullable(false), this, "");
091
092    /**
093     * The column <code>datetimeformatdetails.dtfdt_javalongdateformat</code>.
094     */
095    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> JAVA_LONG_DATE_FORMAT = createField(DSL.name("dtfdt_javalongdateformat"), SQLDataType.VARCHAR(60).nullable(false), this, "");
096
097    /**
098     * The column
099     * <code>datetimeformatdetails.dtfdt_javalongdateformatweekday</code>.
100     */
101    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> JAVA_LONG_DATE_FORMAT_WEEKDAY = createField(DSL.name("dtfdt_javalongdateformatweekday"), SQLDataType.VARCHAR(60).nullable(false), this, "");
102
103    /**
104     * The column <code>datetimeformatdetails.dtfdt_javatimeformat</code>.
105     */
106    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> JAVA_TIME_FORMAT = createField(DSL.name("dtfdt_javatimeformat"), SQLDataType.VARCHAR(60).nullable(false), this, "");
107
108    /**
109     * The column
110     * <code>datetimeformatdetails.dtfdt_javatimeformatseconds</code>.
111     */
112    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> JAVA_TIME_FORMAT_SECONDS = createField(DSL.name("dtfdt_javatimeformatseconds"), SQLDataType.VARCHAR(60).nullable(false), this, "");
113
114    /**
115     * The column <code>datetimeformatdetails.dtfdt_unixshortdateformat</code>.
116     */
117    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> UNIX_SHORT_DATE_FORMAT = createField(DSL.name("dtfdt_unixshortdateformat"), SQLDataType.VARCHAR(60).nullable(false), this, "");
118
119    /**
120     * The column <code>datetimeformatdetails.dtfdt_unixabbrevdateformat</code>.
121     */
122    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> UNIX_ABBREV_DATE_FORMAT = createField(DSL.name("dtfdt_unixabbrevdateformat"), SQLDataType.VARCHAR(60).nullable(false), this, "");
123
124    /**
125     * The column
126     * <code>datetimeformatdetails.dtfdt_unixabbrevdateformatweekday</code>.
127     */
128    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> UNIX_ABBREV_DATE_FORMAT_WEEKDAY = createField(DSL.name("dtfdt_unixabbrevdateformatweekday"), SQLDataType.VARCHAR(60).nullable(false), this, "");
129
130    /**
131     * The column <code>datetimeformatdetails.dtfdt_unixlongdateformat</code>.
132     */
133    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> UNIX_LONG_DATE_FORMAT = createField(DSL.name("dtfdt_unixlongdateformat"), SQLDataType.VARCHAR(60).nullable(false), this, "");
134
135    /**
136     * The column
137     * <code>datetimeformatdetails.dtfdt_unixlongdateformatweekday</code>.
138     */
139    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> UNIX_LONG_DATE_FORMAT_WEEKDAY = createField(DSL.name("dtfdt_unixlongdateformatweekday"), SQLDataType.VARCHAR(60).nullable(false), this, "");
140
141    /**
142     * The column <code>datetimeformatdetails.dtfdt_unixtimeformat</code>.
143     */
144    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> UNIX_TIME_FORMAT = createField(DSL.name("dtfdt_unixtimeformat"), SQLDataType.VARCHAR(60).nullable(false), this, "");
145
146    /**
147     * The column
148     * <code>datetimeformatdetails.dtfdt_unixtimeformatseconds</code>.
149     */
150    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> UNIX_TIME_FORMAT_SECONDS = createField(DSL.name("dtfdt_unixtimeformatseconds"), SQLDataType.VARCHAR(60).nullable(false), this, "");
151
152    /**
153     * The column <code>datetimeformatdetails.dtfdt_shortdateseparator</code>.
154     */
155    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> SHORT_DATE_SEPARATOR = createField(DSL.name("dtfdt_shortdateseparator"), SQLDataType.VARCHAR(1).nullable(false), this, "");
156
157    /**
158     * The column <code>datetimeformatdetails.dtfdt_timeseparator</code>.
159     */
160    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, String> TIME_SEPARATOR = createField(DSL.name("dtfdt_timeseparator"), SQLDataType.VARCHAR(1).nullable(false), this, "");
161
162    /**
163     * The column <code>datetimeformatdetails.dtfdt_isdefault</code>.
164     */
165    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, Boolean> IS_DEFAULT = createField(DSL.name("dtfdt_isdefault"), SQLDataType.BIT.nullable(false), this, "");
166
167    /**
168     * The column <code>datetimeformatdetails.dtfdt_sortorder</code>.
169     */
170    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, Integer> SORT_ORDER = createField(DSL.name("dtfdt_sortorder"), SQLDataType.INTEGER.nullable(false), this, "");
171
172    /**
173     * The column <code>datetimeformatdetails.dtfdt_fromtime</code>.
174     */
175    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, Long> FROM_TIME = createField(DSL.name("dtfdt_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
176
177    /**
178     * The column <code>datetimeformatdetails.dtfdt_thrutime</code>.
179     */
180    public final TableField<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, Long> THRU_TIME = createField(DSL.name("dtfdt_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
181
182    private DateTimeFormatDetails(Name alias, Table<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> aliased) {
183        this(alias, aliased, (Field<?>[]) null, null);
184    }
185
186    private DateTimeFormatDetails(Name alias, Table<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> aliased, Field<?>[] parameters, Condition where) {
187        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
188    }
189
190    /**
191     * Create an aliased <code>datetimeformatdetails</code> table reference
192     */
193    public DateTimeFormatDetails(String alias) {
194        this(DSL.name(alias), DateTimeFormatDetails);
195    }
196
197    /**
198     * Create an aliased <code>datetimeformatdetails</code> table reference
199     */
200    public DateTimeFormatDetails(Name alias) {
201        this(alias, DateTimeFormatDetails);
202    }
203
204    /**
205     * Create a <code>datetimeformatdetails</code> table reference
206     */
207    public DateTimeFormatDetails() {
208        this(DSL.name("datetimeformatdetails"), null);
209    }
210
211    public <O extends Record> DateTimeFormatDetails(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> parentPath) {
212        super(path, childPath, parentPath, DateTimeFormatDetails);
213    }
214
215    /**
216     * A subtype implementing {@link Path} for simplified path-based joins.
217     */
218    public static class DateTimeFormatDetailsPath extends DateTimeFormatDetails implements Path<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> {
219
220        private static final long serialVersionUID = 1L;
221        public <O extends Record> DateTimeFormatDetailsPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> parentPath) {
222            super(path, childPath, parentPath);
223        }
224        private DateTimeFormatDetailsPath(Name alias, Table<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> aliased) {
225            super(alias, aliased);
226        }
227
228        @Override
229        public DateTimeFormatDetailsPath as(String alias) {
230            return new DateTimeFormatDetailsPath(DSL.name(alias), this);
231        }
232
233        @Override
234        public DateTimeFormatDetailsPath as(Name alias) {
235            return new DateTimeFormatDetailsPath(alias, this);
236        }
237
238        @Override
239        public DateTimeFormatDetailsPath as(Table<?> alias) {
240            return new DateTimeFormatDetailsPath(alias.getQualifiedName(), this);
241        }
242    }
243
244    @Override
245    public UniqueKey<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails> getPrimaryKey() {
246        return KeyRegistry.DATE_TIME_FORMAT_DETAILS_PK;
247    }
248
249    @Override
250    public List<UniqueKey<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails>> getUniqueKeys() {
251        return Arrays.asList(KeyRegistry.DATE_TIME_FORMAT_DETAILS_DATE_TIME_FORMAT_AND_THRU_TIME_UK, KeyRegistry.DATE_TIME_FORMAT_DETAILS_DATE_TIME_FORMAT_NAME_AND_THRU_TIME_UK);
252    }
253
254    @Override
255    public List<ForeignKey<com.echothree.model.jooq.server.records.party.DateTimeFormatDetails, ?>> getReferences() {
256        return Arrays.asList(KeyRegistry.DATE_TIME_FORMAT_DETAILS_DATE_TIME_FORMAT_FK);
257    }
258
259    private transient DateTimeFormatsPath _dtfdt_dtf_datetimeformatid_fk;
260
261    /**
262     * Get the implicit join path to the <code>datetimeformats</code> table.
263     */
264    public DateTimeFormatsPath dtfdt_dtf_datetimeformatid_fk() {
265        if (_dtfdt_dtf_datetimeformatid_fk == null)
266            _dtfdt_dtf_datetimeformatid_fk = new DateTimeFormatsPath(this, KeyRegistry.DATE_TIME_FORMAT_DETAILS_DATE_TIME_FORMAT_FK, null);
267
268        return _dtfdt_dtf_datetimeformatid_fk;
269    }
270
271    @Override
272    public DateTimeFormatDetails as(String alias) {
273        return new DateTimeFormatDetails(DSL.name(alias), this);
274    }
275
276    @Override
277    public DateTimeFormatDetails as(Name alias) {
278        return new DateTimeFormatDetails(alias, this);
279    }
280
281    @Override
282    public DateTimeFormatDetails as(Table<?> alias) {
283        return new DateTimeFormatDetails(alias.getQualifiedName(), this);
284    }
285
286    /**
287     * Rename this table
288     */
289    @Override
290    public DateTimeFormatDetails rename(String name) {
291        return new DateTimeFormatDetails(DSL.name(name), null);
292    }
293
294    /**
295     * Rename this table
296     */
297    @Override
298    public DateTimeFormatDetails rename(Name name) {
299        return new DateTimeFormatDetails(name, null);
300    }
301
302    /**
303     * Rename this table
304     */
305    @Override
306    public DateTimeFormatDetails rename(Table<?> name) {
307        return new DateTimeFormatDetails(name.getQualifiedName(), null);
308    }
309
310    /**
311     * Create an inline derived table from this table
312     */
313    @Override
314    public DateTimeFormatDetails where(Condition condition) {
315        return new DateTimeFormatDetails(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
316    }
317
318    /**
319     * Create an inline derived table from this table
320     */
321    @Override
322    public DateTimeFormatDetails where(Collection<? extends Condition> conditions) {
323        return where(DSL.and(conditions));
324    }
325
326    /**
327     * Create an inline derived table from this table
328     */
329    @Override
330    public DateTimeFormatDetails where(Condition... conditions) {
331        return where(DSL.and(conditions));
332    }
333
334    /**
335     * Create an inline derived table from this table
336     */
337    @Override
338    public DateTimeFormatDetails where(Field<Boolean> condition) {
339        return where(DSL.condition(condition));
340    }
341
342    /**
343     * Create an inline derived table from this table
344     */
345    @Override
346    @PlainSQL
347    public DateTimeFormatDetails where(SQL condition) {
348        return where(DSL.condition(condition));
349    }
350
351    /**
352     * Create an inline derived table from this table
353     */
354    @Override
355    @PlainSQL
356    public DateTimeFormatDetails where(@Stringly.SQL String condition) {
357        return where(DSL.condition(condition));
358    }
359
360    /**
361     * Create an inline derived table from this table
362     */
363    @Override
364    @PlainSQL
365    public DateTimeFormatDetails where(@Stringly.SQL String condition, Object... binds) {
366        return where(DSL.condition(condition, binds));
367    }
368
369    /**
370     * Create an inline derived table from this table
371     */
372    @Override
373    @PlainSQL
374    public DateTimeFormatDetails where(@Stringly.SQL String condition, QueryPart... parts) {
375        return where(DSL.condition(condition, parts));
376    }
377
378    /**
379     * Create an inline derived table from this table
380     */
381    @Override
382    public DateTimeFormatDetails whereExists(TableLike<?> select) {
383        return where(DSL.exists(select));
384    }
385
386    /**
387     * Create an inline derived table from this table
388     */
389    @Override
390    public DateTimeFormatDetails whereNotExists(TableLike<?> select) {
391        return where(DSL.notExists(select));
392    }
393}