001// -------------------------------------------------------------------------------- 002// Copyright 2002-2025 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 * UserVisitValue.java 021 */ 022 023package com.echothree.model.data.user.server.value; 024 025import com.echothree.model.data.user.common.pk.UserVisitPK; 026 027import com.echothree.model.data.user.server.factory.UserVisitFactory; 028 029import com.echothree.model.data.user.common.pk.UserVisitGroupPK; 030import com.echothree.model.data.user.common.pk.UserKeyPK; 031import com.echothree.model.data.party.common.pk.LanguagePK; 032import com.echothree.model.data.accounting.common.pk.CurrencyPK; 033import com.echothree.model.data.party.common.pk.TimeZonePK; 034import com.echothree.model.data.party.common.pk.DateTimeFormatPK; 035import com.echothree.model.data.offer.common.pk.OfferUsePK; 036import com.echothree.model.data.associate.common.pk.AssociateReferralPK; 037 038import com.echothree.util.common.exception.PersistenceCloneException; 039import com.echothree.util.common.exception.PersistenceNotNullException; 040 041import com.echothree.util.server.persistence.BaseValue; 042 043import java.io.Serializable; 044 045public class UserVisitValue 046 extends BaseValue<UserVisitPK> 047 implements Cloneable, Serializable { 048 049 private UserVisitGroupPK userVisitGroupPK; 050 private boolean userVisitGroupPKHasBeenModified = false; 051 private UserKeyPK userKeyPK; 052 private boolean userKeyPKHasBeenModified = false; 053 private LanguagePK preferredLanguagePK; 054 private boolean preferredLanguagePKHasBeenModified = false; 055 private CurrencyPK preferredCurrencyPK; 056 private boolean preferredCurrencyPKHasBeenModified = false; 057 private TimeZonePK preferredTimeZonePK; 058 private boolean preferredTimeZonePKHasBeenModified = false; 059 private DateTimeFormatPK preferredDateTimeFormatPK; 060 private boolean preferredDateTimeFormatPKHasBeenModified = false; 061 private Long lastCommandTime; 062 private boolean lastCommandTimeHasBeenModified = false; 063 private OfferUsePK offerUsePK; 064 private boolean offerUsePKHasBeenModified = false; 065 private AssociateReferralPK associateReferralPK; 066 private boolean associateReferralPKHasBeenModified = false; 067 private Long retainUntilTime; 068 private boolean retainUntilTimeHasBeenModified = false; 069 private Long fromTime; 070 private boolean fromTimeHasBeenModified = false; 071 private Long thruTime; 072 private boolean thruTimeHasBeenModified = false; 073 074 private transient Integer _hashCode = null; 075 private transient String _stringValue = null; 076 077 private void constructFields(UserVisitGroupPK userVisitGroupPK, UserKeyPK userKeyPK, LanguagePK preferredLanguagePK, CurrencyPK preferredCurrencyPK, TimeZonePK preferredTimeZonePK, DateTimeFormatPK preferredDateTimeFormatPK, Long lastCommandTime, OfferUsePK offerUsePK, AssociateReferralPK associateReferralPK, Long retainUntilTime, Long fromTime, Long thruTime) 078 throws PersistenceNotNullException { 079 this.userVisitGroupPK = userVisitGroupPK; 080 this.userKeyPK = userKeyPK; 081 this.preferredLanguagePK = preferredLanguagePK; 082 this.preferredCurrencyPK = preferredCurrencyPK; 083 this.preferredTimeZonePK = preferredTimeZonePK; 084 this.preferredDateTimeFormatPK = preferredDateTimeFormatPK; 085 checkForNull(lastCommandTime); 086 this.lastCommandTime = lastCommandTime; 087 this.offerUsePK = offerUsePK; 088 this.associateReferralPK = associateReferralPK; 089 this.retainUntilTime = retainUntilTime; 090 checkForNull(fromTime); 091 this.fromTime = fromTime; 092 checkForNull(thruTime); 093 this.thruTime = thruTime; 094 } 095 096 /** Creates a new instance of UserVisitValue */ 097 public UserVisitValue(UserVisitPK userVisitPK, UserVisitGroupPK userVisitGroupPK, UserKeyPK userKeyPK, LanguagePK preferredLanguagePK, CurrencyPK preferredCurrencyPK, TimeZonePK preferredTimeZonePK, DateTimeFormatPK preferredDateTimeFormatPK, Long lastCommandTime, OfferUsePK offerUsePK, AssociateReferralPK associateReferralPK, Long retainUntilTime, Long fromTime, Long thruTime) 098 throws PersistenceNotNullException { 099 super(userVisitPK); 100 constructFields(userVisitGroupPK, userKeyPK, preferredLanguagePK, preferredCurrencyPK, preferredTimeZonePK, preferredDateTimeFormatPK, lastCommandTime, offerUsePK, associateReferralPK, retainUntilTime, fromTime, thruTime); 101 } 102 103 /** Creates a new instance of UserVisitValue */ 104 public UserVisitValue(UserVisitGroupPK userVisitGroupPK, UserKeyPK userKeyPK, LanguagePK preferredLanguagePK, CurrencyPK preferredCurrencyPK, TimeZonePK preferredTimeZonePK, DateTimeFormatPK preferredDateTimeFormatPK, Long lastCommandTime, OfferUsePK offerUsePK, AssociateReferralPK associateReferralPK, Long retainUntilTime, Long fromTime, Long thruTime) 105 throws PersistenceNotNullException { 106 super(); 107 constructFields(userVisitGroupPK, userKeyPK, preferredLanguagePK, preferredCurrencyPK, preferredTimeZonePK, preferredDateTimeFormatPK, lastCommandTime, offerUsePK, associateReferralPK, retainUntilTime, fromTime, thruTime); 108 } 109 110 @Override 111 public UserVisitFactory getBaseFactoryInstance() { 112 return UserVisitFactory.getInstance(); 113 } 114 115 @Override 116 public UserVisitValue clone() { 117 Object result; 118 119 try { 120 result = super.clone(); 121 } catch (CloneNotSupportedException cnse) { 122 // This shouldn't happen, fail when it does. 123 throw new PersistenceCloneException(cnse); 124 } 125 126 return (UserVisitValue)result; 127 } 128 129 @Override 130 public UserVisitPK getPrimaryKey() { 131 if(_primaryKey == null) { 132 _primaryKey = new UserVisitPK(entityId); 133 } 134 135 return _primaryKey; 136 } 137 138 private void clearHashAndString() { 139 _hashCode = null; 140 _stringValue = null; 141 } 142 143 @Override 144 public int hashCode() { 145 if(_hashCode == null) { 146 int hashCode = 17; 147 148 hashCode = 37 * hashCode + ((entityId != null) ? entityId.hashCode() : 0); 149 150 hashCode = 37 * hashCode + ((userVisitGroupPK != null) ? userVisitGroupPK.hashCode() : 0); 151 hashCode = 37 * hashCode + ((userKeyPK != null) ? userKeyPK.hashCode() : 0); 152 hashCode = 37 * hashCode + ((preferredLanguagePK != null) ? preferredLanguagePK.hashCode() : 0); 153 hashCode = 37 * hashCode + ((preferredCurrencyPK != null) ? preferredCurrencyPK.hashCode() : 0); 154 hashCode = 37 * hashCode + ((preferredTimeZonePK != null) ? preferredTimeZonePK.hashCode() : 0); 155 hashCode = 37 * hashCode + ((preferredDateTimeFormatPK != null) ? preferredDateTimeFormatPK.hashCode() : 0); 156 hashCode = 37 * hashCode + ((lastCommandTime != null) ? lastCommandTime.hashCode() : 0); 157 hashCode = 37 * hashCode + ((offerUsePK != null) ? offerUsePK.hashCode() : 0); 158 hashCode = 37 * hashCode + ((associateReferralPK != null) ? associateReferralPK.hashCode() : 0); 159 hashCode = 37 * hashCode + ((retainUntilTime != null) ? retainUntilTime.hashCode() : 0); 160 hashCode = 37 * hashCode + ((fromTime != null) ? fromTime.hashCode() : 0); 161 hashCode = 37 * hashCode + ((thruTime != null) ? thruTime.hashCode() : 0); 162 163 _hashCode = hashCode; 164 } 165 166 return _hashCode; 167 } 168 169 @Override 170 public String toString() { 171 if(_stringValue == null) { 172 _stringValue = "{" + 173 "entityId=" + getEntityId() + 174 ", userVisitGroupPK=" + getUserVisitGroupPK() + 175 ", userKeyPK=" + getUserKeyPK() + 176 ", preferredLanguagePK=" + getPreferredLanguagePK() + 177 ", preferredCurrencyPK=" + getPreferredCurrencyPK() + 178 ", preferredTimeZonePK=" + getPreferredTimeZonePK() + 179 ", preferredDateTimeFormatPK=" + getPreferredDateTimeFormatPK() + 180 ", lastCommandTime=" + getLastCommandTime() + 181 ", offerUsePK=" + getOfferUsePK() + 182 ", associateReferralPK=" + getAssociateReferralPK() + 183 ", retainUntilTime=" + getRetainUntilTime() + 184 ", fromTime=" + getFromTime() + 185 ", thruTime=" + getThruTime() + 186 "}"; 187 } 188 return _stringValue; 189 } 190 191 @Override 192 public boolean equals(Object other) { 193 if(this == other) 194 return true; 195 196 if(!hasIdentity()) 197 return false; 198 199 if(other instanceof UserVisitValue that) { 200 if(!that.hasIdentity()) 201 return false; 202 203 Long thisEntityId = getEntityId(); 204 Long thatEntityId = that.getEntityId(); 205 206 boolean objectsEqual = thisEntityId.equals(thatEntityId); 207 if(objectsEqual) 208 objectsEqual = isIdentical(that); 209 210 return objectsEqual; 211 } else { 212 return false; 213 } 214 } 215 216 public boolean isIdentical(Object other) { 217 if(other instanceof UserVisitValue that) { 218 boolean objectsEqual = true; 219 220 221 if(objectsEqual) { 222 UserVisitGroupPK thisUserVisitGroupPK = getUserVisitGroupPK(); 223 UserVisitGroupPK thatUserVisitGroupPK = that.getUserVisitGroupPK(); 224 225 if(thisUserVisitGroupPK == null) { 226 objectsEqual = objectsEqual && (thatUserVisitGroupPK == null); 227 } else { 228 objectsEqual = objectsEqual && thisUserVisitGroupPK.equals(thatUserVisitGroupPK); 229 } 230 } 231 232 if(objectsEqual) { 233 UserKeyPK thisUserKeyPK = getUserKeyPK(); 234 UserKeyPK thatUserKeyPK = that.getUserKeyPK(); 235 236 if(thisUserKeyPK == null) { 237 objectsEqual = objectsEqual && (thatUserKeyPK == null); 238 } else { 239 objectsEqual = objectsEqual && thisUserKeyPK.equals(thatUserKeyPK); 240 } 241 } 242 243 if(objectsEqual) { 244 LanguagePK thisPreferredLanguagePK = getPreferredLanguagePK(); 245 LanguagePK thatPreferredLanguagePK = that.getPreferredLanguagePK(); 246 247 if(thisPreferredLanguagePK == null) { 248 objectsEqual = objectsEqual && (thatPreferredLanguagePK == null); 249 } else { 250 objectsEqual = objectsEqual && thisPreferredLanguagePK.equals(thatPreferredLanguagePK); 251 } 252 } 253 254 if(objectsEqual) { 255 CurrencyPK thisPreferredCurrencyPK = getPreferredCurrencyPK(); 256 CurrencyPK thatPreferredCurrencyPK = that.getPreferredCurrencyPK(); 257 258 if(thisPreferredCurrencyPK == null) { 259 objectsEqual = objectsEqual && (thatPreferredCurrencyPK == null); 260 } else { 261 objectsEqual = objectsEqual && thisPreferredCurrencyPK.equals(thatPreferredCurrencyPK); 262 } 263 } 264 265 if(objectsEqual) { 266 TimeZonePK thisPreferredTimeZonePK = getPreferredTimeZonePK(); 267 TimeZonePK thatPreferredTimeZonePK = that.getPreferredTimeZonePK(); 268 269 if(thisPreferredTimeZonePK == null) { 270 objectsEqual = objectsEqual && (thatPreferredTimeZonePK == null); 271 } else { 272 objectsEqual = objectsEqual && thisPreferredTimeZonePK.equals(thatPreferredTimeZonePK); 273 } 274 } 275 276 if(objectsEqual) { 277 DateTimeFormatPK thisPreferredDateTimeFormatPK = getPreferredDateTimeFormatPK(); 278 DateTimeFormatPK thatPreferredDateTimeFormatPK = that.getPreferredDateTimeFormatPK(); 279 280 if(thisPreferredDateTimeFormatPK == null) { 281 objectsEqual = objectsEqual && (thatPreferredDateTimeFormatPK == null); 282 } else { 283 objectsEqual = objectsEqual && thisPreferredDateTimeFormatPK.equals(thatPreferredDateTimeFormatPK); 284 } 285 } 286 287 if(objectsEqual) { 288 Long thisLastCommandTime = getLastCommandTime(); 289 Long thatLastCommandTime = that.getLastCommandTime(); 290 291 if(thisLastCommandTime == null) { 292 objectsEqual = objectsEqual && (thatLastCommandTime == null); 293 } else { 294 objectsEqual = objectsEqual && thisLastCommandTime.equals(thatLastCommandTime); 295 } 296 } 297 298 if(objectsEqual) { 299 OfferUsePK thisOfferUsePK = getOfferUsePK(); 300 OfferUsePK thatOfferUsePK = that.getOfferUsePK(); 301 302 if(thisOfferUsePK == null) { 303 objectsEqual = objectsEqual && (thatOfferUsePK == null); 304 } else { 305 objectsEqual = objectsEqual && thisOfferUsePK.equals(thatOfferUsePK); 306 } 307 } 308 309 if(objectsEqual) { 310 AssociateReferralPK thisAssociateReferralPK = getAssociateReferralPK(); 311 AssociateReferralPK thatAssociateReferralPK = that.getAssociateReferralPK(); 312 313 if(thisAssociateReferralPK == null) { 314 objectsEqual = objectsEqual && (thatAssociateReferralPK == null); 315 } else { 316 objectsEqual = objectsEqual && thisAssociateReferralPK.equals(thatAssociateReferralPK); 317 } 318 } 319 320 if(objectsEqual) { 321 Long thisRetainUntilTime = getRetainUntilTime(); 322 Long thatRetainUntilTime = that.getRetainUntilTime(); 323 324 if(thisRetainUntilTime == null) { 325 objectsEqual = objectsEqual && (thatRetainUntilTime == null); 326 } else { 327 objectsEqual = objectsEqual && thisRetainUntilTime.equals(thatRetainUntilTime); 328 } 329 } 330 331 if(objectsEqual) { 332 Long thisFromTime = getFromTime(); 333 Long thatFromTime = that.getFromTime(); 334 335 if(thisFromTime == null) { 336 objectsEqual = objectsEqual && (thatFromTime == null); 337 } else { 338 objectsEqual = objectsEqual && thisFromTime.equals(thatFromTime); 339 } 340 } 341 342 if(objectsEqual) { 343 Long thisThruTime = getThruTime(); 344 Long thatThruTime = that.getThruTime(); 345 346 if(thisThruTime == null) { 347 objectsEqual = objectsEqual && (thatThruTime == null); 348 } else { 349 objectsEqual = objectsEqual && thisThruTime.equals(thatThruTime); 350 } 351 } 352 353 return objectsEqual; 354 } else { 355 return false; 356 } 357 } 358 359 @Override 360 public boolean hasBeenModified() { 361 return userVisitGroupPKHasBeenModified || userKeyPKHasBeenModified || preferredLanguagePKHasBeenModified || preferredCurrencyPKHasBeenModified || preferredTimeZonePKHasBeenModified || preferredDateTimeFormatPKHasBeenModified || lastCommandTimeHasBeenModified || offerUsePKHasBeenModified || associateReferralPKHasBeenModified || retainUntilTimeHasBeenModified || fromTimeHasBeenModified || thruTimeHasBeenModified; 362 } 363 364 @Override 365 public void clearHasBeenModified() { 366 userVisitGroupPKHasBeenModified = false; 367 userKeyPKHasBeenModified = false; 368 preferredLanguagePKHasBeenModified = false; 369 preferredCurrencyPKHasBeenModified = false; 370 preferredTimeZonePKHasBeenModified = false; 371 preferredDateTimeFormatPKHasBeenModified = false; 372 lastCommandTimeHasBeenModified = false; 373 offerUsePKHasBeenModified = false; 374 associateReferralPKHasBeenModified = false; 375 retainUntilTimeHasBeenModified = false; 376 fromTimeHasBeenModified = false; 377 thruTimeHasBeenModified = false; 378 } 379 380 public UserVisitGroupPK getUserVisitGroupPK() { 381 return userVisitGroupPK; 382 } 383 384 public void setUserVisitGroupPK(UserVisitGroupPK userVisitGroupPK) { 385 boolean update = true; 386 387 if(this.userVisitGroupPK != null) { 388 if(this.userVisitGroupPK.equals(userVisitGroupPK)) { 389 update = false; 390 } 391 } else if(userVisitGroupPK == null) { 392 update = false; 393 } 394 395 if(update) { 396 this.userVisitGroupPK = userVisitGroupPK; 397 userVisitGroupPKHasBeenModified = true; 398 clearHashAndString(); 399 } 400 } 401 402 public boolean getUserVisitGroupPKHasBeenModified() { 403 return userVisitGroupPKHasBeenModified; 404 } 405 406 public UserKeyPK getUserKeyPK() { 407 return userKeyPK; 408 } 409 410 public void setUserKeyPK(UserKeyPK userKeyPK) { 411 boolean update = true; 412 413 if(this.userKeyPK != null) { 414 if(this.userKeyPK.equals(userKeyPK)) { 415 update = false; 416 } 417 } else if(userKeyPK == null) { 418 update = false; 419 } 420 421 if(update) { 422 this.userKeyPK = userKeyPK; 423 userKeyPKHasBeenModified = true; 424 clearHashAndString(); 425 } 426 } 427 428 public boolean getUserKeyPKHasBeenModified() { 429 return userKeyPKHasBeenModified; 430 } 431 432 public LanguagePK getPreferredLanguagePK() { 433 return preferredLanguagePK; 434 } 435 436 public void setPreferredLanguagePK(LanguagePK preferredLanguagePK) { 437 boolean update = true; 438 439 if(this.preferredLanguagePK != null) { 440 if(this.preferredLanguagePK.equals(preferredLanguagePK)) { 441 update = false; 442 } 443 } else if(preferredLanguagePK == null) { 444 update = false; 445 } 446 447 if(update) { 448 this.preferredLanguagePK = preferredLanguagePK; 449 preferredLanguagePKHasBeenModified = true; 450 clearHashAndString(); 451 } 452 } 453 454 public boolean getPreferredLanguagePKHasBeenModified() { 455 return preferredLanguagePKHasBeenModified; 456 } 457 458 public CurrencyPK getPreferredCurrencyPK() { 459 return preferredCurrencyPK; 460 } 461 462 public void setPreferredCurrencyPK(CurrencyPK preferredCurrencyPK) { 463 boolean update = true; 464 465 if(this.preferredCurrencyPK != null) { 466 if(this.preferredCurrencyPK.equals(preferredCurrencyPK)) { 467 update = false; 468 } 469 } else if(preferredCurrencyPK == null) { 470 update = false; 471 } 472 473 if(update) { 474 this.preferredCurrencyPK = preferredCurrencyPK; 475 preferredCurrencyPKHasBeenModified = true; 476 clearHashAndString(); 477 } 478 } 479 480 public boolean getPreferredCurrencyPKHasBeenModified() { 481 return preferredCurrencyPKHasBeenModified; 482 } 483 484 public TimeZonePK getPreferredTimeZonePK() { 485 return preferredTimeZonePK; 486 } 487 488 public void setPreferredTimeZonePK(TimeZonePK preferredTimeZonePK) { 489 boolean update = true; 490 491 if(this.preferredTimeZonePK != null) { 492 if(this.preferredTimeZonePK.equals(preferredTimeZonePK)) { 493 update = false; 494 } 495 } else if(preferredTimeZonePK == null) { 496 update = false; 497 } 498 499 if(update) { 500 this.preferredTimeZonePK = preferredTimeZonePK; 501 preferredTimeZonePKHasBeenModified = true; 502 clearHashAndString(); 503 } 504 } 505 506 public boolean getPreferredTimeZonePKHasBeenModified() { 507 return preferredTimeZonePKHasBeenModified; 508 } 509 510 public DateTimeFormatPK getPreferredDateTimeFormatPK() { 511 return preferredDateTimeFormatPK; 512 } 513 514 public void setPreferredDateTimeFormatPK(DateTimeFormatPK preferredDateTimeFormatPK) { 515 boolean update = true; 516 517 if(this.preferredDateTimeFormatPK != null) { 518 if(this.preferredDateTimeFormatPK.equals(preferredDateTimeFormatPK)) { 519 update = false; 520 } 521 } else if(preferredDateTimeFormatPK == null) { 522 update = false; 523 } 524 525 if(update) { 526 this.preferredDateTimeFormatPK = preferredDateTimeFormatPK; 527 preferredDateTimeFormatPKHasBeenModified = true; 528 clearHashAndString(); 529 } 530 } 531 532 public boolean getPreferredDateTimeFormatPKHasBeenModified() { 533 return preferredDateTimeFormatPKHasBeenModified; 534 } 535 536 public Long getLastCommandTime() { 537 return lastCommandTime; 538 } 539 540 public void setLastCommandTime(Long lastCommandTime) 541 throws PersistenceNotNullException { 542 checkForNull(lastCommandTime); 543 544 boolean update = true; 545 546 if(this.lastCommandTime != null) { 547 if(this.lastCommandTime.equals(lastCommandTime)) { 548 update = false; 549 } 550 } else if(lastCommandTime == null) { 551 update = false; 552 } 553 554 if(update) { 555 this.lastCommandTime = lastCommandTime; 556 lastCommandTimeHasBeenModified = true; 557 clearHashAndString(); 558 } 559 } 560 561 public boolean getLastCommandTimeHasBeenModified() { 562 return lastCommandTimeHasBeenModified; 563 } 564 565 public OfferUsePK getOfferUsePK() { 566 return offerUsePK; 567 } 568 569 public void setOfferUsePK(OfferUsePK offerUsePK) { 570 boolean update = true; 571 572 if(this.offerUsePK != null) { 573 if(this.offerUsePK.equals(offerUsePK)) { 574 update = false; 575 } 576 } else if(offerUsePK == null) { 577 update = false; 578 } 579 580 if(update) { 581 this.offerUsePK = offerUsePK; 582 offerUsePKHasBeenModified = true; 583 clearHashAndString(); 584 } 585 } 586 587 public boolean getOfferUsePKHasBeenModified() { 588 return offerUsePKHasBeenModified; 589 } 590 591 public AssociateReferralPK getAssociateReferralPK() { 592 return associateReferralPK; 593 } 594 595 public void setAssociateReferralPK(AssociateReferralPK associateReferralPK) { 596 boolean update = true; 597 598 if(this.associateReferralPK != null) { 599 if(this.associateReferralPK.equals(associateReferralPK)) { 600 update = false; 601 } 602 } else if(associateReferralPK == null) { 603 update = false; 604 } 605 606 if(update) { 607 this.associateReferralPK = associateReferralPK; 608 associateReferralPKHasBeenModified = true; 609 clearHashAndString(); 610 } 611 } 612 613 public boolean getAssociateReferralPKHasBeenModified() { 614 return associateReferralPKHasBeenModified; 615 } 616 617 public Long getRetainUntilTime() { 618 return retainUntilTime; 619 } 620 621 public void setRetainUntilTime(Long retainUntilTime) { 622 boolean update = true; 623 624 if(this.retainUntilTime != null) { 625 if(this.retainUntilTime.equals(retainUntilTime)) { 626 update = false; 627 } 628 } else if(retainUntilTime == null) { 629 update = false; 630 } 631 632 if(update) { 633 this.retainUntilTime = retainUntilTime; 634 retainUntilTimeHasBeenModified = true; 635 clearHashAndString(); 636 } 637 } 638 639 public boolean getRetainUntilTimeHasBeenModified() { 640 return retainUntilTimeHasBeenModified; 641 } 642 643 public Long getFromTime() { 644 return fromTime; 645 } 646 647 public void setFromTime(Long fromTime) 648 throws PersistenceNotNullException { 649 checkForNull(fromTime); 650 651 boolean update = true; 652 653 if(this.fromTime != null) { 654 if(this.fromTime.equals(fromTime)) { 655 update = false; 656 } 657 } else if(fromTime == null) { 658 update = false; 659 } 660 661 if(update) { 662 this.fromTime = fromTime; 663 fromTimeHasBeenModified = true; 664 clearHashAndString(); 665 } 666 } 667 668 public boolean getFromTimeHasBeenModified() { 669 return fromTimeHasBeenModified; 670 } 671 672 public Long getThruTime() { 673 return thruTime; 674 } 675 676 public void setThruTime(Long thruTime) 677 throws PersistenceNotNullException { 678 checkForNull(thruTime); 679 680 boolean update = true; 681 682 if(this.thruTime != null) { 683 if(this.thruTime.equals(thruTime)) { 684 update = false; 685 } 686 } else if(thruTime == null) { 687 update = false; 688 } 689 690 if(update) { 691 this.thruTime = thruTime; 692 thruTimeHasBeenModified = true; 693 clearHashAndString(); 694 } 695 } 696 697 public boolean getThruTimeHasBeenModified() { 698 return thruTimeHasBeenModified; 699 } 700 701}