001// -------------------------------------------------------------------------------- 002// Copyright 2002-2026 Echo Three, LLC 003// 004// Licensed under the Apache License, Version 2.0 (the "License"); 005// you may not use this file except in compliance with the License. 006// You may obtain a copy of the License at 007// 008// http://www.apache.org/licenses/LICENSE-2.0 009// 010// Unless required by applicable law or agreed to in writing, software 011// distributed under the License is distributed on an "AS IS" BASIS, 012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013// See the License for the specific language governing permissions and 014// limitations under the License. 015// -------------------------------------------------------------------------------- 016// Generated File -- DO NOT EDIT BY HAND 017// -------------------------------------------------------------------------------- 018 019/** 020 * PartyTrainingClassSessionStatusValue.java 021 */ 022 023package com.echothree.model.data.training.server.value; 024 025import com.echothree.model.data.training.common.pk.PartyTrainingClassSessionStatusPK; 026 027import com.echothree.model.data.training.server.factory.PartyTrainingClassSessionStatusFactory; 028 029import com.echothree.model.data.training.common.pk.PartyTrainingClassSessionPK; 030import com.echothree.model.data.training.common.pk.PartyTrainingClassSessionSectionPK; 031import com.echothree.model.data.training.common.pk.PartyTrainingClassSessionPagePK; 032import com.echothree.model.data.training.common.pk.PartyTrainingClassSessionQuestionPK; 033 034import com.echothree.util.common.exception.PersistenceCloneException; 035import com.echothree.util.common.exception.PersistenceNotNullException; 036 037import com.echothree.util.server.persistence.BaseValue; 038 039import java.io.Serializable; 040 041import javax.annotation.Nonnull; 042import javax.annotation.Nullable; 043 044public class PartyTrainingClassSessionStatusValue 045 extends BaseValue<PartyTrainingClassSessionStatusPK> 046 implements Cloneable, Serializable { 047 048 private PartyTrainingClassSessionPK partyTrainingClassSessionPK; 049 private boolean partyTrainingClassSessionPKHasBeenModified = false; 050 private Integer partyTrainingClassSessionSectionSequence; 051 private boolean partyTrainingClassSessionSectionSequenceHasBeenModified = false; 052 private Integer partyTrainingClassSessionPageSequence; 053 private boolean partyTrainingClassSessionPageSequenceHasBeenModified = false; 054 private PartyTrainingClassSessionSectionPK lastPartyTrainingClassSessionSectionPK; 055 private boolean lastPartyTrainingClassSessionSectionPKHasBeenModified = false; 056 private PartyTrainingClassSessionPagePK lastPartyTrainingClassSessionPagePK; 057 private boolean lastPartyTrainingClassSessionPagePKHasBeenModified = false; 058 private PartyTrainingClassSessionQuestionPK lastPartyTrainingClassSessionQuestionPK; 059 private boolean lastPartyTrainingClassSessionQuestionPKHasBeenModified = false; 060 061 private transient Integer _hashCode = null; 062 private transient String _stringValue = null; 063 064 private void constructFields(PartyTrainingClassSessionPK partyTrainingClassSessionPK, Integer partyTrainingClassSessionSectionSequence, Integer partyTrainingClassSessionPageSequence, PartyTrainingClassSessionSectionPK lastPartyTrainingClassSessionSectionPK, PartyTrainingClassSessionPagePK lastPartyTrainingClassSessionPagePK, PartyTrainingClassSessionQuestionPK lastPartyTrainingClassSessionQuestionPK) 065 throws PersistenceNotNullException { 066 checkForNull(partyTrainingClassSessionPK); 067 this.partyTrainingClassSessionPK = partyTrainingClassSessionPK; 068 checkForNull(partyTrainingClassSessionSectionSequence); 069 this.partyTrainingClassSessionSectionSequence = partyTrainingClassSessionSectionSequence; 070 checkForNull(partyTrainingClassSessionPageSequence); 071 this.partyTrainingClassSessionPageSequence = partyTrainingClassSessionPageSequence; 072 this.lastPartyTrainingClassSessionSectionPK = lastPartyTrainingClassSessionSectionPK; 073 this.lastPartyTrainingClassSessionPagePK = lastPartyTrainingClassSessionPagePK; 074 this.lastPartyTrainingClassSessionQuestionPK = lastPartyTrainingClassSessionQuestionPK; 075 } 076 077 /** Creates a new instance of PartyTrainingClassSessionStatusValue */ 078 public PartyTrainingClassSessionStatusValue(PartyTrainingClassSessionStatusPK partyTrainingClassSessionStatusPK, PartyTrainingClassSessionPK partyTrainingClassSessionPK, Integer partyTrainingClassSessionSectionSequence, Integer partyTrainingClassSessionPageSequence, PartyTrainingClassSessionSectionPK lastPartyTrainingClassSessionSectionPK, PartyTrainingClassSessionPagePK lastPartyTrainingClassSessionPagePK, PartyTrainingClassSessionQuestionPK lastPartyTrainingClassSessionQuestionPK) 079 throws PersistenceNotNullException { 080 super(partyTrainingClassSessionStatusPK); 081 constructFields(partyTrainingClassSessionPK, partyTrainingClassSessionSectionSequence, partyTrainingClassSessionPageSequence, lastPartyTrainingClassSessionSectionPK, lastPartyTrainingClassSessionPagePK, lastPartyTrainingClassSessionQuestionPK); 082 } 083 084 /** Creates a new instance of PartyTrainingClassSessionStatusValue */ 085 public PartyTrainingClassSessionStatusValue(PartyTrainingClassSessionPK partyTrainingClassSessionPK, Integer partyTrainingClassSessionSectionSequence, Integer partyTrainingClassSessionPageSequence, PartyTrainingClassSessionSectionPK lastPartyTrainingClassSessionSectionPK, PartyTrainingClassSessionPagePK lastPartyTrainingClassSessionPagePK, PartyTrainingClassSessionQuestionPK lastPartyTrainingClassSessionQuestionPK) 086 throws PersistenceNotNullException { 087 super(); 088 constructFields(partyTrainingClassSessionPK, partyTrainingClassSessionSectionSequence, partyTrainingClassSessionPageSequence, lastPartyTrainingClassSessionSectionPK, lastPartyTrainingClassSessionPagePK, lastPartyTrainingClassSessionQuestionPK); 089 } 090 091 @Override 092 @Nonnull 093 public PartyTrainingClassSessionStatusFactory getBaseFactoryInstance() { 094 return PartyTrainingClassSessionStatusFactory.getInstance(); 095 } 096 097 @Override 098 @Nonnull 099 public PartyTrainingClassSessionStatusValue clone() { 100 Object result; 101 102 try { 103 result = super.clone(); 104 } catch (CloneNotSupportedException cnse) { 105 // This shouldn't happen, fail when it does. 106 throw new PersistenceCloneException(cnse); 107 } 108 109 return (PartyTrainingClassSessionStatusValue)result; 110 } 111 112 @Override 113 @Nonnull 114 public PartyTrainingClassSessionStatusPK getPrimaryKey() { 115 if(_primaryKey == null) { 116 _primaryKey = new PartyTrainingClassSessionStatusPK(entityId); 117 } 118 119 return _primaryKey; 120 } 121 122 private void clearHashAndString() { 123 _hashCode = null; 124 _stringValue = null; 125 } 126 127 @Override 128 public int hashCode() { 129 if(_hashCode == null) { 130 int hashCode = 17; 131 132 hashCode = 37 * hashCode + ((entityId != null) ? entityId.hashCode() : 0); 133 134 hashCode = 37 * hashCode + ((partyTrainingClassSessionPK != null) ? partyTrainingClassSessionPK.hashCode() : 0); 135 hashCode = 37 * hashCode + ((partyTrainingClassSessionSectionSequence != null) ? partyTrainingClassSessionSectionSequence.hashCode() : 0); 136 hashCode = 37 * hashCode + ((partyTrainingClassSessionPageSequence != null) ? partyTrainingClassSessionPageSequence.hashCode() : 0); 137 hashCode = 37 * hashCode + ((lastPartyTrainingClassSessionSectionPK != null) ? lastPartyTrainingClassSessionSectionPK.hashCode() : 0); 138 hashCode = 37 * hashCode + ((lastPartyTrainingClassSessionPagePK != null) ? lastPartyTrainingClassSessionPagePK.hashCode() : 0); 139 hashCode = 37 * hashCode + ((lastPartyTrainingClassSessionQuestionPK != null) ? lastPartyTrainingClassSessionQuestionPK.hashCode() : 0); 140 141 _hashCode = hashCode; 142 } 143 144 return _hashCode; 145 } 146 147 @Override 148 @Nonnull 149 public String toString() { 150 if(_stringValue == null) { 151 _stringValue = "{" + 152 "entityId=" + getEntityId() + 153 ", partyTrainingClassSessionPK=" + getPartyTrainingClassSessionPK() + 154 ", partyTrainingClassSessionSectionSequence=" + getPartyTrainingClassSessionSectionSequence() + 155 ", partyTrainingClassSessionPageSequence=" + getPartyTrainingClassSessionPageSequence() + 156 ", lastPartyTrainingClassSessionSectionPK=" + getLastPartyTrainingClassSessionSectionPK() + 157 ", lastPartyTrainingClassSessionPagePK=" + getLastPartyTrainingClassSessionPagePK() + 158 ", lastPartyTrainingClassSessionQuestionPK=" + getLastPartyTrainingClassSessionQuestionPK() + 159 "}"; 160 } 161 return _stringValue; 162 } 163 164 @Override 165 public boolean equals(Object other) { 166 if(this == other) 167 return true; 168 169 if(!hasIdentity()) 170 return false; 171 172 if(other instanceof PartyTrainingClassSessionStatusValue that) { 173 if(!that.hasIdentity()) 174 return false; 175 176 Long thisEntityId = getEntityId(); 177 Long thatEntityId = that.getEntityId(); 178 179 boolean objectsEqual = thisEntityId.equals(thatEntityId); 180 if(objectsEqual) 181 objectsEqual = isIdentical(that); 182 183 return objectsEqual; 184 } else { 185 return false; 186 } 187 } 188 189 public boolean isIdentical(Object other) { 190 if(other instanceof PartyTrainingClassSessionStatusValue that) { 191 boolean objectsEqual = true; 192 193 194 if(objectsEqual) { 195 PartyTrainingClassSessionPK thisPartyTrainingClassSessionPK = getPartyTrainingClassSessionPK(); 196 PartyTrainingClassSessionPK thatPartyTrainingClassSessionPK = that.getPartyTrainingClassSessionPK(); 197 198 if(thisPartyTrainingClassSessionPK == null) { 199 objectsEqual = objectsEqual && (thatPartyTrainingClassSessionPK == null); 200 } else { 201 objectsEqual = objectsEqual && thisPartyTrainingClassSessionPK.equals(thatPartyTrainingClassSessionPK); 202 } 203 } 204 205 if(objectsEqual) { 206 Integer thisPartyTrainingClassSessionSectionSequence = getPartyTrainingClassSessionSectionSequence(); 207 Integer thatPartyTrainingClassSessionSectionSequence = that.getPartyTrainingClassSessionSectionSequence(); 208 209 if(thisPartyTrainingClassSessionSectionSequence == null) { 210 objectsEqual = objectsEqual && (thatPartyTrainingClassSessionSectionSequence == null); 211 } else { 212 objectsEqual = objectsEqual && thisPartyTrainingClassSessionSectionSequence.equals(thatPartyTrainingClassSessionSectionSequence); 213 } 214 } 215 216 if(objectsEqual) { 217 Integer thisPartyTrainingClassSessionPageSequence = getPartyTrainingClassSessionPageSequence(); 218 Integer thatPartyTrainingClassSessionPageSequence = that.getPartyTrainingClassSessionPageSequence(); 219 220 if(thisPartyTrainingClassSessionPageSequence == null) { 221 objectsEqual = objectsEqual && (thatPartyTrainingClassSessionPageSequence == null); 222 } else { 223 objectsEqual = objectsEqual && thisPartyTrainingClassSessionPageSequence.equals(thatPartyTrainingClassSessionPageSequence); 224 } 225 } 226 227 if(objectsEqual) { 228 PartyTrainingClassSessionSectionPK thisLastPartyTrainingClassSessionSectionPK = getLastPartyTrainingClassSessionSectionPK(); 229 PartyTrainingClassSessionSectionPK thatLastPartyTrainingClassSessionSectionPK = that.getLastPartyTrainingClassSessionSectionPK(); 230 231 if(thisLastPartyTrainingClassSessionSectionPK == null) { 232 objectsEqual = objectsEqual && (thatLastPartyTrainingClassSessionSectionPK == null); 233 } else { 234 objectsEqual = objectsEqual && thisLastPartyTrainingClassSessionSectionPK.equals(thatLastPartyTrainingClassSessionSectionPK); 235 } 236 } 237 238 if(objectsEqual) { 239 PartyTrainingClassSessionPagePK thisLastPartyTrainingClassSessionPagePK = getLastPartyTrainingClassSessionPagePK(); 240 PartyTrainingClassSessionPagePK thatLastPartyTrainingClassSessionPagePK = that.getLastPartyTrainingClassSessionPagePK(); 241 242 if(thisLastPartyTrainingClassSessionPagePK == null) { 243 objectsEqual = objectsEqual && (thatLastPartyTrainingClassSessionPagePK == null); 244 } else { 245 objectsEqual = objectsEqual && thisLastPartyTrainingClassSessionPagePK.equals(thatLastPartyTrainingClassSessionPagePK); 246 } 247 } 248 249 if(objectsEqual) { 250 PartyTrainingClassSessionQuestionPK thisLastPartyTrainingClassSessionQuestionPK = getLastPartyTrainingClassSessionQuestionPK(); 251 PartyTrainingClassSessionQuestionPK thatLastPartyTrainingClassSessionQuestionPK = that.getLastPartyTrainingClassSessionQuestionPK(); 252 253 if(thisLastPartyTrainingClassSessionQuestionPK == null) { 254 objectsEqual = objectsEqual && (thatLastPartyTrainingClassSessionQuestionPK == null); 255 } else { 256 objectsEqual = objectsEqual && thisLastPartyTrainingClassSessionQuestionPK.equals(thatLastPartyTrainingClassSessionQuestionPK); 257 } 258 } 259 260 return objectsEqual; 261 } else { 262 return false; 263 } 264 } 265 266 @Override 267 public boolean hasBeenModified() { 268 return partyTrainingClassSessionPKHasBeenModified || partyTrainingClassSessionSectionSequenceHasBeenModified || partyTrainingClassSessionPageSequenceHasBeenModified || lastPartyTrainingClassSessionSectionPKHasBeenModified || lastPartyTrainingClassSessionPagePKHasBeenModified || lastPartyTrainingClassSessionQuestionPKHasBeenModified; 269 } 270 271 @Override 272 public void clearHasBeenModified() { 273 partyTrainingClassSessionPKHasBeenModified = false; 274 partyTrainingClassSessionSectionSequenceHasBeenModified = false; 275 partyTrainingClassSessionPageSequenceHasBeenModified = false; 276 lastPartyTrainingClassSessionSectionPKHasBeenModified = false; 277 lastPartyTrainingClassSessionPagePKHasBeenModified = false; 278 lastPartyTrainingClassSessionQuestionPKHasBeenModified = false; 279 } 280 281 @Nonnull 282 public PartyTrainingClassSessionPK getPartyTrainingClassSessionPK() { 283 return partyTrainingClassSessionPK; 284 } 285 286 public void setPartyTrainingClassSessionPK(@Nonnull PartyTrainingClassSessionPK partyTrainingClassSessionPK) 287 throws PersistenceNotNullException { 288 checkForNull(partyTrainingClassSessionPK); 289 290 boolean update = true; 291 292 if(this.partyTrainingClassSessionPK != null) { 293 if(this.partyTrainingClassSessionPK.equals(partyTrainingClassSessionPK)) { 294 update = false; 295 } 296 } else if(partyTrainingClassSessionPK == null) { 297 update = false; 298 } 299 300 if(update) { 301 this.partyTrainingClassSessionPK = partyTrainingClassSessionPK; 302 partyTrainingClassSessionPKHasBeenModified = true; 303 clearHashAndString(); 304 } 305 } 306 307 public boolean getPartyTrainingClassSessionPKHasBeenModified() { 308 return partyTrainingClassSessionPKHasBeenModified; 309 } 310 311 @Nonnull 312 public Integer getPartyTrainingClassSessionSectionSequence() { 313 return partyTrainingClassSessionSectionSequence; 314 } 315 316 public void setPartyTrainingClassSessionSectionSequence(@Nonnull Integer partyTrainingClassSessionSectionSequence) 317 throws PersistenceNotNullException { 318 checkForNull(partyTrainingClassSessionSectionSequence); 319 320 boolean update = true; 321 322 if(this.partyTrainingClassSessionSectionSequence != null) { 323 if(this.partyTrainingClassSessionSectionSequence.equals(partyTrainingClassSessionSectionSequence)) { 324 update = false; 325 } 326 } else if(partyTrainingClassSessionSectionSequence == null) { 327 update = false; 328 } 329 330 if(update) { 331 this.partyTrainingClassSessionSectionSequence = partyTrainingClassSessionSectionSequence; 332 partyTrainingClassSessionSectionSequenceHasBeenModified = true; 333 clearHashAndString(); 334 } 335 } 336 337 public boolean getPartyTrainingClassSessionSectionSequenceHasBeenModified() { 338 return partyTrainingClassSessionSectionSequenceHasBeenModified; 339 } 340 341 @Nonnull 342 public Integer getPartyTrainingClassSessionPageSequence() { 343 return partyTrainingClassSessionPageSequence; 344 } 345 346 public void setPartyTrainingClassSessionPageSequence(@Nonnull Integer partyTrainingClassSessionPageSequence) 347 throws PersistenceNotNullException { 348 checkForNull(partyTrainingClassSessionPageSequence); 349 350 boolean update = true; 351 352 if(this.partyTrainingClassSessionPageSequence != null) { 353 if(this.partyTrainingClassSessionPageSequence.equals(partyTrainingClassSessionPageSequence)) { 354 update = false; 355 } 356 } else if(partyTrainingClassSessionPageSequence == null) { 357 update = false; 358 } 359 360 if(update) { 361 this.partyTrainingClassSessionPageSequence = partyTrainingClassSessionPageSequence; 362 partyTrainingClassSessionPageSequenceHasBeenModified = true; 363 clearHashAndString(); 364 } 365 } 366 367 public boolean getPartyTrainingClassSessionPageSequenceHasBeenModified() { 368 return partyTrainingClassSessionPageSequenceHasBeenModified; 369 } 370 371 @Nullable 372 public PartyTrainingClassSessionSectionPK getLastPartyTrainingClassSessionSectionPK() { 373 return lastPartyTrainingClassSessionSectionPK; 374 } 375 376 public void setLastPartyTrainingClassSessionSectionPK(@Nullable PartyTrainingClassSessionSectionPK lastPartyTrainingClassSessionSectionPK) { 377 boolean update = true; 378 379 if(this.lastPartyTrainingClassSessionSectionPK != null) { 380 if(this.lastPartyTrainingClassSessionSectionPK.equals(lastPartyTrainingClassSessionSectionPK)) { 381 update = false; 382 } 383 } else if(lastPartyTrainingClassSessionSectionPK == null) { 384 update = false; 385 } 386 387 if(update) { 388 this.lastPartyTrainingClassSessionSectionPK = lastPartyTrainingClassSessionSectionPK; 389 lastPartyTrainingClassSessionSectionPKHasBeenModified = true; 390 clearHashAndString(); 391 } 392 } 393 394 public boolean getLastPartyTrainingClassSessionSectionPKHasBeenModified() { 395 return lastPartyTrainingClassSessionSectionPKHasBeenModified; 396 } 397 398 @Nullable 399 public PartyTrainingClassSessionPagePK getLastPartyTrainingClassSessionPagePK() { 400 return lastPartyTrainingClassSessionPagePK; 401 } 402 403 public void setLastPartyTrainingClassSessionPagePK(@Nullable PartyTrainingClassSessionPagePK lastPartyTrainingClassSessionPagePK) { 404 boolean update = true; 405 406 if(this.lastPartyTrainingClassSessionPagePK != null) { 407 if(this.lastPartyTrainingClassSessionPagePK.equals(lastPartyTrainingClassSessionPagePK)) { 408 update = false; 409 } 410 } else if(lastPartyTrainingClassSessionPagePK == null) { 411 update = false; 412 } 413 414 if(update) { 415 this.lastPartyTrainingClassSessionPagePK = lastPartyTrainingClassSessionPagePK; 416 lastPartyTrainingClassSessionPagePKHasBeenModified = true; 417 clearHashAndString(); 418 } 419 } 420 421 public boolean getLastPartyTrainingClassSessionPagePKHasBeenModified() { 422 return lastPartyTrainingClassSessionPagePKHasBeenModified; 423 } 424 425 @Nullable 426 public PartyTrainingClassSessionQuestionPK getLastPartyTrainingClassSessionQuestionPK() { 427 return lastPartyTrainingClassSessionQuestionPK; 428 } 429 430 public void setLastPartyTrainingClassSessionQuestionPK(@Nullable PartyTrainingClassSessionQuestionPK lastPartyTrainingClassSessionQuestionPK) { 431 boolean update = true; 432 433 if(this.lastPartyTrainingClassSessionQuestionPK != null) { 434 if(this.lastPartyTrainingClassSessionQuestionPK.equals(lastPartyTrainingClassSessionQuestionPK)) { 435 update = false; 436 } 437 } else if(lastPartyTrainingClassSessionQuestionPK == null) { 438 update = false; 439 } 440 441 if(update) { 442 this.lastPartyTrainingClassSessionQuestionPK = lastPartyTrainingClassSessionQuestionPK; 443 lastPartyTrainingClassSessionQuestionPKHasBeenModified = true; 444 clearHashAndString(); 445 } 446 } 447 448 public boolean getLastPartyTrainingClassSessionQuestionPKHasBeenModified() { 449 return lastPartyTrainingClassSessionQuestionPKHasBeenModified; 450 } 451 452}