001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.inventory;
005
006
007import com.echothree.model.data.inventory.common.pk.InventoryConditionPK;
008import com.echothree.model.data.inventory.common.pk.InventoryTransactionLinePK;
009import com.echothree.model.data.inventory.common.pk.InventoryTransactionLineSourcePK;
010import com.echothree.model.data.party.common.pk.PartyPK;
011import com.echothree.model.data.uom.common.pk.UnitOfMeasureTypePK;
012import com.echothree.model.data.warehouse.common.pk.LocationPK;
013import com.echothree.model.jooq.server.KeyRegistry;
014import com.echothree.model.jooq.server.tables.inventory.InventoryConditions.InventoryConditionsPath;
015import com.echothree.model.jooq.server.tables.inventory.InventoryTransactionLines.InventoryTransactionLinesPath;
016import com.echothree.model.jooq.server.tables.party.Parties.PartiesPath;
017import com.echothree.model.jooq.server.tables.uom.UnitOfMeasureTypes.UnitOfMeasureTypesPath;
018import com.echothree.model.jooq.server.tables.warehouse.Locations.LocationsPath;
019
020import java.util.Arrays;
021import java.util.Collection;
022import java.util.List;
023
024import org.jooq.Condition;
025import org.jooq.Converter;
026import org.jooq.Field;
027import org.jooq.ForeignKey;
028import org.jooq.Name;
029import org.jooq.PlainSQL;
030import org.jooq.QueryPart;
031import org.jooq.SQL;
032import org.jooq.Stringly;
033import org.jooq.Table;
034import org.jooq.TableField;
035import org.jooq.TableLike;
036import org.jooq.TableOptions;
037import org.jooq.UniqueKey;
038import org.jooq.impl.DSL;
039import org.jooq.impl.Internal;
040import org.jooq.impl.SQLDataType;
041import org.jooq.impl.TableImpl;
042
043
044/**
045 * This class is generated by jOOQ.
046 */
047@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
048public class InventoryTransactionLineSources extends TableImpl<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources> {
049
050    private static final long serialVersionUID = 1L;
051
052    /**
053     * The reference instance of <code>inventorytransactionlinesources</code>
054     */
055    public static final InventoryTransactionLineSources InventoryTransactionLineSources = new InventoryTransactionLineSources();
056
057    /**
058     * The class holding records for this type
059     */
060    @Override
061    public Class<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources> getRecordType() {
062        return com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources.class;
063    }
064
065    /**
066     * The column
067     * <code>inventorytransactionlinesources.invtrxlsrc_inventorytransactionlinesourceid</code>.
068     */
069    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, InventoryTransactionLineSourcePK> INVENTORY_TRANSACTION_LINE_SOURCE = createField(DSL.name("invtrxlsrc_inventorytransactionlinesourceid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryTransactionLineSourcePK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryTransactionLineSourcePK(id), primaryKey -> primaryKey.getEntityId()));
070
071    /**
072     * The column
073     * <code>inventorytransactionlinesources.invtrxlsrc_invtrxl_inventorytransactionlineid</code>.
074     */
075    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, InventoryTransactionLinePK> INVENTORY_TRANSACTION_LINE = createField(DSL.name("invtrxlsrc_invtrxl_inventorytransactionlineid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryTransactionLinePK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryTransactionLinePK(id), primaryKey -> primaryKey.getEntityId()));
076
077    /**
078     * The column
079     * <code>inventorytransactionlinesources.invtrxlsrc_sourceownerpartyid</code>.
080     */
081    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, PartyPK> SOURCE_OWNER_PARTY = createField(DSL.name("invtrxlsrc_sourceownerpartyid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, PartyPK.class, id -> new com.echothree.model.data.party.common.pk.PartyPK(id), primaryKey -> primaryKey.getEntityId()));
082
083    /**
084     * The column
085     * <code>inventorytransactionlinesources.invtrxlsrc_sourcelocationid</code>.
086     */
087    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, LocationPK> SOURCE_LOCATION = createField(DSL.name("invtrxlsrc_sourcelocationid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, LocationPK.class, id -> new com.echothree.model.data.warehouse.common.pk.LocationPK(id), primaryKey -> primaryKey.getEntityId()));
088
089    /**
090     * The column
091     * <code>inventorytransactionlinesources.invtrxlsrc_sourceinventoryconditionid</code>.
092     */
093    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, InventoryConditionPK> SOURCE_INVENTORY_CONDITION = createField(DSL.name("invtrxlsrc_sourceinventoryconditionid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, InventoryConditionPK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryConditionPK(id), primaryKey -> primaryKey.getEntityId()));
094
095    /**
096     * The column
097     * <code>inventorytransactionlinesources.invtrxlsrc_sourceunitofmeasuretypeid</code>.
098     */
099    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, UnitOfMeasureTypePK> SOURCE_UNIT_OF_MEASURE_TYPE = createField(DSL.name("invtrxlsrc_sourceunitofmeasuretypeid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, UnitOfMeasureTypePK.class, id -> new com.echothree.model.data.uom.common.pk.UnitOfMeasureTypePK(id), primaryKey -> primaryKey.getEntityId()));
100
101    /**
102     * The column
103     * <code>inventorytransactionlinesources.invtrxlsrc_fromtime</code>.
104     */
105    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, Long> FROM_TIME = createField(DSL.name("invtrxlsrc_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
106
107    /**
108     * The column
109     * <code>inventorytransactionlinesources.invtrxlsrc_thrutime</code>.
110     */
111    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, Long> THRU_TIME = createField(DSL.name("invtrxlsrc_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
112
113    private InventoryTransactionLineSources(Name alias, Table<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources> aliased) {
114        this(alias, aliased, (Field<?>[]) null, null);
115    }
116
117    private InventoryTransactionLineSources(Name alias, Table<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources> aliased, Field<?>[] parameters, Condition where) {
118        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
119    }
120
121    /**
122     * Create an aliased <code>inventorytransactionlinesources</code> table
123     * reference
124     */
125    public InventoryTransactionLineSources(String alias) {
126        this(DSL.name(alias), InventoryTransactionLineSources);
127    }
128
129    /**
130     * Create an aliased <code>inventorytransactionlinesources</code> table
131     * reference
132     */
133    public InventoryTransactionLineSources(Name alias) {
134        this(alias, InventoryTransactionLineSources);
135    }
136
137    /**
138     * Create a <code>inventorytransactionlinesources</code> table reference
139     */
140    public InventoryTransactionLineSources() {
141        this(DSL.name("inventorytransactionlinesources"), null);
142    }
143
144    @Override
145    public UniqueKey<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources> getPrimaryKey() {
146        return KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_PK;
147    }
148
149    @Override
150    public List<UniqueKey<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources>> getUniqueKeys() {
151        return Arrays.asList(KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_INVENTORY_TRANSACTION_LINE_AND_THRU_TIME_UK);
152    }
153
154    @Override
155    public List<ForeignKey<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineSources, ?>> getReferences() {
156        return Arrays.asList(KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_INVENTORY_TRANSACTION_LINE_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_SOURCE_INVENTORY_CONDITION_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_SOURCE_LOCATION_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_SOURCE_OWNER_PARTY_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_SOURCE_UNIT_OF_MEASURE_TYPE_FK);
157    }
158
159    private transient InventoryTransactionLinesPath _invtrxlsrc_invtrxl_inventorytransactionlineid_fk;
160
161    /**
162     * Get the implicit join path to the <code>inventorytransactionlines</code>
163     * table.
164     */
165    public InventoryTransactionLinesPath invtrxlsrc_invtrxl_inventorytransactionlineid_fk() {
166        if (_invtrxlsrc_invtrxl_inventorytransactionlineid_fk == null)
167            _invtrxlsrc_invtrxl_inventorytransactionlineid_fk = new InventoryTransactionLinesPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_INVENTORY_TRANSACTION_LINE_FK, null);
168
169        return _invtrxlsrc_invtrxl_inventorytransactionlineid_fk;
170    }
171
172    private transient InventoryConditionsPath _invtrxlsrc_sourceinventoryconditionid_fk;
173
174    /**
175     * Get the implicit join path to the <code>inventoryconditions</code> table.
176     */
177    public InventoryConditionsPath invtrxlsrc_sourceinventoryconditionid_fk() {
178        if (_invtrxlsrc_sourceinventoryconditionid_fk == null)
179            _invtrxlsrc_sourceinventoryconditionid_fk = new InventoryConditionsPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_SOURCE_INVENTORY_CONDITION_FK, null);
180
181        return _invtrxlsrc_sourceinventoryconditionid_fk;
182    }
183
184    private transient LocationsPath _invtrxlsrc_sourcelocationid_fk;
185
186    /**
187     * Get the implicit join path to the <code>locations</code> table.
188     */
189    public LocationsPath invtrxlsrc_sourcelocationid_fk() {
190        if (_invtrxlsrc_sourcelocationid_fk == null)
191            _invtrxlsrc_sourcelocationid_fk = new LocationsPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_SOURCE_LOCATION_FK, null);
192
193        return _invtrxlsrc_sourcelocationid_fk;
194    }
195
196    private transient PartiesPath _invtrxlsrc_sourceownerpartyid_fk;
197
198    /**
199     * Get the implicit join path to the <code>parties</code> table.
200     */
201    public PartiesPath invtrxlsrc_sourceownerpartyid_fk() {
202        if (_invtrxlsrc_sourceownerpartyid_fk == null)
203            _invtrxlsrc_sourceownerpartyid_fk = new PartiesPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_SOURCE_OWNER_PARTY_FK, null);
204
205        return _invtrxlsrc_sourceownerpartyid_fk;
206    }
207
208    private transient UnitOfMeasureTypesPath _invtrxlsrc_sourceunitofmeasuretypeid_fk;
209
210    /**
211     * Get the implicit join path to the <code>unitofmeasuretypes</code> table.
212     */
213    public UnitOfMeasureTypesPath invtrxlsrc_sourceunitofmeasuretypeid_fk() {
214        if (_invtrxlsrc_sourceunitofmeasuretypeid_fk == null)
215            _invtrxlsrc_sourceunitofmeasuretypeid_fk = new UnitOfMeasureTypesPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_SOURCES_SOURCE_UNIT_OF_MEASURE_TYPE_FK, null);
216
217        return _invtrxlsrc_sourceunitofmeasuretypeid_fk;
218    }
219
220    @Override
221    public InventoryTransactionLineSources as(String alias) {
222        return new InventoryTransactionLineSources(DSL.name(alias), this);
223    }
224
225    @Override
226    public InventoryTransactionLineSources as(Name alias) {
227        return new InventoryTransactionLineSources(alias, this);
228    }
229
230    @Override
231    public InventoryTransactionLineSources as(Table<?> alias) {
232        return new InventoryTransactionLineSources(alias.getQualifiedName(), this);
233    }
234
235    /**
236     * Rename this table
237     */
238    @Override
239    public InventoryTransactionLineSources rename(String name) {
240        return new InventoryTransactionLineSources(DSL.name(name), null);
241    }
242
243    /**
244     * Rename this table
245     */
246    @Override
247    public InventoryTransactionLineSources rename(Name name) {
248        return new InventoryTransactionLineSources(name, null);
249    }
250
251    /**
252     * Rename this table
253     */
254    @Override
255    public InventoryTransactionLineSources rename(Table<?> name) {
256        return new InventoryTransactionLineSources(name.getQualifiedName(), null);
257    }
258
259    /**
260     * Create an inline derived table from this table
261     */
262    @Override
263    public InventoryTransactionLineSources where(Condition condition) {
264        return new InventoryTransactionLineSources(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
265    }
266
267    /**
268     * Create an inline derived table from this table
269     */
270    @Override
271    public InventoryTransactionLineSources where(Collection<? extends Condition> conditions) {
272        return where(DSL.and(conditions));
273    }
274
275    /**
276     * Create an inline derived table from this table
277     */
278    @Override
279    public InventoryTransactionLineSources where(Condition... conditions) {
280        return where(DSL.and(conditions));
281    }
282
283    /**
284     * Create an inline derived table from this table
285     */
286    @Override
287    public InventoryTransactionLineSources where(Field<Boolean> condition) {
288        return where(DSL.condition(condition));
289    }
290
291    /**
292     * Create an inline derived table from this table
293     */
294    @Override
295    @PlainSQL
296    public InventoryTransactionLineSources where(SQL condition) {
297        return where(DSL.condition(condition));
298    }
299
300    /**
301     * Create an inline derived table from this table
302     */
303    @Override
304    @PlainSQL
305    public InventoryTransactionLineSources where(@Stringly.SQL String condition) {
306        return where(DSL.condition(condition));
307    }
308
309    /**
310     * Create an inline derived table from this table
311     */
312    @Override
313    @PlainSQL
314    public InventoryTransactionLineSources where(@Stringly.SQL String condition, Object... binds) {
315        return where(DSL.condition(condition, binds));
316    }
317
318    /**
319     * Create an inline derived table from this table
320     */
321    @Override
322    @PlainSQL
323    public InventoryTransactionLineSources where(@Stringly.SQL String condition, QueryPart... parts) {
324        return where(DSL.condition(condition, parts));
325    }
326
327    /**
328     * Create an inline derived table from this table
329     */
330    @Override
331    public InventoryTransactionLineSources whereExists(TableLike<?> select) {
332        return where(DSL.exists(select));
333    }
334
335    /**
336     * Create an inline derived table from this table
337     */
338    @Override
339    public InventoryTransactionLineSources whereNotExists(TableLike<?> select) {
340        return where(DSL.notExists(select));
341    }
342}