001/* 002 * This file is generated by jOOQ. 003 */ 004package com.echothree.model.jooq.server.tables.message; 005 006 007import com.echothree.model.data.message.common.pk.MessageDetailPK; 008import com.echothree.model.data.message.common.pk.MessagePK; 009import com.echothree.model.data.message.common.pk.MessageTypePK; 010import com.echothree.model.jooq.server.KeyRegistry; 011import com.echothree.model.jooq.server.tables.message.MessageTypes.MessageTypesPath; 012import com.echothree.model.jooq.server.tables.message.Messages.MessagesPath; 013 014import java.util.Arrays; 015import java.util.Collection; 016import java.util.List; 017 018import org.jooq.Condition; 019import org.jooq.Converter; 020import org.jooq.Field; 021import org.jooq.ForeignKey; 022import org.jooq.InverseForeignKey; 023import org.jooq.Name; 024import org.jooq.Path; 025import org.jooq.PlainSQL; 026import org.jooq.QueryPart; 027import org.jooq.Record; 028import org.jooq.SQL; 029import org.jooq.Stringly; 030import org.jooq.Table; 031import org.jooq.TableField; 032import org.jooq.TableLike; 033import org.jooq.TableOptions; 034import org.jooq.UniqueKey; 035import org.jooq.impl.DSL; 036import org.jooq.impl.Internal; 037import org.jooq.impl.SQLDataType; 038import org.jooq.impl.TableImpl; 039 040 041/** 042 * This class is generated by jOOQ. 043 */ 044@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" }) 045public class MessageDetails extends TableImpl<com.echothree.model.jooq.server.records.message.MessageDetails> { 046 047 private static final long serialVersionUID = 1L; 048 049 /** 050 * The reference instance of <code>messagedetails</code> 051 */ 052 public static final MessageDetails MessageDetails = new MessageDetails(); 053 054 /** 055 * The class holding records for this type 056 */ 057 @Override 058 public Class<com.echothree.model.jooq.server.records.message.MessageDetails> getRecordType() { 059 return com.echothree.model.jooq.server.records.message.MessageDetails.class; 060 } 061 062 /** 063 * The column <code>messagedetails.mssgdt_messagedetailid</code>. 064 */ 065 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, MessageDetailPK> MESSAGE_DETAIL = createField(DSL.name("mssgdt_messagedetailid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, MessageDetailPK.class, id -> new com.echothree.model.data.message.common.pk.MessageDetailPK(id), primaryKey -> primaryKey.getEntityId())); 066 067 /** 068 * The column <code>messagedetails.mssgdt_mssg_messageid</code>. 069 */ 070 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, MessagePK> MESSAGE = createField(DSL.name("mssgdt_mssg_messageid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, MessagePK.class, id -> new com.echothree.model.data.message.common.pk.MessagePK(id), primaryKey -> primaryKey.getEntityId())); 071 072 /** 073 * The column <code>messagedetails.mssgdt_mssgtyp_messagetypeid</code>. 074 */ 075 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, MessageTypePK> MESSAGE_TYPE = createField(DSL.name("mssgdt_mssgtyp_messagetypeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, MessageTypePK.class, id -> new com.echothree.model.data.message.common.pk.MessageTypePK(id), primaryKey -> primaryKey.getEntityId())); 076 077 /** 078 * The column <code>messagedetails.mssgdt_messagename</code>. 079 */ 080 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, String> MESSAGE_NAME = createField(DSL.name("mssgdt_messagename"), SQLDataType.VARCHAR(40).nullable(false), this, ""); 081 082 /** 083 * The column <code>messagedetails.mssgdt_includebydefault</code>. 084 */ 085 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, Boolean> INCLUDE_BY_DEFAULT = createField(DSL.name("mssgdt_includebydefault"), SQLDataType.BIT.nullable(false), this, ""); 086 087 /** 088 * The column <code>messagedetails.mssgdt_isdefault</code>. 089 */ 090 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, Boolean> IS_DEFAULT = createField(DSL.name("mssgdt_isdefault"), SQLDataType.BIT.nullable(false), this, ""); 091 092 /** 093 * The column <code>messagedetails.mssgdt_sortorder</code>. 094 */ 095 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, Integer> SORT_ORDER = createField(DSL.name("mssgdt_sortorder"), SQLDataType.INTEGER.nullable(false), this, ""); 096 097 /** 098 * The column <code>messagedetails.mssgdt_fromtime</code>. 099 */ 100 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, Long> FROM_TIME = createField(DSL.name("mssgdt_fromtime"), SQLDataType.BIGINT.nullable(false), this, ""); 101 102 /** 103 * The column <code>messagedetails.mssgdt_thrutime</code>. 104 */ 105 public final TableField<com.echothree.model.jooq.server.records.message.MessageDetails, Long> THRU_TIME = createField(DSL.name("mssgdt_thrutime"), SQLDataType.BIGINT.nullable(false), this, ""); 106 107 private MessageDetails(Name alias, Table<com.echothree.model.jooq.server.records.message.MessageDetails> aliased) { 108 this(alias, aliased, (Field<?>[]) null, null); 109 } 110 111 private MessageDetails(Name alias, Table<com.echothree.model.jooq.server.records.message.MessageDetails> aliased, Field<?>[] parameters, Condition where) { 112 super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where); 113 } 114 115 /** 116 * Create an aliased <code>messagedetails</code> table reference 117 */ 118 public MessageDetails(String alias) { 119 this(DSL.name(alias), MessageDetails); 120 } 121 122 /** 123 * Create an aliased <code>messagedetails</code> table reference 124 */ 125 public MessageDetails(Name alias) { 126 this(alias, MessageDetails); 127 } 128 129 /** 130 * Create a <code>messagedetails</code> table reference 131 */ 132 public MessageDetails() { 133 this(DSL.name("messagedetails"), null); 134 } 135 136 public <O extends Record> MessageDetails(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.message.MessageDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.message.MessageDetails> parentPath) { 137 super(path, childPath, parentPath, MessageDetails); 138 } 139 140 /** 141 * A subtype implementing {@link Path} for simplified path-based joins. 142 */ 143 public static class MessageDetailsPath extends MessageDetails implements Path<com.echothree.model.jooq.server.records.message.MessageDetails> { 144 145 private static final long serialVersionUID = 1L; 146 public <O extends Record> MessageDetailsPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.message.MessageDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.message.MessageDetails> parentPath) { 147 super(path, childPath, parentPath); 148 } 149 private MessageDetailsPath(Name alias, Table<com.echothree.model.jooq.server.records.message.MessageDetails> aliased) { 150 super(alias, aliased); 151 } 152 153 @Override 154 public MessageDetailsPath as(String alias) { 155 return new MessageDetailsPath(DSL.name(alias), this); 156 } 157 158 @Override 159 public MessageDetailsPath as(Name alias) { 160 return new MessageDetailsPath(alias, this); 161 } 162 163 @Override 164 public MessageDetailsPath as(Table<?> alias) { 165 return new MessageDetailsPath(alias.getQualifiedName(), this); 166 } 167 } 168 169 @Override 170 public UniqueKey<com.echothree.model.jooq.server.records.message.MessageDetails> getPrimaryKey() { 171 return KeyRegistry.MESSAGE_DETAILS_PK; 172 } 173 174 @Override 175 public List<UniqueKey<com.echothree.model.jooq.server.records.message.MessageDetails>> getUniqueKeys() { 176 return Arrays.asList(KeyRegistry.MESSAGE_DETAILS_MESSAGE_AND_THRU_TIME_UK, KeyRegistry.MESSAGE_DETAILS_MESSAGE_TYPE_AND_MESSAGE_NAME_AND_THRU_TIME_UK); 177 } 178 179 @Override 180 public List<ForeignKey<com.echothree.model.jooq.server.records.message.MessageDetails, ?>> getReferences() { 181 return Arrays.asList(KeyRegistry.MESSAGE_DETAILS_MESSAGE_FK, KeyRegistry.MESSAGE_DETAILS_MESSAGE_TYPE_FK); 182 } 183 184 private transient MessagesPath _mssgdt_mssg_messageid_fk; 185 186 /** 187 * Get the implicit join path to the <code>messages</code> table. 188 */ 189 public MessagesPath mssgdt_mssg_messageid_fk() { 190 if (_mssgdt_mssg_messageid_fk == null) 191 _mssgdt_mssg_messageid_fk = new MessagesPath(this, KeyRegistry.MESSAGE_DETAILS_MESSAGE_FK, null); 192 193 return _mssgdt_mssg_messageid_fk; 194 } 195 196 private transient MessageTypesPath _mssgdt_mssgtyp_messagetypeid_fk; 197 198 /** 199 * Get the implicit join path to the <code>messagetypes</code> table. 200 */ 201 public MessageTypesPath mssgdt_mssgtyp_messagetypeid_fk() { 202 if (_mssgdt_mssgtyp_messagetypeid_fk == null) 203 _mssgdt_mssgtyp_messagetypeid_fk = new MessageTypesPath(this, KeyRegistry.MESSAGE_DETAILS_MESSAGE_TYPE_FK, null); 204 205 return _mssgdt_mssgtyp_messagetypeid_fk; 206 } 207 208 @Override 209 public MessageDetails as(String alias) { 210 return new MessageDetails(DSL.name(alias), this); 211 } 212 213 @Override 214 public MessageDetails as(Name alias) { 215 return new MessageDetails(alias, this); 216 } 217 218 @Override 219 public MessageDetails as(Table<?> alias) { 220 return new MessageDetails(alias.getQualifiedName(), this); 221 } 222 223 /** 224 * Rename this table 225 */ 226 @Override 227 public MessageDetails rename(String name) { 228 return new MessageDetails(DSL.name(name), null); 229 } 230 231 /** 232 * Rename this table 233 */ 234 @Override 235 public MessageDetails rename(Name name) { 236 return new MessageDetails(name, null); 237 } 238 239 /** 240 * Rename this table 241 */ 242 @Override 243 public MessageDetails rename(Table<?> name) { 244 return new MessageDetails(name.getQualifiedName(), null); 245 } 246 247 /** 248 * Create an inline derived table from this table 249 */ 250 @Override 251 public MessageDetails where(Condition condition) { 252 return new MessageDetails(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition)); 253 } 254 255 /** 256 * Create an inline derived table from this table 257 */ 258 @Override 259 public MessageDetails where(Collection<? extends Condition> conditions) { 260 return where(DSL.and(conditions)); 261 } 262 263 /** 264 * Create an inline derived table from this table 265 */ 266 @Override 267 public MessageDetails where(Condition... conditions) { 268 return where(DSL.and(conditions)); 269 } 270 271 /** 272 * Create an inline derived table from this table 273 */ 274 @Override 275 public MessageDetails where(Field<Boolean> condition) { 276 return where(DSL.condition(condition)); 277 } 278 279 /** 280 * Create an inline derived table from this table 281 */ 282 @Override 283 @PlainSQL 284 public MessageDetails where(SQL condition) { 285 return where(DSL.condition(condition)); 286 } 287 288 /** 289 * Create an inline derived table from this table 290 */ 291 @Override 292 @PlainSQL 293 public MessageDetails where(@Stringly.SQL String condition) { 294 return where(DSL.condition(condition)); 295 } 296 297 /** 298 * Create an inline derived table from this table 299 */ 300 @Override 301 @PlainSQL 302 public MessageDetails where(@Stringly.SQL String condition, Object... binds) { 303 return where(DSL.condition(condition, binds)); 304 } 305 306 /** 307 * Create an inline derived table from this table 308 */ 309 @Override 310 @PlainSQL 311 public MessageDetails where(@Stringly.SQL String condition, QueryPart... parts) { 312 return where(DSL.condition(condition, parts)); 313 } 314 315 /** 316 * Create an inline derived table from this table 317 */ 318 @Override 319 public MessageDetails whereExists(TableLike<?> select) { 320 return where(DSL.exists(select)); 321 } 322 323 /** 324 * Create an inline derived table from this table 325 */ 326 @Override 327 public MessageDetails whereNotExists(TableLike<?> select) { 328 return where(DSL.notExists(select)); 329 } 330}