001/* 002 * This file is generated by jOOQ. 003 */ 004package com.echothree.model.jooq.server.tables.associate; 005 006 007import com.echothree.model.data.associate.common.pk.AssociateDetailPK; 008import com.echothree.model.data.associate.common.pk.AssociatePK; 009import com.echothree.model.data.associate.common.pk.AssociateProgramPK; 010import com.echothree.model.data.core.common.pk.MimeTypePK; 011import com.echothree.model.data.party.common.pk.PartyPK; 012import com.echothree.model.jooq.server.KeyRegistry; 013import com.echothree.model.jooq.server.tables.associate.AssociatePrograms.AssociateProgramsPath; 014import com.echothree.model.jooq.server.tables.associate.Associates.AssociatesPath; 015import com.echothree.model.jooq.server.tables.core.MimeTypes.MimeTypesPath; 016import com.echothree.model.jooq.server.tables.party.Parties.PartiesPath; 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 AssociateDetails extends TableImpl<com.echothree.model.jooq.server.records.associate.AssociateDetails> { 050 051 private static final long serialVersionUID = 1L; 052 053 /** 054 * The reference instance of <code>associatedetails</code> 055 */ 056 public static final AssociateDetails AssociateDetails = new AssociateDetails(); 057 058 /** 059 * The class holding records for this type 060 */ 061 @Override 062 public Class<com.echothree.model.jooq.server.records.associate.AssociateDetails> getRecordType() { 063 return com.echothree.model.jooq.server.records.associate.AssociateDetails.class; 064 } 065 066 /** 067 * The column <code>associatedetails.ascdt_associatedetailid</code>. 068 */ 069 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, AssociateDetailPK> ASSOCIATE_DETAIL = createField(DSL.name("ascdt_associatedetailid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, AssociateDetailPK.class, id -> new com.echothree.model.data.associate.common.pk.AssociateDetailPK(id), primaryKey -> primaryKey.getEntityId())); 070 071 /** 072 * The column <code>associatedetails.ascdt_asc_associateid</code>. 073 */ 074 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, AssociatePK> ASSOCIATE = createField(DSL.name("ascdt_asc_associateid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, AssociatePK.class, id -> new com.echothree.model.data.associate.common.pk.AssociatePK(id), primaryKey -> primaryKey.getEntityId())); 075 076 /** 077 * The column 078 * <code>associatedetails.ascdt_ascprgm_associateprogramid</code>. 079 */ 080 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, AssociateProgramPK> ASSOCIATE_PROGRAM = createField(DSL.name("ascdt_ascprgm_associateprogramid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, AssociateProgramPK.class, id -> new com.echothree.model.data.associate.common.pk.AssociateProgramPK(id), primaryKey -> primaryKey.getEntityId())); 081 082 /** 083 * The column <code>associatedetails.ascdt_associatename</code>. 084 */ 085 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, String> ASSOCIATE_NAME = createField(DSL.name("ascdt_associatename"), SQLDataType.VARCHAR(40).nullable(false), this, ""); 086 087 /** 088 * The column <code>associatedetails.ascdt_par_partyid</code>. 089 */ 090 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, PartyPK> PARTY = createField(DSL.name("ascdt_par_partyid"), 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())); 091 092 /** 093 * The column <code>associatedetails.ascdt_description</code>. 094 */ 095 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, String> DESCRIPTION = createField(DSL.name("ascdt_description"), SQLDataType.VARCHAR(132).nullable(false), this, ""); 096 097 /** 098 * The column <code>associatedetails.ascdt_summarymimetypeid</code>. 099 */ 100 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, MimeTypePK> SUMMARY_MIME_TYPE = createField(DSL.name("ascdt_summarymimetypeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, MimeTypePK.class, id -> new com.echothree.model.data.core.common.pk.MimeTypePK(id), primaryKey -> primaryKey.getEntityId())); 101 102 /** 103 * The column <code>associatedetails.ascdt_summary</code>. 104 */ 105 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, String> SUMMARY = createField(DSL.name("ascdt_summary"), SQLDataType.CLOB.nullable(false), this, ""); 106 107 /** 108 * The column <code>associatedetails.ascdt_fromtime</code>. 109 */ 110 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, Long> FROM_TIME = createField(DSL.name("ascdt_fromtime"), SQLDataType.BIGINT.nullable(false), this, ""); 111 112 /** 113 * The column <code>associatedetails.ascdt_thrutime</code>. 114 */ 115 public final TableField<com.echothree.model.jooq.server.records.associate.AssociateDetails, Long> THRU_TIME = createField(DSL.name("ascdt_thrutime"), SQLDataType.BIGINT.nullable(false), this, ""); 116 117 private AssociateDetails(Name alias, Table<com.echothree.model.jooq.server.records.associate.AssociateDetails> aliased) { 118 this(alias, aliased, (Field<?>[]) null, null); 119 } 120 121 private AssociateDetails(Name alias, Table<com.echothree.model.jooq.server.records.associate.AssociateDetails> aliased, Field<?>[] parameters, Condition where) { 122 super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where); 123 } 124 125 /** 126 * Create an aliased <code>associatedetails</code> table reference 127 */ 128 public AssociateDetails(String alias) { 129 this(DSL.name(alias), AssociateDetails); 130 } 131 132 /** 133 * Create an aliased <code>associatedetails</code> table reference 134 */ 135 public AssociateDetails(Name alias) { 136 this(alias, AssociateDetails); 137 } 138 139 /** 140 * Create a <code>associatedetails</code> table reference 141 */ 142 public AssociateDetails() { 143 this(DSL.name("associatedetails"), null); 144 } 145 146 public <O extends Record> AssociateDetails(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.associate.AssociateDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.associate.AssociateDetails> parentPath) { 147 super(path, childPath, parentPath, AssociateDetails); 148 } 149 150 /** 151 * A subtype implementing {@link Path} for simplified path-based joins. 152 */ 153 public static class AssociateDetailsPath extends AssociateDetails implements Path<com.echothree.model.jooq.server.records.associate.AssociateDetails> { 154 155 private static final long serialVersionUID = 1L; 156 public <O extends Record> AssociateDetailsPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.associate.AssociateDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.associate.AssociateDetails> parentPath) { 157 super(path, childPath, parentPath); 158 } 159 private AssociateDetailsPath(Name alias, Table<com.echothree.model.jooq.server.records.associate.AssociateDetails> aliased) { 160 super(alias, aliased); 161 } 162 163 @Override 164 public AssociateDetailsPath as(String alias) { 165 return new AssociateDetailsPath(DSL.name(alias), this); 166 } 167 168 @Override 169 public AssociateDetailsPath as(Name alias) { 170 return new AssociateDetailsPath(alias, this); 171 } 172 173 @Override 174 public AssociateDetailsPath as(Table<?> alias) { 175 return new AssociateDetailsPath(alias.getQualifiedName(), this); 176 } 177 } 178 179 @Override 180 public UniqueKey<com.echothree.model.jooq.server.records.associate.AssociateDetails> getPrimaryKey() { 181 return KeyRegistry.ASSOCIATE_DETAILS_PK; 182 } 183 184 @Override 185 public List<UniqueKey<com.echothree.model.jooq.server.records.associate.AssociateDetails>> getUniqueKeys() { 186 return Arrays.asList(KeyRegistry.ASSOCIATE_DETAILS_ASSOCIATE_AND_THRU_TIME_UK, KeyRegistry.ASSOCIATE_DETAILS_ASSOCIATE_PROGRAM_AND_ASSOCIATE_NAME_AND_THRU_TIME_UK); 187 } 188 189 @Override 190 public List<ForeignKey<com.echothree.model.jooq.server.records.associate.AssociateDetails, ?>> getReferences() { 191 return Arrays.asList(KeyRegistry.ASSOCIATE_DETAILS_ASSOCIATE_FK, KeyRegistry.ASSOCIATE_DETAILS_ASSOCIATE_PROGRAM_FK, KeyRegistry.ASSOCIATE_DETAILS_PARTY_FK, KeyRegistry.ASSOCIATE_DETAILS_SUMMARY_MIME_TYPE_FK); 192 } 193 194 private transient AssociatesPath _ascdt_asc_associateid_fk; 195 196 /** 197 * Get the implicit join path to the <code>associates</code> table. 198 */ 199 public AssociatesPath ascdt_asc_associateid_fk() { 200 if (_ascdt_asc_associateid_fk == null) 201 _ascdt_asc_associateid_fk = new AssociatesPath(this, KeyRegistry.ASSOCIATE_DETAILS_ASSOCIATE_FK, null); 202 203 return _ascdt_asc_associateid_fk; 204 } 205 206 private transient AssociateProgramsPath _ascdt_ascprgm_associateprogramid_fk; 207 208 /** 209 * Get the implicit join path to the <code>associateprograms</code> table. 210 */ 211 public AssociateProgramsPath ascdt_ascprgm_associateprogramid_fk() { 212 if (_ascdt_ascprgm_associateprogramid_fk == null) 213 _ascdt_ascprgm_associateprogramid_fk = new AssociateProgramsPath(this, KeyRegistry.ASSOCIATE_DETAILS_ASSOCIATE_PROGRAM_FK, null); 214 215 return _ascdt_ascprgm_associateprogramid_fk; 216 } 217 218 private transient PartiesPath _ascdt_par_partyid_fk; 219 220 /** 221 * Get the implicit join path to the <code>parties</code> table. 222 */ 223 public PartiesPath ascdt_par_partyid_fk() { 224 if (_ascdt_par_partyid_fk == null) 225 _ascdt_par_partyid_fk = new PartiesPath(this, KeyRegistry.ASSOCIATE_DETAILS_PARTY_FK, null); 226 227 return _ascdt_par_partyid_fk; 228 } 229 230 private transient MimeTypesPath _ascdt_summarymimetypeid_fk; 231 232 /** 233 * Get the implicit join path to the <code>mimetypes</code> table. 234 */ 235 public MimeTypesPath ascdt_summarymimetypeid_fk() { 236 if (_ascdt_summarymimetypeid_fk == null) 237 _ascdt_summarymimetypeid_fk = new MimeTypesPath(this, KeyRegistry.ASSOCIATE_DETAILS_SUMMARY_MIME_TYPE_FK, null); 238 239 return _ascdt_summarymimetypeid_fk; 240 } 241 242 @Override 243 public AssociateDetails as(String alias) { 244 return new AssociateDetails(DSL.name(alias), this); 245 } 246 247 @Override 248 public AssociateDetails as(Name alias) { 249 return new AssociateDetails(alias, this); 250 } 251 252 @Override 253 public AssociateDetails as(Table<?> alias) { 254 return new AssociateDetails(alias.getQualifiedName(), this); 255 } 256 257 /** 258 * Rename this table 259 */ 260 @Override 261 public AssociateDetails rename(String name) { 262 return new AssociateDetails(DSL.name(name), null); 263 } 264 265 /** 266 * Rename this table 267 */ 268 @Override 269 public AssociateDetails rename(Name name) { 270 return new AssociateDetails(name, null); 271 } 272 273 /** 274 * Rename this table 275 */ 276 @Override 277 public AssociateDetails rename(Table<?> name) { 278 return new AssociateDetails(name.getQualifiedName(), null); 279 } 280 281 /** 282 * Create an inline derived table from this table 283 */ 284 @Override 285 public AssociateDetails where(Condition condition) { 286 return new AssociateDetails(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition)); 287 } 288 289 /** 290 * Create an inline derived table from this table 291 */ 292 @Override 293 public AssociateDetails where(Collection<? extends Condition> conditions) { 294 return where(DSL.and(conditions)); 295 } 296 297 /** 298 * Create an inline derived table from this table 299 */ 300 @Override 301 public AssociateDetails where(Condition... conditions) { 302 return where(DSL.and(conditions)); 303 } 304 305 /** 306 * Create an inline derived table from this table 307 */ 308 @Override 309 public AssociateDetails where(Field<Boolean> 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 AssociateDetails where(SQL 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 AssociateDetails where(@Stringly.SQL String condition) { 328 return where(DSL.condition(condition)); 329 } 330 331 /** 332 * Create an inline derived table from this table 333 */ 334 @Override 335 @PlainSQL 336 public AssociateDetails where(@Stringly.SQL String condition, Object... binds) { 337 return where(DSL.condition(condition, binds)); 338 } 339 340 /** 341 * Create an inline derived table from this table 342 */ 343 @Override 344 @PlainSQL 345 public AssociateDetails where(@Stringly.SQL String condition, QueryPart... parts) { 346 return where(DSL.condition(condition, parts)); 347 } 348 349 /** 350 * Create an inline derived table from this table 351 */ 352 @Override 353 public AssociateDetails whereExists(TableLike<?> select) { 354 return where(DSL.exists(select)); 355 } 356 357 /** 358 * Create an inline derived table from this table 359 */ 360 @Override 361 public AssociateDetails whereNotExists(TableLike<?> select) { 362 return where(DSL.notExists(select)); 363 } 364}