001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.item;
005
006
007import com.echothree.model.data.inventory.common.pk.InventoryConditionPK;
008import com.echothree.model.data.item.common.pk.ItemKitMemberPK;
009import com.echothree.model.data.item.common.pk.ItemPK;
010import com.echothree.model.data.uom.common.pk.UnitOfMeasureTypePK;
011import com.echothree.model.jooq.server.KeyRegistry;
012import com.echothree.model.jooq.server.tables.inventory.InventoryConditions.InventoryConditionsPath;
013import com.echothree.model.jooq.server.tables.item.Items.ItemsPath;
014import com.echothree.model.jooq.server.tables.uom.UnitOfMeasureTypes.UnitOfMeasureTypesPath;
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 ItemKitMembers extends TableImpl<com.echothree.model.jooq.server.records.item.ItemKitMembers> {
045
046    private static final long serialVersionUID = 1L;
047
048    /**
049     * The reference instance of <code>itemkitmembers</code>
050     */
051    public static final ItemKitMembers ItemKitMembers = new ItemKitMembers();
052
053    /**
054     * The class holding records for this type
055     */
056    @Override
057    public Class<com.echothree.model.jooq.server.records.item.ItemKitMembers> getRecordType() {
058        return com.echothree.model.jooq.server.records.item.ItemKitMembers.class;
059    }
060
061    /**
062     * The column <code>itemkitmembers.ikm_itemkitmemberid</code>.
063     */
064    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, ItemKitMemberPK> ITEM_KIT_MEMBER = createField(DSL.name("ikm_itemkitmemberid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, ItemKitMemberPK.class, id -> new com.echothree.model.data.item.common.pk.ItemKitMemberPK(id), primaryKey -> primaryKey.getEntityId()));
065
066    /**
067     * The column <code>itemkitmembers.ikm_itm_itemid</code>.
068     */
069    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, ItemPK> ITEM = createField(DSL.name("ikm_itm_itemid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, ItemPK.class, id -> new com.echothree.model.data.item.common.pk.ItemPK(id), primaryKey -> primaryKey.getEntityId()));
070
071    /**
072     * The column <code>itemkitmembers.ikm_invcon_inventoryconditionid</code>.
073     */
074    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, InventoryConditionPK> INVENTORY_CONDITION = createField(DSL.name("ikm_invcon_inventoryconditionid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryConditionPK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryConditionPK(id), primaryKey -> primaryKey.getEntityId()));
075
076    /**
077     * The column <code>itemkitmembers.ikm_uomt_unitofmeasuretypeid</code>.
078     */
079    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, UnitOfMeasureTypePK> UNIT_OF_MEASURE_TYPE = createField(DSL.name("ikm_uomt_unitofmeasuretypeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, UnitOfMeasureTypePK.class, id -> new com.echothree.model.data.uom.common.pk.UnitOfMeasureTypePK(id), primaryKey -> primaryKey.getEntityId()));
080
081    /**
082     * The column <code>itemkitmembers.ikm_memberitemid</code>.
083     */
084    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, ItemPK> MEMBER_ITEM = createField(DSL.name("ikm_memberitemid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, ItemPK.class, id -> new com.echothree.model.data.item.common.pk.ItemPK(id), primaryKey -> primaryKey.getEntityId()));
085
086    /**
087     * The column <code>itemkitmembers.ikm_memberinventoryconditionid</code>.
088     */
089    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, InventoryConditionPK> MEMBER_INVENTORY_CONDITION = createField(DSL.name("ikm_memberinventoryconditionid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryConditionPK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryConditionPK(id), primaryKey -> primaryKey.getEntityId()));
090
091    /**
092     * The column <code>itemkitmembers.ikm_memberunitofmeasuretypeid</code>.
093     */
094    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, UnitOfMeasureTypePK> MEMBER_UNIT_OF_MEASURE_TYPE = createField(DSL.name("ikm_memberunitofmeasuretypeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, UnitOfMeasureTypePK.class, id -> new com.echothree.model.data.uom.common.pk.UnitOfMeasureTypePK(id), primaryKey -> primaryKey.getEntityId()));
095
096    /**
097     * The column <code>itemkitmembers.ikm_quantity</code>.
098     */
099    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, Long> QUANTITY = createField(DSL.name("ikm_quantity"), SQLDataType.BIGINT, this, "");
100
101    /**
102     * The column <code>itemkitmembers.ikm_fromtime</code>.
103     */
104    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, Long> FROM_TIME = createField(DSL.name("ikm_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
105
106    /**
107     * The column <code>itemkitmembers.ikm_thrutime</code>.
108     */
109    public final TableField<com.echothree.model.jooq.server.records.item.ItemKitMembers, Long> THRU_TIME = createField(DSL.name("ikm_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
110
111    private ItemKitMembers(Name alias, Table<com.echothree.model.jooq.server.records.item.ItemKitMembers> aliased) {
112        this(alias, aliased, (Field<?>[]) null, null);
113    }
114
115    private ItemKitMembers(Name alias, Table<com.echothree.model.jooq.server.records.item.ItemKitMembers> aliased, Field<?>[] parameters, Condition where) {
116        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
117    }
118
119    /**
120     * Create an aliased <code>itemkitmembers</code> table reference
121     */
122    public ItemKitMembers(String alias) {
123        this(DSL.name(alias), ItemKitMembers);
124    }
125
126    /**
127     * Create an aliased <code>itemkitmembers</code> table reference
128     */
129    public ItemKitMembers(Name alias) {
130        this(alias, ItemKitMembers);
131    }
132
133    /**
134     * Create a <code>itemkitmembers</code> table reference
135     */
136    public ItemKitMembers() {
137        this(DSL.name("itemkitmembers"), null);
138    }
139
140    @Override
141    public UniqueKey<com.echothree.model.jooq.server.records.item.ItemKitMembers> getPrimaryKey() {
142        return KeyRegistry.ITEM_KIT_MEMBERS_PK;
143    }
144
145    @Override
146    public List<UniqueKey<com.echothree.model.jooq.server.records.item.ItemKitMembers>> getUniqueKeys() {
147        return Arrays.asList(KeyRegistry.ITEM_KIT_MEMBERS_ITEM_AND_INVENTORY_CONDITION_AND_UNIT_OF_MEASURE_TYPE_AND_MEMBER_ITEM_AND_MEMBER_INVENTORY_CONDITION_AND_MEMBER_UNIT_OF_MEASURE_TYPE_AND_THRU_TIME_UK);
148    }
149
150    @Override
151    public List<ForeignKey<com.echothree.model.jooq.server.records.item.ItemKitMembers, ?>> getReferences() {
152        return Arrays.asList(KeyRegistry.ITEM_KIT_MEMBERS_INVENTORY_CONDITION_FK, KeyRegistry.ITEM_KIT_MEMBERS_ITEM_FK, KeyRegistry.ITEM_KIT_MEMBERS_MEMBER_INVENTORY_CONDITION_FK, KeyRegistry.ITEM_KIT_MEMBERS_MEMBER_ITEM_FK, KeyRegistry.ITEM_KIT_MEMBERS_MEMBER_UNIT_OF_MEASURE_TYPE_FK, KeyRegistry.ITEM_KIT_MEMBERS_UNIT_OF_MEASURE_TYPE_FK);
153    }
154
155    private transient InventoryConditionsPath _ikm_invcon_inventoryconditionid_fk;
156
157    /**
158     * Get the implicit join path to the <code>inventoryconditions</code> table,
159     * via the <code>ikm_invcon_inventoryconditionid_fk</code> key.
160     */
161    public InventoryConditionsPath ikm_invcon_inventoryconditionid_fk() {
162        if (_ikm_invcon_inventoryconditionid_fk == null)
163            _ikm_invcon_inventoryconditionid_fk = new InventoryConditionsPath(this, KeyRegistry.ITEM_KIT_MEMBERS_INVENTORY_CONDITION_FK, null);
164
165        return _ikm_invcon_inventoryconditionid_fk;
166    }
167
168    private transient ItemsPath _ikm_itm_itemid_fk;
169
170    /**
171     * Get the implicit join path to the <code>items</code> table, via the
172     * <code>ikm_itm_itemid_fk</code> key.
173     */
174    public ItemsPath ikm_itm_itemid_fk() {
175        if (_ikm_itm_itemid_fk == null)
176            _ikm_itm_itemid_fk = new ItemsPath(this, KeyRegistry.ITEM_KIT_MEMBERS_ITEM_FK, null);
177
178        return _ikm_itm_itemid_fk;
179    }
180
181    private transient InventoryConditionsPath _ikm_memberinventoryconditionid_fk;
182
183    /**
184     * Get the implicit join path to the <code>inventoryconditions</code> table,
185     * via the <code>ikm_memberinventoryconditionid_fk</code> key.
186     */
187    public InventoryConditionsPath ikm_memberinventoryconditionid_fk() {
188        if (_ikm_memberinventoryconditionid_fk == null)
189            _ikm_memberinventoryconditionid_fk = new InventoryConditionsPath(this, KeyRegistry.ITEM_KIT_MEMBERS_MEMBER_INVENTORY_CONDITION_FK, null);
190
191        return _ikm_memberinventoryconditionid_fk;
192    }
193
194    private transient ItemsPath _ikm_memberitemid_fk;
195
196    /**
197     * Get the implicit join path to the <code>items</code> table, via the
198     * <code>ikm_memberitemid_fk</code> key.
199     */
200    public ItemsPath ikm_memberitemid_fk() {
201        if (_ikm_memberitemid_fk == null)
202            _ikm_memberitemid_fk = new ItemsPath(this, KeyRegistry.ITEM_KIT_MEMBERS_MEMBER_ITEM_FK, null);
203
204        return _ikm_memberitemid_fk;
205    }
206
207    private transient UnitOfMeasureTypesPath _ikm_memberunitofmeasuretypeid_fk;
208
209    /**
210     * Get the implicit join path to the <code>unitofmeasuretypes</code> table,
211     * via the <code>ikm_memberunitofmeasuretypeid_fk</code> key.
212     */
213    public UnitOfMeasureTypesPath ikm_memberunitofmeasuretypeid_fk() {
214        if (_ikm_memberunitofmeasuretypeid_fk == null)
215            _ikm_memberunitofmeasuretypeid_fk = new UnitOfMeasureTypesPath(this, KeyRegistry.ITEM_KIT_MEMBERS_MEMBER_UNIT_OF_MEASURE_TYPE_FK, null);
216
217        return _ikm_memberunitofmeasuretypeid_fk;
218    }
219
220    private transient UnitOfMeasureTypesPath _ikm_uomt_unitofmeasuretypeid_fk;
221
222    /**
223     * Get the implicit join path to the <code>unitofmeasuretypes</code> table,
224     * via the <code>ikm_uomt_unitofmeasuretypeid_fk</code> key.
225     */
226    public UnitOfMeasureTypesPath ikm_uomt_unitofmeasuretypeid_fk() {
227        if (_ikm_uomt_unitofmeasuretypeid_fk == null)
228            _ikm_uomt_unitofmeasuretypeid_fk = new UnitOfMeasureTypesPath(this, KeyRegistry.ITEM_KIT_MEMBERS_UNIT_OF_MEASURE_TYPE_FK, null);
229
230        return _ikm_uomt_unitofmeasuretypeid_fk;
231    }
232
233    @Override
234    public ItemKitMembers as(String alias) {
235        return new ItemKitMembers(DSL.name(alias), this);
236    }
237
238    @Override
239    public ItemKitMembers as(Name alias) {
240        return new ItemKitMembers(alias, this);
241    }
242
243    @Override
244    public ItemKitMembers as(Table<?> alias) {
245        return new ItemKitMembers(alias.getQualifiedName(), this);
246    }
247
248    /**
249     * Rename this table
250     */
251    @Override
252    public ItemKitMembers rename(String name) {
253        return new ItemKitMembers(DSL.name(name), null);
254    }
255
256    /**
257     * Rename this table
258     */
259    @Override
260    public ItemKitMembers rename(Name name) {
261        return new ItemKitMembers(name, null);
262    }
263
264    /**
265     * Rename this table
266     */
267    @Override
268    public ItemKitMembers rename(Table<?> name) {
269        return new ItemKitMembers(name.getQualifiedName(), null);
270    }
271
272    /**
273     * Create an inline derived table from this table
274     */
275    @Override
276    public ItemKitMembers where(Condition condition) {
277        return new ItemKitMembers(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
278    }
279
280    /**
281     * Create an inline derived table from this table
282     */
283    @Override
284    public ItemKitMembers where(Collection<? extends Condition> conditions) {
285        return where(DSL.and(conditions));
286    }
287
288    /**
289     * Create an inline derived table from this table
290     */
291    @Override
292    public ItemKitMembers where(Condition... conditions) {
293        return where(DSL.and(conditions));
294    }
295
296    /**
297     * Create an inline derived table from this table
298     */
299    @Override
300    public ItemKitMembers where(Field<Boolean> condition) {
301        return where(DSL.condition(condition));
302    }
303
304    /**
305     * Create an inline derived table from this table
306     */
307    @Override
308    @PlainSQL
309    public ItemKitMembers where(SQL condition) {
310        return where(DSL.condition(condition));
311    }
312
313    /**
314     * Create an inline derived table from this table
315     */
316    @Override
317    @PlainSQL
318    public ItemKitMembers where(@Stringly.SQL String condition) {
319        return where(DSL.condition(condition));
320    }
321
322    /**
323     * Create an inline derived table from this table
324     */
325    @Override
326    @PlainSQL
327    public ItemKitMembers where(@Stringly.SQL String condition, Object... binds) {
328        return where(DSL.condition(condition, binds));
329    }
330
331    /**
332     * Create an inline derived table from this table
333     */
334    @Override
335    @PlainSQL
336    public ItemKitMembers where(@Stringly.SQL String condition, QueryPart... parts) {
337        return where(DSL.condition(condition, parts));
338    }
339
340    /**
341     * Create an inline derived table from this table
342     */
343    @Override
344    public ItemKitMembers whereExists(TableLike<?> select) {
345        return where(DSL.exists(select));
346    }
347
348    /**
349     * Create an inline derived table from this table
350     */
351    @Override
352    public ItemKitMembers whereNotExists(TableLike<?> select) {
353        return where(DSL.notExists(select));
354    }
355}