001/* 002 * This file is generated by jOOQ. 003 */ 004package com.echothree.model.jooq.server.tables.letter; 005 006 007import com.echothree.model.data.chain.common.pk.ChainTypePK; 008import com.echothree.model.data.contactlist.common.pk.ContactListPK; 009import com.echothree.model.data.letter.common.pk.LetterDetailPK; 010import com.echothree.model.data.letter.common.pk.LetterPK; 011import com.echothree.model.data.letter.common.pk.LetterSourcePK; 012import com.echothree.model.jooq.server.KeyRegistry; 013import com.echothree.model.jooq.server.tables.chain.ChainTypes.ChainTypesPath; 014import com.echothree.model.jooq.server.tables.contactlist.ContactLists.ContactListsPath; 015import com.echothree.model.jooq.server.tables.letter.LetterSources.LetterSourcesPath; 016import com.echothree.model.jooq.server.tables.letter.Letters.LettersPath; 017 018import java.util.Arrays; 019import java.util.Collection; 020import java.util.List; 021 022import org.jooq.Condition; 023import org.jooq.Converter; 024import org.jooq.Field; 025import org.jooq.ForeignKey; 026import org.jooq.InverseForeignKey; 027import org.jooq.Name; 028import org.jooq.Path; 029import org.jooq.PlainSQL; 030import org.jooq.QueryPart; 031import org.jooq.Record; 032import org.jooq.SQL; 033import org.jooq.Stringly; 034import org.jooq.Table; 035import org.jooq.TableField; 036import org.jooq.TableLike; 037import org.jooq.TableOptions; 038import org.jooq.UniqueKey; 039import org.jooq.impl.DSL; 040import org.jooq.impl.Internal; 041import org.jooq.impl.SQLDataType; 042import org.jooq.impl.TableImpl; 043 044 045/** 046 * This class is generated by jOOQ. 047 */ 048@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" }) 049public class LetterDetails extends TableImpl<com.echothree.model.jooq.server.records.letter.LetterDetails> { 050 051 private static final long serialVersionUID = 1L; 052 053 /** 054 * The reference instance of <code>letterdetails</code> 055 */ 056 public static final LetterDetails LetterDetails = new LetterDetails(); 057 058 /** 059 * The class holding records for this type 060 */ 061 @Override 062 public Class<com.echothree.model.jooq.server.records.letter.LetterDetails> getRecordType() { 063 return com.echothree.model.jooq.server.records.letter.LetterDetails.class; 064 } 065 066 /** 067 * The column <code>letterdetails.lttrdt_letterdetailid</code>. 068 */ 069 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, LetterDetailPK> LETTER_DETAIL = createField(DSL.name("lttrdt_letterdetailid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, LetterDetailPK.class, id -> new com.echothree.model.data.letter.common.pk.LetterDetailPK(id), primaryKey -> primaryKey.getEntityId())); 070 071 /** 072 * The column <code>letterdetails.lttrdt_lttr_letterid</code>. 073 */ 074 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, LetterPK> LETTER = createField(DSL.name("lttrdt_lttr_letterid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, LetterPK.class, id -> new com.echothree.model.data.letter.common.pk.LetterPK(id), primaryKey -> primaryKey.getEntityId())); 075 076 /** 077 * The column <code>letterdetails.lttrdt_chntyp_chaintypeid</code>. 078 */ 079 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, ChainTypePK> CHAIN_TYPE = createField(DSL.name("lttrdt_chntyp_chaintypeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, ChainTypePK.class, id -> new com.echothree.model.data.chain.common.pk.ChainTypePK(id), primaryKey -> primaryKey.getEntityId())); 080 081 /** 082 * The column <code>letterdetails.lttrdt_lettername</code>. 083 */ 084 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, String> LETTER_NAME = createField(DSL.name("lttrdt_lettername"), SQLDataType.VARCHAR(40).nullable(false), this, ""); 085 086 /** 087 * The column <code>letterdetails.lttrdt_lttrsrc_lettersourceid</code>. 088 */ 089 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, LetterSourcePK> LETTER_SOURCE = createField(DSL.name("lttrdt_lttrsrc_lettersourceid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, LetterSourcePK.class, id -> new com.echothree.model.data.letter.common.pk.LetterSourcePK(id), primaryKey -> primaryKey.getEntityId())); 090 091 /** 092 * The column <code>letterdetails.lttrdt_clst_contactlistid</code>. 093 */ 094 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, ContactListPK> CONTACT_LIST = createField(DSL.name("lttrdt_clst_contactlistid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, ContactListPK.class, id -> new com.echothree.model.data.contactlist.common.pk.ContactListPK(id), primaryKey -> primaryKey.getEntityId())); 095 096 /** 097 * The column <code>letterdetails.lttrdt_isdefault</code>. 098 */ 099 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, Boolean> IS_DEFAULT = createField(DSL.name("lttrdt_isdefault"), SQLDataType.BIT.nullable(false), this, ""); 100 101 /** 102 * The column <code>letterdetails.lttrdt_sortorder</code>. 103 */ 104 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, Integer> SORT_ORDER = createField(DSL.name("lttrdt_sortorder"), SQLDataType.INTEGER.nullable(false), this, ""); 105 106 /** 107 * The column <code>letterdetails.lttrdt_fromtime</code>. 108 */ 109 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, Long> FROM_TIME = createField(DSL.name("lttrdt_fromtime"), SQLDataType.BIGINT.nullable(false), this, ""); 110 111 /** 112 * The column <code>letterdetails.lttrdt_thrutime</code>. 113 */ 114 public final TableField<com.echothree.model.jooq.server.records.letter.LetterDetails, Long> THRU_TIME = createField(DSL.name("lttrdt_thrutime"), SQLDataType.BIGINT.nullable(false), this, ""); 115 116 private LetterDetails(Name alias, Table<com.echothree.model.jooq.server.records.letter.LetterDetails> aliased) { 117 this(alias, aliased, (Field<?>[]) null, null); 118 } 119 120 private LetterDetails(Name alias, Table<com.echothree.model.jooq.server.records.letter.LetterDetails> aliased, Field<?>[] parameters, Condition where) { 121 super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where); 122 } 123 124 /** 125 * Create an aliased <code>letterdetails</code> table reference 126 */ 127 public LetterDetails(String alias) { 128 this(DSL.name(alias), LetterDetails); 129 } 130 131 /** 132 * Create an aliased <code>letterdetails</code> table reference 133 */ 134 public LetterDetails(Name alias) { 135 this(alias, LetterDetails); 136 } 137 138 /** 139 * Create a <code>letterdetails</code> table reference 140 */ 141 public LetterDetails() { 142 this(DSL.name("letterdetails"), null); 143 } 144 145 public <O extends Record> LetterDetails(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.letter.LetterDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.letter.LetterDetails> parentPath) { 146 super(path, childPath, parentPath, LetterDetails); 147 } 148 149 /** 150 * A subtype implementing {@link Path} for simplified path-based joins. 151 */ 152 public static class LetterDetailsPath extends LetterDetails implements Path<com.echothree.model.jooq.server.records.letter.LetterDetails> { 153 154 private static final long serialVersionUID = 1L; 155 public <O extends Record> LetterDetailsPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.letter.LetterDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.letter.LetterDetails> parentPath) { 156 super(path, childPath, parentPath); 157 } 158 private LetterDetailsPath(Name alias, Table<com.echothree.model.jooq.server.records.letter.LetterDetails> aliased) { 159 super(alias, aliased); 160 } 161 162 @Override 163 public LetterDetailsPath as(String alias) { 164 return new LetterDetailsPath(DSL.name(alias), this); 165 } 166 167 @Override 168 public LetterDetailsPath as(Name alias) { 169 return new LetterDetailsPath(alias, this); 170 } 171 172 @Override 173 public LetterDetailsPath as(Table<?> alias) { 174 return new LetterDetailsPath(alias.getQualifiedName(), this); 175 } 176 } 177 178 @Override 179 public UniqueKey<com.echothree.model.jooq.server.records.letter.LetterDetails> getPrimaryKey() { 180 return KeyRegistry.LETTER_DETAILS_PK; 181 } 182 183 @Override 184 public List<UniqueKey<com.echothree.model.jooq.server.records.letter.LetterDetails>> getUniqueKeys() { 185 return Arrays.asList(KeyRegistry.LETTER_DETAILS_LETTER_AND_THRU_TIME_UK, KeyRegistry.LETTER_DETAILS_CHAIN_TYPE_AND_LETTER_NAME_AND_THRU_TIME_UK); 186 } 187 188 @Override 189 public List<ForeignKey<com.echothree.model.jooq.server.records.letter.LetterDetails, ?>> getReferences() { 190 return Arrays.asList(KeyRegistry.LETTER_DETAILS_CHAIN_TYPE_FK, KeyRegistry.LETTER_DETAILS_CONTACT_LIST_FK, KeyRegistry.LETTER_DETAILS_LETTER_FK, KeyRegistry.LETTER_DETAILS_LETTER_SOURCE_FK); 191 } 192 193 private transient ChainTypesPath _lttrdt_chntyp_chaintypeid_fk; 194 195 /** 196 * Get the implicit join path to the <code>chaintypes</code> table. 197 */ 198 public ChainTypesPath lttrdt_chntyp_chaintypeid_fk() { 199 if (_lttrdt_chntyp_chaintypeid_fk == null) 200 _lttrdt_chntyp_chaintypeid_fk = new ChainTypesPath(this, KeyRegistry.LETTER_DETAILS_CHAIN_TYPE_FK, null); 201 202 return _lttrdt_chntyp_chaintypeid_fk; 203 } 204 205 private transient ContactListsPath _lttrdt_clst_contactlistid_fk; 206 207 /** 208 * Get the implicit join path to the <code>contactlists</code> table. 209 */ 210 public ContactListsPath lttrdt_clst_contactlistid_fk() { 211 if (_lttrdt_clst_contactlistid_fk == null) 212 _lttrdt_clst_contactlistid_fk = new ContactListsPath(this, KeyRegistry.LETTER_DETAILS_CONTACT_LIST_FK, null); 213 214 return _lttrdt_clst_contactlistid_fk; 215 } 216 217 private transient LettersPath _lttrdt_lttr_letterid_fk; 218 219 /** 220 * Get the implicit join path to the <code>letters</code> table. 221 */ 222 public LettersPath lttrdt_lttr_letterid_fk() { 223 if (_lttrdt_lttr_letterid_fk == null) 224 _lttrdt_lttr_letterid_fk = new LettersPath(this, KeyRegistry.LETTER_DETAILS_LETTER_FK, null); 225 226 return _lttrdt_lttr_letterid_fk; 227 } 228 229 private transient LetterSourcesPath _lttrdt_lttrsrc_lettersourceid_fk; 230 231 /** 232 * Get the implicit join path to the <code>lettersources</code> table. 233 */ 234 public LetterSourcesPath lttrdt_lttrsrc_lettersourceid_fk() { 235 if (_lttrdt_lttrsrc_lettersourceid_fk == null) 236 _lttrdt_lttrsrc_lettersourceid_fk = new LetterSourcesPath(this, KeyRegistry.LETTER_DETAILS_LETTER_SOURCE_FK, null); 237 238 return _lttrdt_lttrsrc_lettersourceid_fk; 239 } 240 241 @Override 242 public LetterDetails as(String alias) { 243 return new LetterDetails(DSL.name(alias), this); 244 } 245 246 @Override 247 public LetterDetails as(Name alias) { 248 return new LetterDetails(alias, this); 249 } 250 251 @Override 252 public LetterDetails as(Table<?> alias) { 253 return new LetterDetails(alias.getQualifiedName(), this); 254 } 255 256 /** 257 * Rename this table 258 */ 259 @Override 260 public LetterDetails rename(String name) { 261 return new LetterDetails(DSL.name(name), null); 262 } 263 264 /** 265 * Rename this table 266 */ 267 @Override 268 public LetterDetails rename(Name name) { 269 return new LetterDetails(name, null); 270 } 271 272 /** 273 * Rename this table 274 */ 275 @Override 276 public LetterDetails rename(Table<?> name) { 277 return new LetterDetails(name.getQualifiedName(), null); 278 } 279 280 /** 281 * Create an inline derived table from this table 282 */ 283 @Override 284 public LetterDetails where(Condition condition) { 285 return new LetterDetails(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition)); 286 } 287 288 /** 289 * Create an inline derived table from this table 290 */ 291 @Override 292 public LetterDetails where(Collection<? extends 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 LetterDetails where(Condition... conditions) { 301 return where(DSL.and(conditions)); 302 } 303 304 /** 305 * Create an inline derived table from this table 306 */ 307 @Override 308 public LetterDetails where(Field<Boolean> condition) { 309 return where(DSL.condition(condition)); 310 } 311 312 /** 313 * Create an inline derived table from this table 314 */ 315 @Override 316 @PlainSQL 317 public LetterDetails where(SQL condition) { 318 return where(DSL.condition(condition)); 319 } 320 321 /** 322 * Create an inline derived table from this table 323 */ 324 @Override 325 @PlainSQL 326 public LetterDetails where(@Stringly.SQL String condition) { 327 return where(DSL.condition(condition)); 328 } 329 330 /** 331 * Create an inline derived table from this table 332 */ 333 @Override 334 @PlainSQL 335 public LetterDetails where(@Stringly.SQL String condition, Object... binds) { 336 return where(DSL.condition(condition, binds)); 337 } 338 339 /** 340 * Create an inline derived table from this table 341 */ 342 @Override 343 @PlainSQL 344 public LetterDetails where(@Stringly.SQL String condition, QueryPart... parts) { 345 return where(DSL.condition(condition, parts)); 346 } 347 348 /** 349 * Create an inline derived table from this table 350 */ 351 @Override 352 public LetterDetails whereExists(TableLike<?> select) { 353 return where(DSL.exists(select)); 354 } 355 356 /** 357 * Create an inline derived table from this table 358 */ 359 @Override 360 public LetterDetails whereNotExists(TableLike<?> select) { 361 return where(DSL.notExists(select)); 362 } 363}