001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.payment;
005
006
007import com.echothree.model.data.payment.common.pk.PaymentMethodCreditCardPK;
008import com.echothree.model.data.payment.common.pk.PaymentMethodPK;
009import com.echothree.model.jooq.server.KeyRegistry;
010import com.echothree.model.jooq.server.tables.payment.PaymentMethods.PaymentMethodsPath;
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 PaymentMethodCreditCards extends TableImpl<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards> {
041
042    private static final long serialVersionUID = 1L;
043
044    /**
045     * The reference instance of <code>paymentmethodcreditcards</code>
046     */
047    public static final PaymentMethodCreditCards PaymentMethodCreditCards = new PaymentMethodCreditCards();
048
049    /**
050     * The class holding records for this type
051     */
052    @Override
053    public Class<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards> getRecordType() {
054        return com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards.class;
055    }
056
057    /**
058     * The column
059     * <code>paymentmethodcreditcards.pmcc_paymentmethodcreditcardid</code>.
060     */
061    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, PaymentMethodCreditCardPK> PAYMENT_METHOD_CREDIT_CARD = createField(DSL.name("pmcc_paymentmethodcreditcardid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PaymentMethodCreditCardPK.class, id -> new com.echothree.model.data.payment.common.pk.PaymentMethodCreditCardPK(id), primaryKey -> primaryKey.getEntityId()));
062
063    /**
064     * The column <code>paymentmethodcreditcards.pmcc_pm_paymentmethodid</code>.
065     */
066    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, PaymentMethodPK> PAYMENT_METHOD = createField(DSL.name("pmcc_pm_paymentmethodid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PaymentMethodPK.class, id -> new com.echothree.model.data.payment.common.pk.PaymentMethodPK(id), primaryKey -> primaryKey.getEntityId()));
067
068    /**
069     * The column <code>paymentmethodcreditcards.pmcc_requestnameoncard</code>.
070     */
071    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUEST_NAME_ON_CARD = createField(DSL.name("pmcc_requestnameoncard"), SQLDataType.BIT.nullable(false), this, "");
072
073    /**
074     * The column <code>paymentmethodcreditcards.pmcc_requirenameoncard</code>.
075     */
076    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUIRE_NAME_ON_CARD = createField(DSL.name("pmcc_requirenameoncard"), SQLDataType.BIT.nullable(false), this, "");
077
078    /**
079     * The column <code>paymentmethodcreditcards.pmcc_checkcardnumber</code>.
080     */
081    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> CHECK_CARD_NUMBER = createField(DSL.name("pmcc_checkcardnumber"), SQLDataType.BIT.nullable(false), this, "");
082
083    /**
084     * The column
085     * <code>paymentmethodcreditcards.pmcc_requestexpirationdate</code>.
086     */
087    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUEST_EXPIRATION_DATE = createField(DSL.name("pmcc_requestexpirationdate"), SQLDataType.BIT.nullable(false), this, "");
088
089    /**
090     * The column
091     * <code>paymentmethodcreditcards.pmcc_requireexpirationdate</code>.
092     */
093    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUIRE_EXPIRATION_DATE = createField(DSL.name("pmcc_requireexpirationdate"), SQLDataType.BIT.nullable(false), this, "");
094
095    /**
096     * The column
097     * <code>paymentmethodcreditcards.pmcc_checkexpirationdate</code>.
098     */
099    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> CHECK_EXPIRATION_DATE = createField(DSL.name("pmcc_checkexpirationdate"), SQLDataType.BIT.nullable(false), this, "");
100
101    /**
102     * The column
103     * <code>paymentmethodcreditcards.pmcc_requestsecuritycode</code>.
104     */
105    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUEST_SECURITY_CODE = createField(DSL.name("pmcc_requestsecuritycode"), SQLDataType.BIT.nullable(false), this, "");
106
107    /**
108     * The column
109     * <code>paymentmethodcreditcards.pmcc_requiresecuritycode</code>.
110     */
111    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUIRE_SECURITY_CODE = createField(DSL.name("pmcc_requiresecuritycode"), SQLDataType.BIT.nullable(false), this, "");
112
113    /**
114     * The column
115     * <code>paymentmethodcreditcards.pmcc_cardnumbervalidationpattern</code>.
116     */
117    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, String> CARD_NUMBER_VALIDATION_PATTERN = createField(DSL.name("pmcc_cardnumbervalidationpattern"), SQLDataType.VARCHAR(128), this, "");
118
119    /**
120     * The column
121     * <code>paymentmethodcreditcards.pmcc_securitycodevalidationpattern</code>.
122     */
123    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, String> SECURITY_CODE_VALIDATION_PATTERN = createField(DSL.name("pmcc_securitycodevalidationpattern"), SQLDataType.VARCHAR(128), this, "");
124
125    /**
126     * The column <code>paymentmethodcreditcards.pmcc_retaincreditcard</code>.
127     */
128    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> RETAIN_CREDIT_CARD = createField(DSL.name("pmcc_retaincreditcard"), SQLDataType.BIT.nullable(false), this, "");
129
130    /**
131     * The column <code>paymentmethodcreditcards.pmcc_retainsecuritycode</code>.
132     */
133    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> RETAIN_SECURITY_CODE = createField(DSL.name("pmcc_retainsecuritycode"), SQLDataType.BIT.nullable(false), this, "");
134
135    /**
136     * The column <code>paymentmethodcreditcards.pmcc_requestbilling</code>.
137     */
138    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUEST_BILLING = createField(DSL.name("pmcc_requestbilling"), SQLDataType.BIT.nullable(false), this, "");
139
140    /**
141     * The column <code>paymentmethodcreditcards.pmcc_requirebilling</code>.
142     */
143    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUIRE_BILLING = createField(DSL.name("pmcc_requirebilling"), SQLDataType.BIT.nullable(false), this, "");
144
145    /**
146     * The column <code>paymentmethodcreditcards.pmcc_requestissuer</code>.
147     */
148    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUEST_ISSUER = createField(DSL.name("pmcc_requestissuer"), SQLDataType.BIT.nullable(false), this, "");
149
150    /**
151     * The column <code>paymentmethodcreditcards.pmcc_requireissuer</code>.
152     */
153    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Boolean> REQUIRE_ISSUER = createField(DSL.name("pmcc_requireissuer"), SQLDataType.BIT.nullable(false), this, "");
154
155    /**
156     * The column <code>paymentmethodcreditcards.pmcc_fromtime</code>.
157     */
158    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Long> FROM_TIME = createField(DSL.name("pmcc_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
159
160    /**
161     * The column <code>paymentmethodcreditcards.pmcc_thrutime</code>.
162     */
163    public final TableField<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, Long> THRU_TIME = createField(DSL.name("pmcc_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
164
165    private PaymentMethodCreditCards(Name alias, Table<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards> aliased) {
166        this(alias, aliased, (Field<?>[]) null, null);
167    }
168
169    private PaymentMethodCreditCards(Name alias, Table<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards> aliased, Field<?>[] parameters, Condition where) {
170        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
171    }
172
173    /**
174     * Create an aliased <code>paymentmethodcreditcards</code> table reference
175     */
176    public PaymentMethodCreditCards(String alias) {
177        this(DSL.name(alias), PaymentMethodCreditCards);
178    }
179
180    /**
181     * Create an aliased <code>paymentmethodcreditcards</code> table reference
182     */
183    public PaymentMethodCreditCards(Name alias) {
184        this(alias, PaymentMethodCreditCards);
185    }
186
187    /**
188     * Create a <code>paymentmethodcreditcards</code> table reference
189     */
190    public PaymentMethodCreditCards() {
191        this(DSL.name("paymentmethodcreditcards"), null);
192    }
193
194    @Override
195    public UniqueKey<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards> getPrimaryKey() {
196        return KeyRegistry.PAYMENT_METHOD_CREDIT_CARDS_PK;
197    }
198
199    @Override
200    public List<UniqueKey<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards>> getUniqueKeys() {
201        return Arrays.asList(KeyRegistry.PAYMENT_METHOD_CREDIT_CARDS_PAYMENT_METHOD_AND_THRU_TIME_UK);
202    }
203
204    @Override
205    public List<ForeignKey<com.echothree.model.jooq.server.records.payment.PaymentMethodCreditCards, ?>> getReferences() {
206        return Arrays.asList(KeyRegistry.PAYMENT_METHOD_CREDIT_CARDS_PAYMENT_METHOD_FK);
207    }
208
209    private transient PaymentMethodsPath _pmcc_pm_paymentmethodid_fk;
210
211    /**
212     * Get the implicit join path to the <code>paymentmethods</code> table.
213     */
214    public PaymentMethodsPath pmcc_pm_paymentmethodid_fk() {
215        if (_pmcc_pm_paymentmethodid_fk == null)
216            _pmcc_pm_paymentmethodid_fk = new PaymentMethodsPath(this, KeyRegistry.PAYMENT_METHOD_CREDIT_CARDS_PAYMENT_METHOD_FK, null);
217
218        return _pmcc_pm_paymentmethodid_fk;
219    }
220
221    @Override
222    public PaymentMethodCreditCards as(String alias) {
223        return new PaymentMethodCreditCards(DSL.name(alias), this);
224    }
225
226    @Override
227    public PaymentMethodCreditCards as(Name alias) {
228        return new PaymentMethodCreditCards(alias, this);
229    }
230
231    @Override
232    public PaymentMethodCreditCards as(Table<?> alias) {
233        return new PaymentMethodCreditCards(alias.getQualifiedName(), this);
234    }
235
236    /**
237     * Rename this table
238     */
239    @Override
240    public PaymentMethodCreditCards rename(String name) {
241        return new PaymentMethodCreditCards(DSL.name(name), null);
242    }
243
244    /**
245     * Rename this table
246     */
247    @Override
248    public PaymentMethodCreditCards rename(Name name) {
249        return new PaymentMethodCreditCards(name, null);
250    }
251
252    /**
253     * Rename this table
254     */
255    @Override
256    public PaymentMethodCreditCards rename(Table<?> name) {
257        return new PaymentMethodCreditCards(name.getQualifiedName(), null);
258    }
259
260    /**
261     * Create an inline derived table from this table
262     */
263    @Override
264    public PaymentMethodCreditCards where(Condition condition) {
265        return new PaymentMethodCreditCards(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
266    }
267
268    /**
269     * Create an inline derived table from this table
270     */
271    @Override
272    public PaymentMethodCreditCards where(Collection<? extends Condition> conditions) {
273        return where(DSL.and(conditions));
274    }
275
276    /**
277     * Create an inline derived table from this table
278     */
279    @Override
280    public PaymentMethodCreditCards where(Condition... conditions) {
281        return where(DSL.and(conditions));
282    }
283
284    /**
285     * Create an inline derived table from this table
286     */
287    @Override
288    public PaymentMethodCreditCards where(Field<Boolean> condition) {
289        return where(DSL.condition(condition));
290    }
291
292    /**
293     * Create an inline derived table from this table
294     */
295    @Override
296    @PlainSQL
297    public PaymentMethodCreditCards where(SQL condition) {
298        return where(DSL.condition(condition));
299    }
300
301    /**
302     * Create an inline derived table from this table
303     */
304    @Override
305    @PlainSQL
306    public PaymentMethodCreditCards where(@Stringly.SQL String condition) {
307        return where(DSL.condition(condition));
308    }
309
310    /**
311     * Create an inline derived table from this table
312     */
313    @Override
314    @PlainSQL
315    public PaymentMethodCreditCards where(@Stringly.SQL String condition, Object... binds) {
316        return where(DSL.condition(condition, binds));
317    }
318
319    /**
320     * Create an inline derived table from this table
321     */
322    @Override
323    @PlainSQL
324    public PaymentMethodCreditCards where(@Stringly.SQL String condition, QueryPart... parts) {
325        return where(DSL.condition(condition, parts));
326    }
327
328    /**
329     * Create an inline derived table from this table
330     */
331    @Override
332    public PaymentMethodCreditCards whereExists(TableLike<?> select) {
333        return where(DSL.exists(select));
334    }
335
336    /**
337     * Create an inline derived table from this table
338     */
339    @Override
340    public PaymentMethodCreditCards whereNotExists(TableLike<?> select) {
341        return where(DSL.notExists(select));
342    }
343}