001/* 002 * This file is generated by jOOQ. 003 */ 004package com.echothree.model.jooq.server.tables.letter; 005 006 007import com.echothree.model.data.contact.common.pk.PartyContactMechanismPK; 008import com.echothree.model.data.letter.common.pk.LetterSourceDetailPK; 009import com.echothree.model.data.letter.common.pk.LetterSourcePK; 010import com.echothree.model.data.party.common.pk.PartyPK; 011import com.echothree.model.jooq.server.KeyRegistry; 012import com.echothree.model.jooq.server.tables.contact.PartyContactMechanisms.PartyContactMechanismsPath; 013import com.echothree.model.jooq.server.tables.letter.LetterSources.LetterSourcesPath; 014import com.echothree.model.jooq.server.tables.party.Parties.PartiesPath; 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.InverseForeignKey; 025import org.jooq.Name; 026import org.jooq.Path; 027import org.jooq.PlainSQL; 028import org.jooq.QueryPart; 029import org.jooq.Record; 030import org.jooq.SQL; 031import org.jooq.Stringly; 032import org.jooq.Table; 033import org.jooq.TableField; 034import org.jooq.TableLike; 035import org.jooq.TableOptions; 036import org.jooq.UniqueKey; 037import org.jooq.impl.DSL; 038import org.jooq.impl.Internal; 039import org.jooq.impl.SQLDataType; 040import org.jooq.impl.TableImpl; 041 042 043/** 044 * This class is generated by jOOQ. 045 */ 046@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" }) 047public class LetterSourceDetails extends TableImpl<com.echothree.model.jooq.server.records.letter.LetterSourceDetails> { 048 049 private static final long serialVersionUID = 1L; 050 051 /** 052 * The reference instance of <code>lettersourcedetails</code> 053 */ 054 public static final LetterSourceDetails LetterSourceDetails = new LetterSourceDetails(); 055 056 /** 057 * The class holding records for this type 058 */ 059 @Override 060 public Class<com.echothree.model.jooq.server.records.letter.LetterSourceDetails> getRecordType() { 061 return com.echothree.model.jooq.server.records.letter.LetterSourceDetails.class; 062 } 063 064 /** 065 * The column 066 * <code>lettersourcedetails.lttrsrcdt_lettersourcedetailid</code>. 067 */ 068 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, LetterSourceDetailPK> LETTER_SOURCE_DETAIL = createField(DSL.name("lttrsrcdt_lettersourcedetailid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, LetterSourceDetailPK.class, id -> new com.echothree.model.data.letter.common.pk.LetterSourceDetailPK(id), primaryKey -> primaryKey.getEntityId())); 069 070 /** 071 * The column 072 * <code>lettersourcedetails.lttrsrcdt_lttrsrc_lettersourceid</code>. 073 */ 074 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, LetterSourcePK> LETTER_SOURCE = createField(DSL.name("lttrsrcdt_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())); 075 076 /** 077 * The column <code>lettersourcedetails.lttrsrcdt_lettersourcename</code>. 078 */ 079 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, String> LETTER_SOURCE_NAME = createField(DSL.name("lttrsrcdt_lettersourcename"), SQLDataType.VARCHAR(40).nullable(false), this, ""); 080 081 /** 082 * The column <code>lettersourcedetails.lttrsrcdt_companypartyid</code>. 083 */ 084 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, PartyPK> COMPANY_PARTY = createField(DSL.name("lttrsrcdt_companypartyid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PartyPK.class, id -> new com.echothree.model.data.party.common.pk.PartyPK(id), primaryKey -> primaryKey.getEntityId())); 085 086 /** 087 * The column 088 * <code>lettersourcedetails.lttrsrcdt_emailaddresspartycontactmechanismid</code>. 089 */ 090 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, PartyContactMechanismPK> EMAIL_ADDRESS_PARTY_CONTACT_MECHANISM = createField(DSL.name("lttrsrcdt_emailaddresspartycontactmechanismid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PartyContactMechanismPK.class, id -> new com.echothree.model.data.contact.common.pk.PartyContactMechanismPK(id), primaryKey -> primaryKey.getEntityId())); 091 092 /** 093 * The column 094 * <code>lettersourcedetails.lttrsrcdt_postaladdresspartycontactmechanismid</code>. 095 */ 096 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, PartyContactMechanismPK> POSTAL_ADDRESS_PARTY_CONTACT_MECHANISM = createField(DSL.name("lttrsrcdt_postaladdresspartycontactmechanismid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PartyContactMechanismPK.class, id -> new com.echothree.model.data.contact.common.pk.PartyContactMechanismPK(id), primaryKey -> primaryKey.getEntityId())); 097 098 /** 099 * The column 100 * <code>lettersourcedetails.lttrsrcdt_lettersourcepartycontactmechanismid</code>. 101 */ 102 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, PartyContactMechanismPK> LETTER_SOURCE_PARTY_CONTACT_MECHANISM = createField(DSL.name("lttrsrcdt_lettersourcepartycontactmechanismid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PartyContactMechanismPK.class, id -> new com.echothree.model.data.contact.common.pk.PartyContactMechanismPK(id), primaryKey -> primaryKey.getEntityId())); 103 104 /** 105 * The column <code>lettersourcedetails.lttrsrcdt_isdefault</code>. 106 */ 107 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, Boolean> IS_DEFAULT = createField(DSL.name("lttrsrcdt_isdefault"), SQLDataType.BIT.nullable(false), this, ""); 108 109 /** 110 * The column <code>lettersourcedetails.lttrsrcdt_sortorder</code>. 111 */ 112 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, Integer> SORT_ORDER = createField(DSL.name("lttrsrcdt_sortorder"), SQLDataType.INTEGER.nullable(false), this, ""); 113 114 /** 115 * The column <code>lettersourcedetails.lttrsrcdt_fromtime</code>. 116 */ 117 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, Long> FROM_TIME = createField(DSL.name("lttrsrcdt_fromtime"), SQLDataType.BIGINT.nullable(false), this, ""); 118 119 /** 120 * The column <code>lettersourcedetails.lttrsrcdt_thrutime</code>. 121 */ 122 public final TableField<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, Long> THRU_TIME = createField(DSL.name("lttrsrcdt_thrutime"), SQLDataType.BIGINT.nullable(false), this, ""); 123 124 private LetterSourceDetails(Name alias, Table<com.echothree.model.jooq.server.records.letter.LetterSourceDetails> aliased) { 125 this(alias, aliased, (Field<?>[]) null, null); 126 } 127 128 private LetterSourceDetails(Name alias, Table<com.echothree.model.jooq.server.records.letter.LetterSourceDetails> aliased, Field<?>[] parameters, Condition where) { 129 super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where); 130 } 131 132 /** 133 * Create an aliased <code>lettersourcedetails</code> table reference 134 */ 135 public LetterSourceDetails(String alias) { 136 this(DSL.name(alias), LetterSourceDetails); 137 } 138 139 /** 140 * Create an aliased <code>lettersourcedetails</code> table reference 141 */ 142 public LetterSourceDetails(Name alias) { 143 this(alias, LetterSourceDetails); 144 } 145 146 /** 147 * Create a <code>lettersourcedetails</code> table reference 148 */ 149 public LetterSourceDetails() { 150 this(DSL.name("lettersourcedetails"), null); 151 } 152 153 public <O extends Record> LetterSourceDetails(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.letter.LetterSourceDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.letter.LetterSourceDetails> parentPath) { 154 super(path, childPath, parentPath, LetterSourceDetails); 155 } 156 157 /** 158 * A subtype implementing {@link Path} for simplified path-based joins. 159 */ 160 public static class LetterSourceDetailsPath extends LetterSourceDetails implements Path<com.echothree.model.jooq.server.records.letter.LetterSourceDetails> { 161 162 private static final long serialVersionUID = 1L; 163 public <O extends Record> LetterSourceDetailsPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.letter.LetterSourceDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.letter.LetterSourceDetails> parentPath) { 164 super(path, childPath, parentPath); 165 } 166 private LetterSourceDetailsPath(Name alias, Table<com.echothree.model.jooq.server.records.letter.LetterSourceDetails> aliased) { 167 super(alias, aliased); 168 } 169 170 @Override 171 public LetterSourceDetailsPath as(String alias) { 172 return new LetterSourceDetailsPath(DSL.name(alias), this); 173 } 174 175 @Override 176 public LetterSourceDetailsPath as(Name alias) { 177 return new LetterSourceDetailsPath(alias, this); 178 } 179 180 @Override 181 public LetterSourceDetailsPath as(Table<?> alias) { 182 return new LetterSourceDetailsPath(alias.getQualifiedName(), this); 183 } 184 } 185 186 @Override 187 public UniqueKey<com.echothree.model.jooq.server.records.letter.LetterSourceDetails> getPrimaryKey() { 188 return KeyRegistry.LETTER_SOURCE_DETAILS_PK; 189 } 190 191 @Override 192 public List<UniqueKey<com.echothree.model.jooq.server.records.letter.LetterSourceDetails>> getUniqueKeys() { 193 return Arrays.asList(KeyRegistry.LETTER_SOURCE_DETAILS_LETTER_SOURCE_AND_THRU_TIME_UK, KeyRegistry.LETTER_SOURCE_DETAILS_LETTER_SOURCE_NAME_AND_THRU_TIME_UK); 194 } 195 196 @Override 197 public List<ForeignKey<com.echothree.model.jooq.server.records.letter.LetterSourceDetails, ?>> getReferences() { 198 return Arrays.asList(KeyRegistry.LETTER_SOURCE_DETAILS_COMPANY_PARTY_FK, KeyRegistry.LETTER_SOURCE_DETAILS_EMAIL_ADDRESS_PARTY_CONTACT_MECHANISM_FK, KeyRegistry.LETTER_SOURCE_DETAILS_LETTER_SOURCE_PARTY_CONTACT_MECHANISM_FK, KeyRegistry.LETTER_SOURCE_DETAILS_LETTER_SOURCE_FK, KeyRegistry.LETTER_SOURCE_DETAILS_POSTAL_ADDRESS_PARTY_CONTACT_MECHANISM_FK); 199 } 200 201 private transient PartiesPath _lttrsrcdt_companypartyid_fk; 202 203 /** 204 * Get the implicit join path to the <code>parties</code> table. 205 */ 206 public PartiesPath lttrsrcdt_companypartyid_fk() { 207 if (_lttrsrcdt_companypartyid_fk == null) 208 _lttrsrcdt_companypartyid_fk = new PartiesPath(this, KeyRegistry.LETTER_SOURCE_DETAILS_COMPANY_PARTY_FK, null); 209 210 return _lttrsrcdt_companypartyid_fk; 211 } 212 213 private transient PartyContactMechanismsPath _lttrsrcdt_emailaddresspartycontactmechanismid_fk; 214 215 /** 216 * Get the implicit join path to the <code>partycontactmechanisms</code> 217 * table, via the 218 * <code>lttrsrcdt_emailaddresspartycontactmechanismid_fk</code> key. 219 */ 220 public PartyContactMechanismsPath lttrsrcdt_emailaddresspartycontactmechanismid_fk() { 221 if (_lttrsrcdt_emailaddresspartycontactmechanismid_fk == null) 222 _lttrsrcdt_emailaddresspartycontactmechanismid_fk = new PartyContactMechanismsPath(this, KeyRegistry.LETTER_SOURCE_DETAILS_EMAIL_ADDRESS_PARTY_CONTACT_MECHANISM_FK, null); 223 224 return _lttrsrcdt_emailaddresspartycontactmechanismid_fk; 225 } 226 227 private transient PartyContactMechanismsPath _lttrsrcdt_lettersourcepartycontactmechanismid_fk; 228 229 /** 230 * Get the implicit join path to the <code>partycontactmechanisms</code> 231 * table, via the 232 * <code>lttrsrcdt_lettersourcepartycontactmechanismid_fk</code> key. 233 */ 234 public PartyContactMechanismsPath lttrsrcdt_lettersourcepartycontactmechanismid_fk() { 235 if (_lttrsrcdt_lettersourcepartycontactmechanismid_fk == null) 236 _lttrsrcdt_lettersourcepartycontactmechanismid_fk = new PartyContactMechanismsPath(this, KeyRegistry.LETTER_SOURCE_DETAILS_LETTER_SOURCE_PARTY_CONTACT_MECHANISM_FK, null); 237 238 return _lttrsrcdt_lettersourcepartycontactmechanismid_fk; 239 } 240 241 private transient LetterSourcesPath _lttrsrcdt_lttrsrc_lettersourceid_fk; 242 243 /** 244 * Get the implicit join path to the <code>lettersources</code> table. 245 */ 246 public LetterSourcesPath lttrsrcdt_lttrsrc_lettersourceid_fk() { 247 if (_lttrsrcdt_lttrsrc_lettersourceid_fk == null) 248 _lttrsrcdt_lttrsrc_lettersourceid_fk = new LetterSourcesPath(this, KeyRegistry.LETTER_SOURCE_DETAILS_LETTER_SOURCE_FK, null); 249 250 return _lttrsrcdt_lttrsrc_lettersourceid_fk; 251 } 252 253 private transient PartyContactMechanismsPath _lttrsrcdt_postaladdresspartycontactmechanismid_fk; 254 255 /** 256 * Get the implicit join path to the <code>partycontactmechanisms</code> 257 * table, via the 258 * <code>lttrsrcdt_postaladdresspartycontactmechanismid_fk</code> key. 259 */ 260 public PartyContactMechanismsPath lttrsrcdt_postaladdresspartycontactmechanismid_fk() { 261 if (_lttrsrcdt_postaladdresspartycontactmechanismid_fk == null) 262 _lttrsrcdt_postaladdresspartycontactmechanismid_fk = new PartyContactMechanismsPath(this, KeyRegistry.LETTER_SOURCE_DETAILS_POSTAL_ADDRESS_PARTY_CONTACT_MECHANISM_FK, null); 263 264 return _lttrsrcdt_postaladdresspartycontactmechanismid_fk; 265 } 266 267 @Override 268 public LetterSourceDetails as(String alias) { 269 return new LetterSourceDetails(DSL.name(alias), this); 270 } 271 272 @Override 273 public LetterSourceDetails as(Name alias) { 274 return new LetterSourceDetails(alias, this); 275 } 276 277 @Override 278 public LetterSourceDetails as(Table<?> alias) { 279 return new LetterSourceDetails(alias.getQualifiedName(), this); 280 } 281 282 /** 283 * Rename this table 284 */ 285 @Override 286 public LetterSourceDetails rename(String name) { 287 return new LetterSourceDetails(DSL.name(name), null); 288 } 289 290 /** 291 * Rename this table 292 */ 293 @Override 294 public LetterSourceDetails rename(Name name) { 295 return new LetterSourceDetails(name, null); 296 } 297 298 /** 299 * Rename this table 300 */ 301 @Override 302 public LetterSourceDetails rename(Table<?> name) { 303 return new LetterSourceDetails(name.getQualifiedName(), null); 304 } 305 306 /** 307 * Create an inline derived table from this table 308 */ 309 @Override 310 public LetterSourceDetails where(Condition condition) { 311 return new LetterSourceDetails(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition)); 312 } 313 314 /** 315 * Create an inline derived table from this table 316 */ 317 @Override 318 public LetterSourceDetails where(Collection<? extends Condition> conditions) { 319 return where(DSL.and(conditions)); 320 } 321 322 /** 323 * Create an inline derived table from this table 324 */ 325 @Override 326 public LetterSourceDetails where(Condition... conditions) { 327 return where(DSL.and(conditions)); 328 } 329 330 /** 331 * Create an inline derived table from this table 332 */ 333 @Override 334 public LetterSourceDetails where(Field<Boolean> condition) { 335 return where(DSL.condition(condition)); 336 } 337 338 /** 339 * Create an inline derived table from this table 340 */ 341 @Override 342 @PlainSQL 343 public LetterSourceDetails where(SQL condition) { 344 return where(DSL.condition(condition)); 345 } 346 347 /** 348 * Create an inline derived table from this table 349 */ 350 @Override 351 @PlainSQL 352 public LetterSourceDetails where(@Stringly.SQL String condition) { 353 return where(DSL.condition(condition)); 354 } 355 356 /** 357 * Create an inline derived table from this table 358 */ 359 @Override 360 @PlainSQL 361 public LetterSourceDetails where(@Stringly.SQL String condition, Object... binds) { 362 return where(DSL.condition(condition, binds)); 363 } 364 365 /** 366 * Create an inline derived table from this table 367 */ 368 @Override 369 @PlainSQL 370 public LetterSourceDetails where(@Stringly.SQL String condition, QueryPart... parts) { 371 return where(DSL.condition(condition, parts)); 372 } 373 374 /** 375 * Create an inline derived table from this table 376 */ 377 @Override 378 public LetterSourceDetails whereExists(TableLike<?> select) { 379 return where(DSL.exists(select)); 380 } 381 382 /** 383 * Create an inline derived table from this table 384 */ 385 @Override 386 public LetterSourceDetails whereNotExists(TableLike<?> select) { 387 return where(DSL.notExists(select)); 388 } 389}