001// --------------------------------------------------------------------------------
002// Copyright 2002-2024 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 * OrderLineDetailValue.java
021 */
022
023package com.echothree.model.data.order.server.value;
024
025import com.echothree.model.data.order.common.pk.OrderLineDetailPK;
026
027import com.echothree.model.data.order.server.factory.OrderLineDetailFactory;
028
029import com.echothree.model.data.order.common.pk.OrderLinePK;
030import com.echothree.model.data.order.common.pk.OrderPK;
031import com.echothree.model.data.order.common.pk.OrderShipmentGroupPK;
032import com.echothree.model.data.item.common.pk.ItemPK;
033import com.echothree.model.data.inventory.common.pk.InventoryConditionPK;
034import com.echothree.model.data.uom.common.pk.UnitOfMeasureTypePK;
035import com.echothree.model.data.cancellationpolicy.common.pk.CancellationPolicyPK;
036import com.echothree.model.data.returnpolicy.common.pk.ReturnPolicyPK;
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 OrderLineDetailValue
046        extends BaseValue<OrderLineDetailPK>
047        implements Cloneable, Serializable {
048    
049    private OrderLinePK orderLinePK;
050    private boolean orderLinePKHasBeenModified = false;
051    private OrderPK orderPK;
052    private boolean orderPKHasBeenModified = false;
053    private Integer orderLineSequence;
054    private boolean orderLineSequenceHasBeenModified = false;
055    private OrderLinePK parentOrderLinePK;
056    private boolean parentOrderLinePKHasBeenModified = false;
057    private OrderShipmentGroupPK orderShipmentGroupPK;
058    private boolean orderShipmentGroupPKHasBeenModified = false;
059    private ItemPK itemPK;
060    private boolean itemPKHasBeenModified = false;
061    private InventoryConditionPK inventoryConditionPK;
062    private boolean inventoryConditionPKHasBeenModified = false;
063    private UnitOfMeasureTypePK unitOfMeasureTypePK;
064    private boolean unitOfMeasureTypePKHasBeenModified = false;
065    private Long quantity;
066    private boolean quantityHasBeenModified = false;
067    private Long unitAmount;
068    private boolean unitAmountHasBeenModified = false;
069    private String description;
070    private boolean descriptionHasBeenModified = false;
071    private CancellationPolicyPK cancellationPolicyPK;
072    private boolean cancellationPolicyPKHasBeenModified = false;
073    private ReturnPolicyPK returnPolicyPK;
074    private boolean returnPolicyPKHasBeenModified = false;
075    private Boolean taxable;
076    private boolean taxableHasBeenModified = false;
077    private Long fromTime;
078    private boolean fromTimeHasBeenModified = false;
079    private Long thruTime;
080    private boolean thruTimeHasBeenModified = false;
081    
082    private transient Integer _hashCode = null;
083    private transient String _stringValue = null;
084    
085    private void constructFields(OrderLinePK orderLinePK, OrderPK orderPK, Integer orderLineSequence, OrderLinePK parentOrderLinePK, OrderShipmentGroupPK orderShipmentGroupPK, ItemPK itemPK, InventoryConditionPK inventoryConditionPK, UnitOfMeasureTypePK unitOfMeasureTypePK, Long quantity, Long unitAmount, String description, CancellationPolicyPK cancellationPolicyPK, ReturnPolicyPK returnPolicyPK, Boolean taxable, Long fromTime, Long thruTime)
086            throws PersistenceNotNullException {
087        checkForNull(orderLinePK);
088        this.orderLinePK = orderLinePK;
089        checkForNull(orderPK);
090        this.orderPK = orderPK;
091        checkForNull(orderLineSequence);
092        this.orderLineSequence = orderLineSequence;
093        this.parentOrderLinePK = parentOrderLinePK;
094        this.orderShipmentGroupPK = orderShipmentGroupPK;
095        checkForNull(itemPK);
096        this.itemPK = itemPK;
097        checkForNull(inventoryConditionPK);
098        this.inventoryConditionPK = inventoryConditionPK;
099        checkForNull(unitOfMeasureTypePK);
100        this.unitOfMeasureTypePK = unitOfMeasureTypePK;
101        this.quantity = quantity;
102        this.unitAmount = unitAmount;
103        this.description = description;
104        this.cancellationPolicyPK = cancellationPolicyPK;
105        this.returnPolicyPK = returnPolicyPK;
106        this.taxable = taxable;
107        checkForNull(fromTime);
108        this.fromTime = fromTime;
109        checkForNull(thruTime);
110        this.thruTime = thruTime;
111    }
112    
113    /** Creates a new instance of OrderLineDetailValue */
114    public OrderLineDetailValue(OrderLineDetailPK orderLineDetailPK, OrderLinePK orderLinePK, OrderPK orderPK, Integer orderLineSequence, OrderLinePK parentOrderLinePK, OrderShipmentGroupPK orderShipmentGroupPK, ItemPK itemPK, InventoryConditionPK inventoryConditionPK, UnitOfMeasureTypePK unitOfMeasureTypePK, Long quantity, Long unitAmount, String description, CancellationPolicyPK cancellationPolicyPK, ReturnPolicyPK returnPolicyPK, Boolean taxable, Long fromTime, Long thruTime)
115            throws PersistenceNotNullException {
116        super(orderLineDetailPK);
117        constructFields(orderLinePK, orderPK, orderLineSequence, parentOrderLinePK, orderShipmentGroupPK, itemPK, inventoryConditionPK, unitOfMeasureTypePK, quantity, unitAmount, description, cancellationPolicyPK, returnPolicyPK, taxable, fromTime, thruTime);
118    }
119    
120    /** Creates a new instance of OrderLineDetailValue */
121    public OrderLineDetailValue(OrderLinePK orderLinePK, OrderPK orderPK, Integer orderLineSequence, OrderLinePK parentOrderLinePK, OrderShipmentGroupPK orderShipmentGroupPK, ItemPK itemPK, InventoryConditionPK inventoryConditionPK, UnitOfMeasureTypePK unitOfMeasureTypePK, Long quantity, Long unitAmount, String description, CancellationPolicyPK cancellationPolicyPK, ReturnPolicyPK returnPolicyPK, Boolean taxable, Long fromTime, Long thruTime)
122            throws PersistenceNotNullException {
123        super();
124        constructFields(orderLinePK, orderPK, orderLineSequence, parentOrderLinePK, orderShipmentGroupPK, itemPK, inventoryConditionPK, unitOfMeasureTypePK, quantity, unitAmount, description, cancellationPolicyPK, returnPolicyPK, taxable, fromTime, thruTime);
125    }
126    
127   @Override
128   public OrderLineDetailFactory getBaseFactoryInstance() {
129        return OrderLineDetailFactory.getInstance();
130    }
131    
132    @Override
133    public OrderLineDetailValue clone() {
134        Object result;
135        
136        try {
137            result = super.clone();
138        } catch (CloneNotSupportedException cnse) {
139            // This shouldn't happen, fail when it does.
140            throw new PersistenceCloneException(cnse);
141        }
142        
143        return (OrderLineDetailValue)result;
144    }
145    
146   @Override
147    public OrderLineDetailPK getPrimaryKey() {
148        if(_primaryKey == null) {
149            _primaryKey = new OrderLineDetailPK(entityId);
150        }
151        
152        return _primaryKey;
153    }
154    
155    private void clearHashAndString() {
156        _hashCode = null;
157        _stringValue = null;
158    }
159    
160    @Override
161    public int hashCode() {
162        if(_hashCode == null) {
163            int hashCode = 17;
164            
165            hashCode = 37 * hashCode + ((entityId != null) ? entityId.hashCode() : 0);
166            
167            hashCode = 37 * hashCode + ((orderLinePK != null) ? orderLinePK.hashCode() : 0);
168            hashCode = 37 * hashCode + ((orderPK != null) ? orderPK.hashCode() : 0);
169            hashCode = 37 * hashCode + ((orderLineSequence != null) ? orderLineSequence.hashCode() : 0);
170            hashCode = 37 * hashCode + ((parentOrderLinePK != null) ? parentOrderLinePK.hashCode() : 0);
171            hashCode = 37 * hashCode + ((orderShipmentGroupPK != null) ? orderShipmentGroupPK.hashCode() : 0);
172            hashCode = 37 * hashCode + ((itemPK != null) ? itemPK.hashCode() : 0);
173            hashCode = 37 * hashCode + ((inventoryConditionPK != null) ? inventoryConditionPK.hashCode() : 0);
174            hashCode = 37 * hashCode + ((unitOfMeasureTypePK != null) ? unitOfMeasureTypePK.hashCode() : 0);
175            hashCode = 37 * hashCode + ((quantity != null) ? quantity.hashCode() : 0);
176            hashCode = 37 * hashCode + ((unitAmount != null) ? unitAmount.hashCode() : 0);
177            hashCode = 37 * hashCode + ((description != null) ? description.hashCode() : 0);
178            hashCode = 37 * hashCode + ((cancellationPolicyPK != null) ? cancellationPolicyPK.hashCode() : 0);
179            hashCode = 37 * hashCode + ((returnPolicyPK != null) ? returnPolicyPK.hashCode() : 0);
180            hashCode = 37 * hashCode + ((taxable != null) ? taxable.hashCode() : 0);
181            hashCode = 37 * hashCode + ((fromTime != null) ? fromTime.hashCode() : 0);
182            hashCode = 37 * hashCode + ((thruTime != null) ? thruTime.hashCode() : 0);
183            
184            _hashCode = hashCode;
185        }
186        
187        return _hashCode;
188    }
189    
190    @Override
191    public String toString() {
192        if(_stringValue == null) {
193            StringBuilder stringValue = new StringBuilder("{");
194            
195            stringValue.append("entityId=").append(getEntityId());
196            
197            stringValue.append(", orderLinePK=").append(getOrderLinePK());
198            stringValue.append(", orderPK=").append(getOrderPK());
199            stringValue.append(", orderLineSequence=").append(getOrderLineSequence());
200            stringValue.append(", parentOrderLinePK=").append(getParentOrderLinePK());
201            stringValue.append(", orderShipmentGroupPK=").append(getOrderShipmentGroupPK());
202            stringValue.append(", itemPK=").append(getItemPK());
203            stringValue.append(", inventoryConditionPK=").append(getInventoryConditionPK());
204            stringValue.append(", unitOfMeasureTypePK=").append(getUnitOfMeasureTypePK());
205            stringValue.append(", quantity=").append(getQuantity());
206            stringValue.append(", unitAmount=").append(getUnitAmount());
207            stringValue.append(", description=").append(getDescription());
208            stringValue.append(", cancellationPolicyPK=").append(getCancellationPolicyPK());
209            stringValue.append(", returnPolicyPK=").append(getReturnPolicyPK());
210            stringValue.append(", taxable=").append(getTaxable());
211            stringValue.append(", fromTime=").append(getFromTime());
212            stringValue.append(", thruTime=").append(getThruTime());
213            
214            stringValue.append('}');
215            
216            _stringValue = stringValue.toString();
217        }
218        return _stringValue;
219    }
220    
221    @Override
222    public boolean equals(Object other) {
223        if(this == other)
224            return true;
225        
226        if(!hasIdentity())
227            return false;
228        
229        if(other instanceof  OrderLineDetailValue) {
230            OrderLineDetailValue that = (OrderLineDetailValue)other;
231            
232            if(!that.hasIdentity())
233                return false;
234            
235            Long thisEntityId = getEntityId();
236            Long thatEntityId = that.getEntityId();
237            
238            boolean objectsEqual = thisEntityId.equals(thatEntityId);
239            if(objectsEqual)
240                objectsEqual = objectsEqual && isIdentical(that);
241            
242            return objectsEqual;
243        } else {
244            return false;
245        }
246    }
247    
248    public boolean isIdentical(Object other) {
249        if(other instanceof OrderLineDetailValue) {
250            OrderLineDetailValue that = (OrderLineDetailValue)other;
251            boolean objectsEqual = true;
252            
253            
254            if(objectsEqual) {
255                OrderLinePK thisOrderLinePK = getOrderLinePK();
256                OrderLinePK thatOrderLinePK = that.getOrderLinePK();
257                
258                if(thisOrderLinePK == null) {
259                    objectsEqual = objectsEqual && (thatOrderLinePK == null);
260                } else {
261                    objectsEqual = objectsEqual && thisOrderLinePK.equals(thatOrderLinePK);
262                }
263            }
264            
265            if(objectsEqual) {
266                OrderPK thisOrderPK = getOrderPK();
267                OrderPK thatOrderPK = that.getOrderPK();
268                
269                if(thisOrderPK == null) {
270                    objectsEqual = objectsEqual && (thatOrderPK == null);
271                } else {
272                    objectsEqual = objectsEqual && thisOrderPK.equals(thatOrderPK);
273                }
274            }
275            
276            if(objectsEqual) {
277                Integer thisOrderLineSequence = getOrderLineSequence();
278                Integer thatOrderLineSequence = that.getOrderLineSequence();
279                
280                if(thisOrderLineSequence == null) {
281                    objectsEqual = objectsEqual && (thatOrderLineSequence == null);
282                } else {
283                    objectsEqual = objectsEqual && thisOrderLineSequence.equals(thatOrderLineSequence);
284                }
285            }
286            
287            if(objectsEqual) {
288                OrderLinePK thisParentOrderLinePK = getParentOrderLinePK();
289                OrderLinePK thatParentOrderLinePK = that.getParentOrderLinePK();
290                
291                if(thisParentOrderLinePK == null) {
292                    objectsEqual = objectsEqual && (thatParentOrderLinePK == null);
293                } else {
294                    objectsEqual = objectsEqual && thisParentOrderLinePK.equals(thatParentOrderLinePK);
295                }
296            }
297            
298            if(objectsEqual) {
299                OrderShipmentGroupPK thisOrderShipmentGroupPK = getOrderShipmentGroupPK();
300                OrderShipmentGroupPK thatOrderShipmentGroupPK = that.getOrderShipmentGroupPK();
301                
302                if(thisOrderShipmentGroupPK == null) {
303                    objectsEqual = objectsEqual && (thatOrderShipmentGroupPK == null);
304                } else {
305                    objectsEqual = objectsEqual && thisOrderShipmentGroupPK.equals(thatOrderShipmentGroupPK);
306                }
307            }
308            
309            if(objectsEqual) {
310                ItemPK thisItemPK = getItemPK();
311                ItemPK thatItemPK = that.getItemPK();
312                
313                if(thisItemPK == null) {
314                    objectsEqual = objectsEqual && (thatItemPK == null);
315                } else {
316                    objectsEqual = objectsEqual && thisItemPK.equals(thatItemPK);
317                }
318            }
319            
320            if(objectsEqual) {
321                InventoryConditionPK thisInventoryConditionPK = getInventoryConditionPK();
322                InventoryConditionPK thatInventoryConditionPK = that.getInventoryConditionPK();
323                
324                if(thisInventoryConditionPK == null) {
325                    objectsEqual = objectsEqual && (thatInventoryConditionPK == null);
326                } else {
327                    objectsEqual = objectsEqual && thisInventoryConditionPK.equals(thatInventoryConditionPK);
328                }
329            }
330            
331            if(objectsEqual) {
332                UnitOfMeasureTypePK thisUnitOfMeasureTypePK = getUnitOfMeasureTypePK();
333                UnitOfMeasureTypePK thatUnitOfMeasureTypePK = that.getUnitOfMeasureTypePK();
334                
335                if(thisUnitOfMeasureTypePK == null) {
336                    objectsEqual = objectsEqual && (thatUnitOfMeasureTypePK == null);
337                } else {
338                    objectsEqual = objectsEqual && thisUnitOfMeasureTypePK.equals(thatUnitOfMeasureTypePK);
339                }
340            }
341            
342            if(objectsEqual) {
343                Long thisQuantity = getQuantity();
344                Long thatQuantity = that.getQuantity();
345                
346                if(thisQuantity == null) {
347                    objectsEqual = objectsEqual && (thatQuantity == null);
348                } else {
349                    objectsEqual = objectsEqual && thisQuantity.equals(thatQuantity);
350                }
351            }
352            
353            if(objectsEqual) {
354                Long thisUnitAmount = getUnitAmount();
355                Long thatUnitAmount = that.getUnitAmount();
356                
357                if(thisUnitAmount == null) {
358                    objectsEqual = objectsEqual && (thatUnitAmount == null);
359                } else {
360                    objectsEqual = objectsEqual && thisUnitAmount.equals(thatUnitAmount);
361                }
362            }
363            
364            if(objectsEqual) {
365                String thisDescription = getDescription();
366                String thatDescription = that.getDescription();
367                
368                if(thisDescription == null) {
369                    objectsEqual = objectsEqual && (thatDescription == null);
370                } else {
371                    objectsEqual = objectsEqual && thisDescription.equals(thatDescription);
372                }
373            }
374            
375            if(objectsEqual) {
376                CancellationPolicyPK thisCancellationPolicyPK = getCancellationPolicyPK();
377                CancellationPolicyPK thatCancellationPolicyPK = that.getCancellationPolicyPK();
378                
379                if(thisCancellationPolicyPK == null) {
380                    objectsEqual = objectsEqual && (thatCancellationPolicyPK == null);
381                } else {
382                    objectsEqual = objectsEqual && thisCancellationPolicyPK.equals(thatCancellationPolicyPK);
383                }
384            }
385            
386            if(objectsEqual) {
387                ReturnPolicyPK thisReturnPolicyPK = getReturnPolicyPK();
388                ReturnPolicyPK thatReturnPolicyPK = that.getReturnPolicyPK();
389                
390                if(thisReturnPolicyPK == null) {
391                    objectsEqual = objectsEqual && (thatReturnPolicyPK == null);
392                } else {
393                    objectsEqual = objectsEqual && thisReturnPolicyPK.equals(thatReturnPolicyPK);
394                }
395            }
396            
397            if(objectsEqual) {
398                Boolean thisTaxable = getTaxable();
399                Boolean thatTaxable = that.getTaxable();
400                
401                if(thisTaxable == null) {
402                    objectsEqual = objectsEqual && (thatTaxable == null);
403                } else {
404                    objectsEqual = objectsEqual && thisTaxable.equals(thatTaxable);
405                }
406            }
407            
408            if(objectsEqual) {
409                Long thisFromTime = getFromTime();
410                Long thatFromTime = that.getFromTime();
411                
412                if(thisFromTime == null) {
413                    objectsEqual = objectsEqual && (thatFromTime == null);
414                } else {
415                    objectsEqual = objectsEqual && thisFromTime.equals(thatFromTime);
416                }
417            }
418            
419            if(objectsEqual) {
420                Long thisThruTime = getThruTime();
421                Long thatThruTime = that.getThruTime();
422                
423                if(thisThruTime == null) {
424                    objectsEqual = objectsEqual && (thatThruTime == null);
425                } else {
426                    objectsEqual = objectsEqual && thisThruTime.equals(thatThruTime);
427                }
428            }
429            
430            return objectsEqual;
431        } else {
432            return false;
433        }
434    }
435    
436    @Override
437    public boolean hasBeenModified() {
438        return orderLinePKHasBeenModified || orderPKHasBeenModified || orderLineSequenceHasBeenModified || parentOrderLinePKHasBeenModified || orderShipmentGroupPKHasBeenModified || itemPKHasBeenModified || inventoryConditionPKHasBeenModified || unitOfMeasureTypePKHasBeenModified || quantityHasBeenModified || unitAmountHasBeenModified || descriptionHasBeenModified || cancellationPolicyPKHasBeenModified || returnPolicyPKHasBeenModified || taxableHasBeenModified || fromTimeHasBeenModified || thruTimeHasBeenModified;
439    }
440    
441    @Override
442    public void clearHasBeenModified() {
443        orderLinePKHasBeenModified = false;
444        orderPKHasBeenModified = false;
445        orderLineSequenceHasBeenModified = false;
446        parentOrderLinePKHasBeenModified = false;
447        orderShipmentGroupPKHasBeenModified = false;
448        itemPKHasBeenModified = false;
449        inventoryConditionPKHasBeenModified = false;
450        unitOfMeasureTypePKHasBeenModified = false;
451        quantityHasBeenModified = false;
452        unitAmountHasBeenModified = false;
453        descriptionHasBeenModified = false;
454        cancellationPolicyPKHasBeenModified = false;
455        returnPolicyPKHasBeenModified = false;
456        taxableHasBeenModified = false;
457        fromTimeHasBeenModified = false;
458        thruTimeHasBeenModified = false;
459    }
460    
461    public OrderLinePK getOrderLinePK() {
462        return orderLinePK;
463    }
464    
465    public void setOrderLinePK(OrderLinePK orderLinePK)
466            throws PersistenceNotNullException {
467        checkForNull(orderLinePK);
468        
469        boolean update = true;
470        
471        if(this.orderLinePK != null) {
472            if(this.orderLinePK.equals(orderLinePK)) {
473                update = false;
474            }
475        } else if(orderLinePK == null) {
476            update = false;
477        }
478        
479        if(update) {
480            this.orderLinePK = orderLinePK;
481            orderLinePKHasBeenModified = true;
482            clearHashAndString();
483        }
484    }
485    
486    public boolean getOrderLinePKHasBeenModified() {
487        return orderLinePKHasBeenModified;
488    }
489    
490    public OrderPK getOrderPK() {
491        return orderPK;
492    }
493    
494    public void setOrderPK(OrderPK orderPK)
495            throws PersistenceNotNullException {
496        checkForNull(orderPK);
497        
498        boolean update = true;
499        
500        if(this.orderPK != null) {
501            if(this.orderPK.equals(orderPK)) {
502                update = false;
503            }
504        } else if(orderPK == null) {
505            update = false;
506        }
507        
508        if(update) {
509            this.orderPK = orderPK;
510            orderPKHasBeenModified = true;
511            clearHashAndString();
512        }
513    }
514    
515    public boolean getOrderPKHasBeenModified() {
516        return orderPKHasBeenModified;
517    }
518    
519    public Integer getOrderLineSequence() {
520        return orderLineSequence;
521    }
522    
523    public void setOrderLineSequence(Integer orderLineSequence)
524            throws PersistenceNotNullException {
525        checkForNull(orderLineSequence);
526        
527        boolean update = true;
528        
529        if(this.orderLineSequence != null) {
530            if(this.orderLineSequence.equals(orderLineSequence)) {
531                update = false;
532            }
533        } else if(orderLineSequence == null) {
534            update = false;
535        }
536        
537        if(update) {
538            this.orderLineSequence = orderLineSequence;
539            orderLineSequenceHasBeenModified = true;
540            clearHashAndString();
541        }
542    }
543    
544    public boolean getOrderLineSequenceHasBeenModified() {
545        return orderLineSequenceHasBeenModified;
546    }
547    
548    public OrderLinePK getParentOrderLinePK() {
549        return parentOrderLinePK;
550    }
551    
552    public void setParentOrderLinePK(OrderLinePK parentOrderLinePK) {
553        boolean update = true;
554        
555        if(this.parentOrderLinePK != null) {
556            if(this.parentOrderLinePK.equals(parentOrderLinePK)) {
557                update = false;
558            }
559        } else if(parentOrderLinePK == null) {
560            update = false;
561        }
562        
563        if(update) {
564            this.parentOrderLinePK = parentOrderLinePK;
565            parentOrderLinePKHasBeenModified = true;
566            clearHashAndString();
567        }
568    }
569    
570    public boolean getParentOrderLinePKHasBeenModified() {
571        return parentOrderLinePKHasBeenModified;
572    }
573    
574    public OrderShipmentGroupPK getOrderShipmentGroupPK() {
575        return orderShipmentGroupPK;
576    }
577    
578    public void setOrderShipmentGroupPK(OrderShipmentGroupPK orderShipmentGroupPK) {
579        boolean update = true;
580        
581        if(this.orderShipmentGroupPK != null) {
582            if(this.orderShipmentGroupPK.equals(orderShipmentGroupPK)) {
583                update = false;
584            }
585        } else if(orderShipmentGroupPK == null) {
586            update = false;
587        }
588        
589        if(update) {
590            this.orderShipmentGroupPK = orderShipmentGroupPK;
591            orderShipmentGroupPKHasBeenModified = true;
592            clearHashAndString();
593        }
594    }
595    
596    public boolean getOrderShipmentGroupPKHasBeenModified() {
597        return orderShipmentGroupPKHasBeenModified;
598    }
599    
600    public ItemPK getItemPK() {
601        return itemPK;
602    }
603    
604    public void setItemPK(ItemPK itemPK)
605            throws PersistenceNotNullException {
606        checkForNull(itemPK);
607        
608        boolean update = true;
609        
610        if(this.itemPK != null) {
611            if(this.itemPK.equals(itemPK)) {
612                update = false;
613            }
614        } else if(itemPK == null) {
615            update = false;
616        }
617        
618        if(update) {
619            this.itemPK = itemPK;
620            itemPKHasBeenModified = true;
621            clearHashAndString();
622        }
623    }
624    
625    public boolean getItemPKHasBeenModified() {
626        return itemPKHasBeenModified;
627    }
628    
629    public InventoryConditionPK getInventoryConditionPK() {
630        return inventoryConditionPK;
631    }
632    
633    public void setInventoryConditionPK(InventoryConditionPK inventoryConditionPK)
634            throws PersistenceNotNullException {
635        checkForNull(inventoryConditionPK);
636        
637        boolean update = true;
638        
639        if(this.inventoryConditionPK != null) {
640            if(this.inventoryConditionPK.equals(inventoryConditionPK)) {
641                update = false;
642            }
643        } else if(inventoryConditionPK == null) {
644            update = false;
645        }
646        
647        if(update) {
648            this.inventoryConditionPK = inventoryConditionPK;
649            inventoryConditionPKHasBeenModified = true;
650            clearHashAndString();
651        }
652    }
653    
654    public boolean getInventoryConditionPKHasBeenModified() {
655        return inventoryConditionPKHasBeenModified;
656    }
657    
658    public UnitOfMeasureTypePK getUnitOfMeasureTypePK() {
659        return unitOfMeasureTypePK;
660    }
661    
662    public void setUnitOfMeasureTypePK(UnitOfMeasureTypePK unitOfMeasureTypePK)
663            throws PersistenceNotNullException {
664        checkForNull(unitOfMeasureTypePK);
665        
666        boolean update = true;
667        
668        if(this.unitOfMeasureTypePK != null) {
669            if(this.unitOfMeasureTypePK.equals(unitOfMeasureTypePK)) {
670                update = false;
671            }
672        } else if(unitOfMeasureTypePK == null) {
673            update = false;
674        }
675        
676        if(update) {
677            this.unitOfMeasureTypePK = unitOfMeasureTypePK;
678            unitOfMeasureTypePKHasBeenModified = true;
679            clearHashAndString();
680        }
681    }
682    
683    public boolean getUnitOfMeasureTypePKHasBeenModified() {
684        return unitOfMeasureTypePKHasBeenModified;
685    }
686    
687    public Long getQuantity() {
688        return quantity;
689    }
690    
691    public void setQuantity(Long quantity) {
692        boolean update = true;
693        
694        if(this.quantity != null) {
695            if(this.quantity.equals(quantity)) {
696                update = false;
697            }
698        } else if(quantity == null) {
699            update = false;
700        }
701        
702        if(update) {
703            this.quantity = quantity;
704            quantityHasBeenModified = true;
705            clearHashAndString();
706        }
707    }
708    
709    public boolean getQuantityHasBeenModified() {
710        return quantityHasBeenModified;
711    }
712    
713    public Long getUnitAmount() {
714        return unitAmount;
715    }
716    
717    public void setUnitAmount(Long unitAmount) {
718        boolean update = true;
719        
720        if(this.unitAmount != null) {
721            if(this.unitAmount.equals(unitAmount)) {
722                update = false;
723            }
724        } else if(unitAmount == null) {
725            update = false;
726        }
727        
728        if(update) {
729            this.unitAmount = unitAmount;
730            unitAmountHasBeenModified = true;
731            clearHashAndString();
732        }
733    }
734    
735    public boolean getUnitAmountHasBeenModified() {
736        return unitAmountHasBeenModified;
737    }
738    
739    public String getDescription() {
740        return description;
741    }
742    
743    public void setDescription(String description) {
744        boolean update = true;
745        
746        if(this.description != null) {
747            if(this.description.equals(description)) {
748                update = false;
749            }
750        } else if(description == null) {
751            update = false;
752        }
753        
754        if(update) {
755            this.description = description;
756            descriptionHasBeenModified = true;
757            clearHashAndString();
758        }
759    }
760    
761    public boolean getDescriptionHasBeenModified() {
762        return descriptionHasBeenModified;
763    }
764    
765    public CancellationPolicyPK getCancellationPolicyPK() {
766        return cancellationPolicyPK;
767    }
768    
769    public void setCancellationPolicyPK(CancellationPolicyPK cancellationPolicyPK) {
770        boolean update = true;
771        
772        if(this.cancellationPolicyPK != null) {
773            if(this.cancellationPolicyPK.equals(cancellationPolicyPK)) {
774                update = false;
775            }
776        } else if(cancellationPolicyPK == null) {
777            update = false;
778        }
779        
780        if(update) {
781            this.cancellationPolicyPK = cancellationPolicyPK;
782            cancellationPolicyPKHasBeenModified = true;
783            clearHashAndString();
784        }
785    }
786    
787    public boolean getCancellationPolicyPKHasBeenModified() {
788        return cancellationPolicyPKHasBeenModified;
789    }
790    
791    public ReturnPolicyPK getReturnPolicyPK() {
792        return returnPolicyPK;
793    }
794    
795    public void setReturnPolicyPK(ReturnPolicyPK returnPolicyPK) {
796        boolean update = true;
797        
798        if(this.returnPolicyPK != null) {
799            if(this.returnPolicyPK.equals(returnPolicyPK)) {
800                update = false;
801            }
802        } else if(returnPolicyPK == null) {
803            update = false;
804        }
805        
806        if(update) {
807            this.returnPolicyPK = returnPolicyPK;
808            returnPolicyPKHasBeenModified = true;
809            clearHashAndString();
810        }
811    }
812    
813    public boolean getReturnPolicyPKHasBeenModified() {
814        return returnPolicyPKHasBeenModified;
815    }
816    
817    public Boolean getTaxable() {
818        return taxable;
819    }
820    
821    public void setTaxable(Boolean taxable) {
822        boolean update = true;
823        
824        if(this.taxable != null) {
825            if(this.taxable.equals(taxable)) {
826                update = false;
827            }
828        } else if(taxable == null) {
829            update = false;
830        }
831        
832        if(update) {
833            this.taxable = taxable;
834            taxableHasBeenModified = true;
835            clearHashAndString();
836        }
837    }
838    
839    public boolean getTaxableHasBeenModified() {
840        return taxableHasBeenModified;
841    }
842    
843    public Long getFromTime() {
844        return fromTime;
845    }
846    
847    public void setFromTime(Long fromTime)
848            throws PersistenceNotNullException {
849        checkForNull(fromTime);
850        
851        boolean update = true;
852        
853        if(this.fromTime != null) {
854            if(this.fromTime.equals(fromTime)) {
855                update = false;
856            }
857        } else if(fromTime == null) {
858            update = false;
859        }
860        
861        if(update) {
862            this.fromTime = fromTime;
863            fromTimeHasBeenModified = true;
864            clearHashAndString();
865        }
866    }
867    
868    public boolean getFromTimeHasBeenModified() {
869        return fromTimeHasBeenModified;
870    }
871    
872    public Long getThruTime() {
873        return thruTime;
874    }
875    
876    public void setThruTime(Long thruTime)
877            throws PersistenceNotNullException {
878        checkForNull(thruTime);
879        
880        boolean update = true;
881        
882        if(this.thruTime != null) {
883            if(this.thruTime.equals(thruTime)) {
884                update = false;
885            }
886        } else if(thruTime == null) {
887            update = false;
888        }
889        
890        if(update) {
891            this.thruTime = thruTime;
892            thruTimeHasBeenModified = true;
893            clearHashAndString();
894        }
895    }
896    
897    public boolean getThruTimeHasBeenModified() {
898        return thruTimeHasBeenModified;
899    }
900    
901}