001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.geo;
005
006
007import com.echothree.model.data.geo.common.pk.GeoCodeDateTimeFormatPK;
008import com.echothree.model.data.geo.common.pk.GeoCodePK;
009import com.echothree.model.data.party.common.pk.DateTimeFormatPK;
010import com.echothree.model.jooq.server.KeyRegistry;
011import com.echothree.model.jooq.server.tables.geo.GeoCodes.GeoCodesPath;
012import com.echothree.model.jooq.server.tables.party.DateTimeFormats.DateTimeFormatsPath;
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.Name;
023import org.jooq.PlainSQL;
024import org.jooq.QueryPart;
025import org.jooq.SQL;
026import org.jooq.Stringly;
027import org.jooq.Table;
028import org.jooq.TableField;
029import org.jooq.TableLike;
030import org.jooq.TableOptions;
031import org.jooq.UniqueKey;
032import org.jooq.impl.DSL;
033import org.jooq.impl.Internal;
034import org.jooq.impl.SQLDataType;
035import org.jooq.impl.TableImpl;
036
037
038/**
039 * This class is generated by jOOQ.
040 */
041@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
042public class GeoCodeDateTimeFormats extends TableImpl<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats> {
043
044    private static final long serialVersionUID = 1L;
045
046    /**
047     * The reference instance of <code>geocodedatetimeformats</code>
048     */
049    public static final GeoCodeDateTimeFormats GeoCodeDateTimeFormats = new GeoCodeDateTimeFormats();
050
051    /**
052     * The class holding records for this type
053     */
054    @Override
055    public Class<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats> getRecordType() {
056        return com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats.class;
057    }
058
059    /**
060     * The column
061     * <code>geocodedatetimeformats.geodtf_geocodedatetimeformatid</code>.
062     */
063    public final TableField<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats, GeoCodeDateTimeFormatPK> GEO_CODE_DATE_TIME_FORMAT = createField(DSL.name("geodtf_geocodedatetimeformatid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, GeoCodeDateTimeFormatPK.class, id -> new com.echothree.model.data.geo.common.pk.GeoCodeDateTimeFormatPK(id), primaryKey -> primaryKey.getEntityId()));
064
065    /**
066     * The column <code>geocodedatetimeformats.geodtf_geo_geocodeid</code>.
067     */
068    public final TableField<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats, GeoCodePK> GEO_CODE = createField(DSL.name("geodtf_geo_geocodeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, GeoCodePK.class, id -> new com.echothree.model.data.geo.common.pk.GeoCodePK(id), primaryKey -> primaryKey.getEntityId()));
069
070    /**
071     * The column
072     * <code>geocodedatetimeformats.geodtf_dtf_datetimeformatid</code>.
073     */
074    public final TableField<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats, DateTimeFormatPK> DATE_TIME_FORMAT = createField(DSL.name("geodtf_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()));
075
076    /**
077     * The column <code>geocodedatetimeformats.geodtf_isdefault</code>.
078     */
079    public final TableField<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats, Boolean> IS_DEFAULT = createField(DSL.name("geodtf_isdefault"), SQLDataType.BIT.nullable(false), this, "");
080
081    /**
082     * The column <code>geocodedatetimeformats.geodtf_sortorder</code>.
083     */
084    public final TableField<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats, Integer> SORT_ORDER = createField(DSL.name("geodtf_sortorder"), SQLDataType.INTEGER.nullable(false), this, "");
085
086    /**
087     * The column <code>geocodedatetimeformats.geodtf_fromtime</code>.
088     */
089    public final TableField<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats, Long> FROM_TIME = createField(DSL.name("geodtf_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
090
091    /**
092     * The column <code>geocodedatetimeformats.geodtf_thrutime</code>.
093     */
094    public final TableField<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats, Long> THRU_TIME = createField(DSL.name("geodtf_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
095
096    private GeoCodeDateTimeFormats(Name alias, Table<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats> aliased) {
097        this(alias, aliased, (Field<?>[]) null, null);
098    }
099
100    private GeoCodeDateTimeFormats(Name alias, Table<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats> aliased, Field<?>[] parameters, Condition where) {
101        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
102    }
103
104    /**
105     * Create an aliased <code>geocodedatetimeformats</code> table reference
106     */
107    public GeoCodeDateTimeFormats(String alias) {
108        this(DSL.name(alias), GeoCodeDateTimeFormats);
109    }
110
111    /**
112     * Create an aliased <code>geocodedatetimeformats</code> table reference
113     */
114    public GeoCodeDateTimeFormats(Name alias) {
115        this(alias, GeoCodeDateTimeFormats);
116    }
117
118    /**
119     * Create a <code>geocodedatetimeformats</code> table reference
120     */
121    public GeoCodeDateTimeFormats() {
122        this(DSL.name("geocodedatetimeformats"), null);
123    }
124
125    @Override
126    public UniqueKey<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats> getPrimaryKey() {
127        return KeyRegistry.GEO_CODE_DATE_TIME_FORMATS_PK;
128    }
129
130    @Override
131    public List<UniqueKey<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats>> getUniqueKeys() {
132        return Arrays.asList(KeyRegistry.GEO_CODE_DATE_TIME_FORMATS_GEO_CODE_AND_DATE_TIME_FORMAT_AND_THRU_TIME_UK);
133    }
134
135    @Override
136    public List<ForeignKey<com.echothree.model.jooq.server.records.geo.GeoCodeDateTimeFormats, ?>> getReferences() {
137        return Arrays.asList(KeyRegistry.GEO_CODE_DATE_TIME_FORMATS_DATE_TIME_FORMAT_FK, KeyRegistry.GEO_CODE_DATE_TIME_FORMATS_GEO_CODE_FK);
138    }
139
140    private transient DateTimeFormatsPath _geodtf_dtf_datetimeformatid_fk;
141
142    /**
143     * Get the implicit join path to the <code>datetimeformats</code> table.
144     */
145    public DateTimeFormatsPath geodtf_dtf_datetimeformatid_fk() {
146        if (_geodtf_dtf_datetimeformatid_fk == null)
147            _geodtf_dtf_datetimeformatid_fk = new DateTimeFormatsPath(this, KeyRegistry.GEO_CODE_DATE_TIME_FORMATS_DATE_TIME_FORMAT_FK, null);
148
149        return _geodtf_dtf_datetimeformatid_fk;
150    }
151
152    private transient GeoCodesPath _geodtf_geo_geocodeid_fk;
153
154    /**
155     * Get the implicit join path to the <code>geocodes</code> table.
156     */
157    public GeoCodesPath geodtf_geo_geocodeid_fk() {
158        if (_geodtf_geo_geocodeid_fk == null)
159            _geodtf_geo_geocodeid_fk = new GeoCodesPath(this, KeyRegistry.GEO_CODE_DATE_TIME_FORMATS_GEO_CODE_FK, null);
160
161        return _geodtf_geo_geocodeid_fk;
162    }
163
164    @Override
165    public GeoCodeDateTimeFormats as(String alias) {
166        return new GeoCodeDateTimeFormats(DSL.name(alias), this);
167    }
168
169    @Override
170    public GeoCodeDateTimeFormats as(Name alias) {
171        return new GeoCodeDateTimeFormats(alias, this);
172    }
173
174    @Override
175    public GeoCodeDateTimeFormats as(Table<?> alias) {
176        return new GeoCodeDateTimeFormats(alias.getQualifiedName(), this);
177    }
178
179    /**
180     * Rename this table
181     */
182    @Override
183    public GeoCodeDateTimeFormats rename(String name) {
184        return new GeoCodeDateTimeFormats(DSL.name(name), null);
185    }
186
187    /**
188     * Rename this table
189     */
190    @Override
191    public GeoCodeDateTimeFormats rename(Name name) {
192        return new GeoCodeDateTimeFormats(name, null);
193    }
194
195    /**
196     * Rename this table
197     */
198    @Override
199    public GeoCodeDateTimeFormats rename(Table<?> name) {
200        return new GeoCodeDateTimeFormats(name.getQualifiedName(), null);
201    }
202
203    /**
204     * Create an inline derived table from this table
205     */
206    @Override
207    public GeoCodeDateTimeFormats where(Condition condition) {
208        return new GeoCodeDateTimeFormats(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
209    }
210
211    /**
212     * Create an inline derived table from this table
213     */
214    @Override
215    public GeoCodeDateTimeFormats where(Collection<? extends Condition> conditions) {
216        return where(DSL.and(conditions));
217    }
218
219    /**
220     * Create an inline derived table from this table
221     */
222    @Override
223    public GeoCodeDateTimeFormats where(Condition... conditions) {
224        return where(DSL.and(conditions));
225    }
226
227    /**
228     * Create an inline derived table from this table
229     */
230    @Override
231    public GeoCodeDateTimeFormats where(Field<Boolean> condition) {
232        return where(DSL.condition(condition));
233    }
234
235    /**
236     * Create an inline derived table from this table
237     */
238    @Override
239    @PlainSQL
240    public GeoCodeDateTimeFormats where(SQL condition) {
241        return where(DSL.condition(condition));
242    }
243
244    /**
245     * Create an inline derived table from this table
246     */
247    @Override
248    @PlainSQL
249    public GeoCodeDateTimeFormats where(@Stringly.SQL String condition) {
250        return where(DSL.condition(condition));
251    }
252
253    /**
254     * Create an inline derived table from this table
255     */
256    @Override
257    @PlainSQL
258    public GeoCodeDateTimeFormats where(@Stringly.SQL String condition, Object... binds) {
259        return where(DSL.condition(condition, binds));
260    }
261
262    /**
263     * Create an inline derived table from this table
264     */
265    @Override
266    @PlainSQL
267    public GeoCodeDateTimeFormats where(@Stringly.SQL String condition, QueryPart... parts) {
268        return where(DSL.condition(condition, parts));
269    }
270
271    /**
272     * Create an inline derived table from this table
273     */
274    @Override
275    public GeoCodeDateTimeFormats whereExists(TableLike<?> select) {
276        return where(DSL.exists(select));
277    }
278
279    /**
280     * Create an inline derived table from this table
281     */
282    @Override
283    public GeoCodeDateTimeFormats whereNotExists(TableLike<?> select) {
284        return where(DSL.notExists(select));
285    }
286}