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 * InventoryCostingPoolDetailValue.java 021 */ 022 023package com.echothree.model.data.inventory.server.value; 024 025import com.echothree.model.data.inventory.common.pk.InventoryCostingPoolDetailPK; 026 027import com.echothree.model.data.inventory.server.factory.InventoryCostingPoolDetailFactory; 028 029import com.echothree.model.data.inventory.common.pk.InventoryCostingPoolPK; 030import com.echothree.model.data.party.common.pk.PartyPK; 031import com.echothree.model.data.item.common.pk.ItemPK; 032import com.echothree.model.data.inventory.common.pk.InventoryConditionPK; 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 InventoryCostingPoolDetailValue 045 extends BaseValue<InventoryCostingPoolDetailPK> 046 implements Cloneable, Serializable { 047 048 private InventoryCostingPoolPK inventoryCostingPoolPK; 049 private boolean inventoryCostingPoolPKHasBeenModified = false; 050 private String inventoryCostingPoolName; 051 private boolean inventoryCostingPoolNameHasBeenModified = false; 052 private PartyPK companyPartyPK; 053 private boolean companyPartyPKHasBeenModified = false; 054 private ItemPK itemPK; 055 private boolean itemPKHasBeenModified = false; 056 private InventoryConditionPK inventoryConditionPK; 057 private boolean inventoryConditionPKHasBeenModified = false; 058 private Long fromTime; 059 private boolean fromTimeHasBeenModified = false; 060 private Long thruTime; 061 private boolean thruTimeHasBeenModified = false; 062 063 private transient Integer _hashCode = null; 064 private transient String _stringValue = null; 065 066 private void constructFields(InventoryCostingPoolPK inventoryCostingPoolPK, String inventoryCostingPoolName, PartyPK companyPartyPK, ItemPK itemPK, InventoryConditionPK inventoryConditionPK, Long fromTime, Long thruTime) 067 throws PersistenceNotNullException { 068 checkForNull(inventoryCostingPoolPK); 069 this.inventoryCostingPoolPK = inventoryCostingPoolPK; 070 checkForNull(inventoryCostingPoolName); 071 this.inventoryCostingPoolName = inventoryCostingPoolName; 072 checkForNull(companyPartyPK); 073 this.companyPartyPK = companyPartyPK; 074 checkForNull(itemPK); 075 this.itemPK = itemPK; 076 checkForNull(inventoryConditionPK); 077 this.inventoryConditionPK = inventoryConditionPK; 078 checkForNull(fromTime); 079 this.fromTime = fromTime; 080 checkForNull(thruTime); 081 this.thruTime = thruTime; 082 } 083 084 /** Creates a new instance of InventoryCostingPoolDetailValue */ 085 public InventoryCostingPoolDetailValue(InventoryCostingPoolDetailPK inventoryCostingPoolDetailPK, InventoryCostingPoolPK inventoryCostingPoolPK, String inventoryCostingPoolName, PartyPK companyPartyPK, ItemPK itemPK, InventoryConditionPK inventoryConditionPK, Long fromTime, Long thruTime) 086 throws PersistenceNotNullException { 087 super(inventoryCostingPoolDetailPK); 088 constructFields(inventoryCostingPoolPK, inventoryCostingPoolName, companyPartyPK, itemPK, inventoryConditionPK, fromTime, thruTime); 089 } 090 091 /** Creates a new instance of InventoryCostingPoolDetailValue */ 092 public InventoryCostingPoolDetailValue(InventoryCostingPoolPK inventoryCostingPoolPK, String inventoryCostingPoolName, PartyPK companyPartyPK, ItemPK itemPK, InventoryConditionPK inventoryConditionPK, Long fromTime, Long thruTime) 093 throws PersistenceNotNullException { 094 super(); 095 constructFields(inventoryCostingPoolPK, inventoryCostingPoolName, companyPartyPK, itemPK, inventoryConditionPK, fromTime, thruTime); 096 } 097 098 @Override 099 @Nonnull 100 public InventoryCostingPoolDetailFactory getBaseFactoryInstance() { 101 return InventoryCostingPoolDetailFactory.getInstance(); 102 } 103 104 @Override 105 @Nonnull 106 public InventoryCostingPoolDetailValue clone() { 107 Object result; 108 109 try { 110 result = super.clone(); 111 } catch (CloneNotSupportedException cnse) { 112 // This shouldn't happen, fail when it does. 113 throw new PersistenceCloneException(cnse); 114 } 115 116 return (InventoryCostingPoolDetailValue)result; 117 } 118 119 @Override 120 @Nonnull 121 public InventoryCostingPoolDetailPK getPrimaryKey() { 122 if(_primaryKey == null) { 123 _primaryKey = new InventoryCostingPoolDetailPK(entityId); 124 } 125 126 return _primaryKey; 127 } 128 129 private void clearHashAndString() { 130 _hashCode = null; 131 _stringValue = null; 132 } 133 134 @Override 135 public int hashCode() { 136 if(_hashCode == null) { 137 int hashCode = 17; 138 139 hashCode = 37 * hashCode + ((entityId != null) ? entityId.hashCode() : 0); 140 141 hashCode = 37 * hashCode + ((inventoryCostingPoolPK != null) ? inventoryCostingPoolPK.hashCode() : 0); 142 hashCode = 37 * hashCode + ((inventoryCostingPoolName != null) ? inventoryCostingPoolName.hashCode() : 0); 143 hashCode = 37 * hashCode + ((companyPartyPK != null) ? companyPartyPK.hashCode() : 0); 144 hashCode = 37 * hashCode + ((itemPK != null) ? itemPK.hashCode() : 0); 145 hashCode = 37 * hashCode + ((inventoryConditionPK != null) ? inventoryConditionPK.hashCode() : 0); 146 hashCode = 37 * hashCode + ((fromTime != null) ? fromTime.hashCode() : 0); 147 hashCode = 37 * hashCode + ((thruTime != null) ? thruTime.hashCode() : 0); 148 149 _hashCode = hashCode; 150 } 151 152 return _hashCode; 153 } 154 155 @Override 156 @Nonnull 157 public String toString() { 158 if(_stringValue == null) { 159 _stringValue = "{" + 160 "entityId=" + getEntityId() + 161 ", inventoryCostingPoolPK=" + getInventoryCostingPoolPK() + 162 ", inventoryCostingPoolName=" + getInventoryCostingPoolName() + 163 ", companyPartyPK=" + getCompanyPartyPK() + 164 ", itemPK=" + getItemPK() + 165 ", inventoryConditionPK=" + getInventoryConditionPK() + 166 ", fromTime=" + getFromTime() + 167 ", thruTime=" + getThruTime() + 168 "}"; 169 } 170 return _stringValue; 171 } 172 173 @Override 174 public boolean equals(Object other) { 175 if(this == other) 176 return true; 177 178 if(!hasIdentity()) 179 return false; 180 181 if(other instanceof InventoryCostingPoolDetailValue that) { 182 if(!that.hasIdentity()) 183 return false; 184 185 Long thisEntityId = getEntityId(); 186 Long thatEntityId = that.getEntityId(); 187 188 boolean objectsEqual = thisEntityId.equals(thatEntityId); 189 if(objectsEqual) 190 objectsEqual = isIdentical(that); 191 192 return objectsEqual; 193 } else { 194 return false; 195 } 196 } 197 198 public boolean isIdentical(Object other) { 199 if(other instanceof InventoryCostingPoolDetailValue that) { 200 boolean objectsEqual = true; 201 202 203 if(objectsEqual) { 204 InventoryCostingPoolPK thisInventoryCostingPoolPK = getInventoryCostingPoolPK(); 205 InventoryCostingPoolPK thatInventoryCostingPoolPK = that.getInventoryCostingPoolPK(); 206 207 if(thisInventoryCostingPoolPK == null) { 208 objectsEqual = objectsEqual && (thatInventoryCostingPoolPK == null); 209 } else { 210 objectsEqual = objectsEqual && thisInventoryCostingPoolPK.equals(thatInventoryCostingPoolPK); 211 } 212 } 213 214 if(objectsEqual) { 215 String thisInventoryCostingPoolName = getInventoryCostingPoolName(); 216 String thatInventoryCostingPoolName = that.getInventoryCostingPoolName(); 217 218 if(thisInventoryCostingPoolName == null) { 219 objectsEqual = objectsEqual && (thatInventoryCostingPoolName == null); 220 } else { 221 objectsEqual = objectsEqual && thisInventoryCostingPoolName.equals(thatInventoryCostingPoolName); 222 } 223 } 224 225 if(objectsEqual) { 226 PartyPK thisCompanyPartyPK = getCompanyPartyPK(); 227 PartyPK thatCompanyPartyPK = that.getCompanyPartyPK(); 228 229 if(thisCompanyPartyPK == null) { 230 objectsEqual = objectsEqual && (thatCompanyPartyPK == null); 231 } else { 232 objectsEqual = objectsEqual && thisCompanyPartyPK.equals(thatCompanyPartyPK); 233 } 234 } 235 236 if(objectsEqual) { 237 ItemPK thisItemPK = getItemPK(); 238 ItemPK thatItemPK = that.getItemPK(); 239 240 if(thisItemPK == null) { 241 objectsEqual = objectsEqual && (thatItemPK == null); 242 } else { 243 objectsEqual = objectsEqual && thisItemPK.equals(thatItemPK); 244 } 245 } 246 247 if(objectsEqual) { 248 InventoryConditionPK thisInventoryConditionPK = getInventoryConditionPK(); 249 InventoryConditionPK thatInventoryConditionPK = that.getInventoryConditionPK(); 250 251 if(thisInventoryConditionPK == null) { 252 objectsEqual = objectsEqual && (thatInventoryConditionPK == null); 253 } else { 254 objectsEqual = objectsEqual && thisInventoryConditionPK.equals(thatInventoryConditionPK); 255 } 256 } 257 258 if(objectsEqual) { 259 Long thisFromTime = getFromTime(); 260 Long thatFromTime = that.getFromTime(); 261 262 if(thisFromTime == null) { 263 objectsEqual = objectsEqual && (thatFromTime == null); 264 } else { 265 objectsEqual = objectsEqual && thisFromTime.equals(thatFromTime); 266 } 267 } 268 269 if(objectsEqual) { 270 Long thisThruTime = getThruTime(); 271 Long thatThruTime = that.getThruTime(); 272 273 if(thisThruTime == null) { 274 objectsEqual = objectsEqual && (thatThruTime == null); 275 } else { 276 objectsEqual = objectsEqual && thisThruTime.equals(thatThruTime); 277 } 278 } 279 280 return objectsEqual; 281 } else { 282 return false; 283 } 284 } 285 286 @Override 287 public boolean hasBeenModified() { 288 return inventoryCostingPoolPKHasBeenModified || inventoryCostingPoolNameHasBeenModified || companyPartyPKHasBeenModified || itemPKHasBeenModified || inventoryConditionPKHasBeenModified || fromTimeHasBeenModified || thruTimeHasBeenModified; 289 } 290 291 @Override 292 public void clearHasBeenModified() { 293 inventoryCostingPoolPKHasBeenModified = false; 294 inventoryCostingPoolNameHasBeenModified = false; 295 companyPartyPKHasBeenModified = false; 296 itemPKHasBeenModified = false; 297 inventoryConditionPKHasBeenModified = false; 298 fromTimeHasBeenModified = false; 299 thruTimeHasBeenModified = false; 300 } 301 302 @Nonnull 303 public InventoryCostingPoolPK getInventoryCostingPoolPK() { 304 return inventoryCostingPoolPK; 305 } 306 307 public void setInventoryCostingPoolPK(@Nonnull InventoryCostingPoolPK inventoryCostingPoolPK) 308 throws PersistenceNotNullException { 309 checkForNull(inventoryCostingPoolPK); 310 311 boolean update = true; 312 313 if(this.inventoryCostingPoolPK != null) { 314 if(this.inventoryCostingPoolPK.equals(inventoryCostingPoolPK)) { 315 update = false; 316 } 317 } else if(inventoryCostingPoolPK == null) { 318 update = false; 319 } 320 321 if(update) { 322 this.inventoryCostingPoolPK = inventoryCostingPoolPK; 323 inventoryCostingPoolPKHasBeenModified = true; 324 clearHashAndString(); 325 } 326 } 327 328 public boolean getInventoryCostingPoolPKHasBeenModified() { 329 return inventoryCostingPoolPKHasBeenModified; 330 } 331 332 @Nonnull 333 public String getInventoryCostingPoolName() { 334 return inventoryCostingPoolName; 335 } 336 337 public void setInventoryCostingPoolName(@Nonnull String inventoryCostingPoolName) 338 throws PersistenceNotNullException { 339 checkForNull(inventoryCostingPoolName); 340 341 boolean update = true; 342 343 if(this.inventoryCostingPoolName != null) { 344 if(this.inventoryCostingPoolName.equals(inventoryCostingPoolName)) { 345 update = false; 346 } 347 } else if(inventoryCostingPoolName == null) { 348 update = false; 349 } 350 351 if(update) { 352 this.inventoryCostingPoolName = inventoryCostingPoolName; 353 inventoryCostingPoolNameHasBeenModified = true; 354 clearHashAndString(); 355 } 356 } 357 358 public boolean getInventoryCostingPoolNameHasBeenModified() { 359 return inventoryCostingPoolNameHasBeenModified; 360 } 361 362 @Nonnull 363 public PartyPK getCompanyPartyPK() { 364 return companyPartyPK; 365 } 366 367 public void setCompanyPartyPK(@Nonnull PartyPK companyPartyPK) 368 throws PersistenceNotNullException { 369 checkForNull(companyPartyPK); 370 371 boolean update = true; 372 373 if(this.companyPartyPK != null) { 374 if(this.companyPartyPK.equals(companyPartyPK)) { 375 update = false; 376 } 377 } else if(companyPartyPK == null) { 378 update = false; 379 } 380 381 if(update) { 382 this.companyPartyPK = companyPartyPK; 383 companyPartyPKHasBeenModified = true; 384 clearHashAndString(); 385 } 386 } 387 388 public boolean getCompanyPartyPKHasBeenModified() { 389 return companyPartyPKHasBeenModified; 390 } 391 392 @Nonnull 393 public ItemPK getItemPK() { 394 return itemPK; 395 } 396 397 public void setItemPK(@Nonnull ItemPK itemPK) 398 throws PersistenceNotNullException { 399 checkForNull(itemPK); 400 401 boolean update = true; 402 403 if(this.itemPK != null) { 404 if(this.itemPK.equals(itemPK)) { 405 update = false; 406 } 407 } else if(itemPK == null) { 408 update = false; 409 } 410 411 if(update) { 412 this.itemPK = itemPK; 413 itemPKHasBeenModified = true; 414 clearHashAndString(); 415 } 416 } 417 418 public boolean getItemPKHasBeenModified() { 419 return itemPKHasBeenModified; 420 } 421 422 @Nonnull 423 public InventoryConditionPK getInventoryConditionPK() { 424 return inventoryConditionPK; 425 } 426 427 public void setInventoryConditionPK(@Nonnull InventoryConditionPK inventoryConditionPK) 428 throws PersistenceNotNullException { 429 checkForNull(inventoryConditionPK); 430 431 boolean update = true; 432 433 if(this.inventoryConditionPK != null) { 434 if(this.inventoryConditionPK.equals(inventoryConditionPK)) { 435 update = false; 436 } 437 } else if(inventoryConditionPK == null) { 438 update = false; 439 } 440 441 if(update) { 442 this.inventoryConditionPK = inventoryConditionPK; 443 inventoryConditionPKHasBeenModified = true; 444 clearHashAndString(); 445 } 446 } 447 448 public boolean getInventoryConditionPKHasBeenModified() { 449 return inventoryConditionPKHasBeenModified; 450 } 451 452 @Nonnull 453 public Long getFromTime() { 454 return fromTime; 455 } 456 457 public void setFromTime(@Nonnull Long fromTime) 458 throws PersistenceNotNullException { 459 checkForNull(fromTime); 460 461 boolean update = true; 462 463 if(this.fromTime != null) { 464 if(this.fromTime.equals(fromTime)) { 465 update = false; 466 } 467 } else if(fromTime == null) { 468 update = false; 469 } 470 471 if(update) { 472 this.fromTime = fromTime; 473 fromTimeHasBeenModified = true; 474 clearHashAndString(); 475 } 476 } 477 478 public boolean getFromTimeHasBeenModified() { 479 return fromTimeHasBeenModified; 480 } 481 482 @Nonnull 483 public Long getThruTime() { 484 return thruTime; 485 } 486 487 public void setThruTime(@Nonnull Long thruTime) 488 throws PersistenceNotNullException { 489 checkForNull(thruTime); 490 491 boolean update = true; 492 493 if(this.thruTime != null) { 494 if(this.thruTime.equals(thruTime)) { 495 update = false; 496 } 497 } else if(thruTime == null) { 498 update = false; 499 } 500 501 if(update) { 502 this.thruTime = thruTime; 503 thruTimeHasBeenModified = true; 504 clearHashAndString(); 505 } 506 } 507 508 public boolean getThruTimeHasBeenModified() { 509 return thruTimeHasBeenModified; 510 } 511 512}