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 * CarrierServiceOptionValue.java
021 */
022
023package com.echothree.model.data.carrier.server.value;
024
025import com.echothree.model.data.carrier.common.pk.CarrierServiceOptionPK;
026
027import com.echothree.model.data.carrier.server.factory.CarrierServiceOptionFactory;
028
029import com.echothree.model.data.carrier.common.pk.CarrierServicePK;
030import com.echothree.model.data.carrier.common.pk.CarrierOptionPK;
031import com.echothree.model.data.selector.common.pk.SelectorPK;
032
033import com.echothree.util.common.exception.PersistenceCloneException;
034import com.echothree.util.common.exception.PersistenceNotNullException;
035
036import com.echothree.util.server.persistence.BaseValue;
037
038import java.io.Serializable;
039
040public class CarrierServiceOptionValue
041        extends BaseValue<CarrierServiceOptionPK>
042        implements Cloneable, Serializable {
043    
044    private CarrierServicePK carrierServicePK;
045    private boolean carrierServicePKHasBeenModified = false;
046    private CarrierOptionPK carrierOptionPK;
047    private boolean carrierOptionPKHasBeenModified = false;
048    private Boolean isRecommended;
049    private boolean isRecommendedHasBeenModified = false;
050    private Boolean isRequired;
051    private boolean isRequiredHasBeenModified = false;
052    private SelectorPK recommendedGeoCodeSelectorPK;
053    private boolean recommendedGeoCodeSelectorPKHasBeenModified = false;
054    private SelectorPK requiredGeoCodeSelectorPK;
055    private boolean requiredGeoCodeSelectorPKHasBeenModified = false;
056    private SelectorPK recommendedItemSelectorPK;
057    private boolean recommendedItemSelectorPKHasBeenModified = false;
058    private SelectorPK requiredItemSelectorPK;
059    private boolean requiredItemSelectorPKHasBeenModified = false;
060    private SelectorPK recommendedOrderSelectorPK;
061    private boolean recommendedOrderSelectorPKHasBeenModified = false;
062    private SelectorPK requiredOrderSelectorPK;
063    private boolean requiredOrderSelectorPKHasBeenModified = false;
064    private SelectorPK recommendedShipmentSelectorPK;
065    private boolean recommendedShipmentSelectorPKHasBeenModified = false;
066    private SelectorPK requiredShipmentSelectorPK;
067    private boolean requiredShipmentSelectorPKHasBeenModified = false;
068    private Long fromTime;
069    private boolean fromTimeHasBeenModified = false;
070    private Long thruTime;
071    private boolean thruTimeHasBeenModified = false;
072    
073    private transient Integer _hashCode = null;
074    private transient String _stringValue = null;
075    
076    private void constructFields(CarrierServicePK carrierServicePK, CarrierOptionPK carrierOptionPK, Boolean isRecommended, Boolean isRequired, SelectorPK recommendedGeoCodeSelectorPK, SelectorPK requiredGeoCodeSelectorPK, SelectorPK recommendedItemSelectorPK, SelectorPK requiredItemSelectorPK, SelectorPK recommendedOrderSelectorPK, SelectorPK requiredOrderSelectorPK, SelectorPK recommendedShipmentSelectorPK, SelectorPK requiredShipmentSelectorPK, Long fromTime, Long thruTime)
077            throws PersistenceNotNullException {
078        checkForNull(carrierServicePK);
079        this.carrierServicePK = carrierServicePK;
080        checkForNull(carrierOptionPK);
081        this.carrierOptionPK = carrierOptionPK;
082        checkForNull(isRecommended);
083        this.isRecommended = isRecommended;
084        checkForNull(isRequired);
085        this.isRequired = isRequired;
086        this.recommendedGeoCodeSelectorPK = recommendedGeoCodeSelectorPK;
087        this.requiredGeoCodeSelectorPK = requiredGeoCodeSelectorPK;
088        this.recommendedItemSelectorPK = recommendedItemSelectorPK;
089        this.requiredItemSelectorPK = requiredItemSelectorPK;
090        this.recommendedOrderSelectorPK = recommendedOrderSelectorPK;
091        this.requiredOrderSelectorPK = requiredOrderSelectorPK;
092        this.recommendedShipmentSelectorPK = recommendedShipmentSelectorPK;
093        this.requiredShipmentSelectorPK = requiredShipmentSelectorPK;
094        checkForNull(fromTime);
095        this.fromTime = fromTime;
096        checkForNull(thruTime);
097        this.thruTime = thruTime;
098    }
099    
100    /** Creates a new instance of CarrierServiceOptionValue */
101    public CarrierServiceOptionValue(CarrierServiceOptionPK carrierServiceOptionPK, CarrierServicePK carrierServicePK, CarrierOptionPK carrierOptionPK, Boolean isRecommended, Boolean isRequired, SelectorPK recommendedGeoCodeSelectorPK, SelectorPK requiredGeoCodeSelectorPK, SelectorPK recommendedItemSelectorPK, SelectorPK requiredItemSelectorPK, SelectorPK recommendedOrderSelectorPK, SelectorPK requiredOrderSelectorPK, SelectorPK recommendedShipmentSelectorPK, SelectorPK requiredShipmentSelectorPK, Long fromTime, Long thruTime)
102            throws PersistenceNotNullException {
103        super(carrierServiceOptionPK);
104        constructFields(carrierServicePK, carrierOptionPK, isRecommended, isRequired, recommendedGeoCodeSelectorPK, requiredGeoCodeSelectorPK, recommendedItemSelectorPK, requiredItemSelectorPK, recommendedOrderSelectorPK, requiredOrderSelectorPK, recommendedShipmentSelectorPK, requiredShipmentSelectorPK, fromTime, thruTime);
105    }
106    
107    /** Creates a new instance of CarrierServiceOptionValue */
108    public CarrierServiceOptionValue(CarrierServicePK carrierServicePK, CarrierOptionPK carrierOptionPK, Boolean isRecommended, Boolean isRequired, SelectorPK recommendedGeoCodeSelectorPK, SelectorPK requiredGeoCodeSelectorPK, SelectorPK recommendedItemSelectorPK, SelectorPK requiredItemSelectorPK, SelectorPK recommendedOrderSelectorPK, SelectorPK requiredOrderSelectorPK, SelectorPK recommendedShipmentSelectorPK, SelectorPK requiredShipmentSelectorPK, Long fromTime, Long thruTime)
109            throws PersistenceNotNullException {
110        super();
111        constructFields(carrierServicePK, carrierOptionPK, isRecommended, isRequired, recommendedGeoCodeSelectorPK, requiredGeoCodeSelectorPK, recommendedItemSelectorPK, requiredItemSelectorPK, recommendedOrderSelectorPK, requiredOrderSelectorPK, recommendedShipmentSelectorPK, requiredShipmentSelectorPK, fromTime, thruTime);
112    }
113    
114   @Override
115   public CarrierServiceOptionFactory getBaseFactoryInstance() {
116        return CarrierServiceOptionFactory.getInstance();
117    }
118    
119    @Override
120    public CarrierServiceOptionValue clone() {
121        Object result;
122        
123        try {
124            result = super.clone();
125        } catch (CloneNotSupportedException cnse) {
126            // This shouldn't happen, fail when it does.
127            throw new PersistenceCloneException(cnse);
128        }
129        
130        return (CarrierServiceOptionValue)result;
131    }
132    
133   @Override
134    public CarrierServiceOptionPK getPrimaryKey() {
135        if(_primaryKey == null) {
136            _primaryKey = new CarrierServiceOptionPK(entityId);
137        }
138        
139        return _primaryKey;
140    }
141    
142    private void clearHashAndString() {
143        _hashCode = null;
144        _stringValue = null;
145    }
146    
147    @Override
148    public int hashCode() {
149        if(_hashCode == null) {
150            int hashCode = 17;
151            
152            hashCode = 37 * hashCode + ((entityId != null) ? entityId.hashCode() : 0);
153            
154            hashCode = 37 * hashCode + ((carrierServicePK != null) ? carrierServicePK.hashCode() : 0);
155            hashCode = 37 * hashCode + ((carrierOptionPK != null) ? carrierOptionPK.hashCode() : 0);
156            hashCode = 37 * hashCode + ((isRecommended != null) ? isRecommended.hashCode() : 0);
157            hashCode = 37 * hashCode + ((isRequired != null) ? isRequired.hashCode() : 0);
158            hashCode = 37 * hashCode + ((recommendedGeoCodeSelectorPK != null) ? recommendedGeoCodeSelectorPK.hashCode() : 0);
159            hashCode = 37 * hashCode + ((requiredGeoCodeSelectorPK != null) ? requiredGeoCodeSelectorPK.hashCode() : 0);
160            hashCode = 37 * hashCode + ((recommendedItemSelectorPK != null) ? recommendedItemSelectorPK.hashCode() : 0);
161            hashCode = 37 * hashCode + ((requiredItemSelectorPK != null) ? requiredItemSelectorPK.hashCode() : 0);
162            hashCode = 37 * hashCode + ((recommendedOrderSelectorPK != null) ? recommendedOrderSelectorPK.hashCode() : 0);
163            hashCode = 37 * hashCode + ((requiredOrderSelectorPK != null) ? requiredOrderSelectorPK.hashCode() : 0);
164            hashCode = 37 * hashCode + ((recommendedShipmentSelectorPK != null) ? recommendedShipmentSelectorPK.hashCode() : 0);
165            hashCode = 37 * hashCode + ((requiredShipmentSelectorPK != null) ? requiredShipmentSelectorPK.hashCode() : 0);
166            hashCode = 37 * hashCode + ((fromTime != null) ? fromTime.hashCode() : 0);
167            hashCode = 37 * hashCode + ((thruTime != null) ? thruTime.hashCode() : 0);
168            
169            _hashCode = hashCode;
170        }
171        
172        return _hashCode;
173    }
174    
175    @Override
176    public String toString() {
177        if(_stringValue == null) {
178            StringBuilder stringValue = new StringBuilder("{");
179            
180            stringValue.append("entityId=").append(getEntityId());
181            
182            stringValue.append(", carrierServicePK=").append(getCarrierServicePK());
183            stringValue.append(", carrierOptionPK=").append(getCarrierOptionPK());
184            stringValue.append(", isRecommended=").append(getIsRecommended());
185            stringValue.append(", isRequired=").append(getIsRequired());
186            stringValue.append(", recommendedGeoCodeSelectorPK=").append(getRecommendedGeoCodeSelectorPK());
187            stringValue.append(", requiredGeoCodeSelectorPK=").append(getRequiredGeoCodeSelectorPK());
188            stringValue.append(", recommendedItemSelectorPK=").append(getRecommendedItemSelectorPK());
189            stringValue.append(", requiredItemSelectorPK=").append(getRequiredItemSelectorPK());
190            stringValue.append(", recommendedOrderSelectorPK=").append(getRecommendedOrderSelectorPK());
191            stringValue.append(", requiredOrderSelectorPK=").append(getRequiredOrderSelectorPK());
192            stringValue.append(", recommendedShipmentSelectorPK=").append(getRecommendedShipmentSelectorPK());
193            stringValue.append(", requiredShipmentSelectorPK=").append(getRequiredShipmentSelectorPK());
194            stringValue.append(", fromTime=").append(getFromTime());
195            stringValue.append(", thruTime=").append(getThruTime());
196            
197            stringValue.append('}');
198            
199            _stringValue = stringValue.toString();
200        }
201        return _stringValue;
202    }
203    
204    @Override
205    public boolean equals(Object other) {
206        if(this == other)
207            return true;
208        
209        if(!hasIdentity())
210            return false;
211        
212        if(other instanceof  CarrierServiceOptionValue) {
213            CarrierServiceOptionValue that = (CarrierServiceOptionValue)other;
214            
215            if(!that.hasIdentity())
216                return false;
217            
218            Long thisEntityId = getEntityId();
219            Long thatEntityId = that.getEntityId();
220            
221            boolean objectsEqual = thisEntityId.equals(thatEntityId);
222            if(objectsEqual)
223                objectsEqual = objectsEqual && isIdentical(that);
224            
225            return objectsEqual;
226        } else {
227            return false;
228        }
229    }
230    
231    public boolean isIdentical(Object other) {
232        if(other instanceof CarrierServiceOptionValue) {
233            CarrierServiceOptionValue that = (CarrierServiceOptionValue)other;
234            boolean objectsEqual = true;
235            
236            
237            if(objectsEqual) {
238                CarrierServicePK thisCarrierServicePK = getCarrierServicePK();
239                CarrierServicePK thatCarrierServicePK = that.getCarrierServicePK();
240                
241                if(thisCarrierServicePK == null) {
242                    objectsEqual = objectsEqual && (thatCarrierServicePK == null);
243                } else {
244                    objectsEqual = objectsEqual && thisCarrierServicePK.equals(thatCarrierServicePK);
245                }
246            }
247            
248            if(objectsEqual) {
249                CarrierOptionPK thisCarrierOptionPK = getCarrierOptionPK();
250                CarrierOptionPK thatCarrierOptionPK = that.getCarrierOptionPK();
251                
252                if(thisCarrierOptionPK == null) {
253                    objectsEqual = objectsEqual && (thatCarrierOptionPK == null);
254                } else {
255                    objectsEqual = objectsEqual && thisCarrierOptionPK.equals(thatCarrierOptionPK);
256                }
257            }
258            
259            if(objectsEqual) {
260                Boolean thisIsRecommended = getIsRecommended();
261                Boolean thatIsRecommended = that.getIsRecommended();
262                
263                if(thisIsRecommended == null) {
264                    objectsEqual = objectsEqual && (thatIsRecommended == null);
265                } else {
266                    objectsEqual = objectsEqual && thisIsRecommended.equals(thatIsRecommended);
267                }
268            }
269            
270            if(objectsEqual) {
271                Boolean thisIsRequired = getIsRequired();
272                Boolean thatIsRequired = that.getIsRequired();
273                
274                if(thisIsRequired == null) {
275                    objectsEqual = objectsEqual && (thatIsRequired == null);
276                } else {
277                    objectsEqual = objectsEqual && thisIsRequired.equals(thatIsRequired);
278                }
279            }
280            
281            if(objectsEqual) {
282                SelectorPK thisRecommendedGeoCodeSelectorPK = getRecommendedGeoCodeSelectorPK();
283                SelectorPK thatRecommendedGeoCodeSelectorPK = that.getRecommendedGeoCodeSelectorPK();
284                
285                if(thisRecommendedGeoCodeSelectorPK == null) {
286                    objectsEqual = objectsEqual && (thatRecommendedGeoCodeSelectorPK == null);
287                } else {
288                    objectsEqual = objectsEqual && thisRecommendedGeoCodeSelectorPK.equals(thatRecommendedGeoCodeSelectorPK);
289                }
290            }
291            
292            if(objectsEqual) {
293                SelectorPK thisRequiredGeoCodeSelectorPK = getRequiredGeoCodeSelectorPK();
294                SelectorPK thatRequiredGeoCodeSelectorPK = that.getRequiredGeoCodeSelectorPK();
295                
296                if(thisRequiredGeoCodeSelectorPK == null) {
297                    objectsEqual = objectsEqual && (thatRequiredGeoCodeSelectorPK == null);
298                } else {
299                    objectsEqual = objectsEqual && thisRequiredGeoCodeSelectorPK.equals(thatRequiredGeoCodeSelectorPK);
300                }
301            }
302            
303            if(objectsEqual) {
304                SelectorPK thisRecommendedItemSelectorPK = getRecommendedItemSelectorPK();
305                SelectorPK thatRecommendedItemSelectorPK = that.getRecommendedItemSelectorPK();
306                
307                if(thisRecommendedItemSelectorPK == null) {
308                    objectsEqual = objectsEqual && (thatRecommendedItemSelectorPK == null);
309                } else {
310                    objectsEqual = objectsEqual && thisRecommendedItemSelectorPK.equals(thatRecommendedItemSelectorPK);
311                }
312            }
313            
314            if(objectsEqual) {
315                SelectorPK thisRequiredItemSelectorPK = getRequiredItemSelectorPK();
316                SelectorPK thatRequiredItemSelectorPK = that.getRequiredItemSelectorPK();
317                
318                if(thisRequiredItemSelectorPK == null) {
319                    objectsEqual = objectsEqual && (thatRequiredItemSelectorPK == null);
320                } else {
321                    objectsEqual = objectsEqual && thisRequiredItemSelectorPK.equals(thatRequiredItemSelectorPK);
322                }
323            }
324            
325            if(objectsEqual) {
326                SelectorPK thisRecommendedOrderSelectorPK = getRecommendedOrderSelectorPK();
327                SelectorPK thatRecommendedOrderSelectorPK = that.getRecommendedOrderSelectorPK();
328                
329                if(thisRecommendedOrderSelectorPK == null) {
330                    objectsEqual = objectsEqual && (thatRecommendedOrderSelectorPK == null);
331                } else {
332                    objectsEqual = objectsEqual && thisRecommendedOrderSelectorPK.equals(thatRecommendedOrderSelectorPK);
333                }
334            }
335            
336            if(objectsEqual) {
337                SelectorPK thisRequiredOrderSelectorPK = getRequiredOrderSelectorPK();
338                SelectorPK thatRequiredOrderSelectorPK = that.getRequiredOrderSelectorPK();
339                
340                if(thisRequiredOrderSelectorPK == null) {
341                    objectsEqual = objectsEqual && (thatRequiredOrderSelectorPK == null);
342                } else {
343                    objectsEqual = objectsEqual && thisRequiredOrderSelectorPK.equals(thatRequiredOrderSelectorPK);
344                }
345            }
346            
347            if(objectsEqual) {
348                SelectorPK thisRecommendedShipmentSelectorPK = getRecommendedShipmentSelectorPK();
349                SelectorPK thatRecommendedShipmentSelectorPK = that.getRecommendedShipmentSelectorPK();
350                
351                if(thisRecommendedShipmentSelectorPK == null) {
352                    objectsEqual = objectsEqual && (thatRecommendedShipmentSelectorPK == null);
353                } else {
354                    objectsEqual = objectsEqual && thisRecommendedShipmentSelectorPK.equals(thatRecommendedShipmentSelectorPK);
355                }
356            }
357            
358            if(objectsEqual) {
359                SelectorPK thisRequiredShipmentSelectorPK = getRequiredShipmentSelectorPK();
360                SelectorPK thatRequiredShipmentSelectorPK = that.getRequiredShipmentSelectorPK();
361                
362                if(thisRequiredShipmentSelectorPK == null) {
363                    objectsEqual = objectsEqual && (thatRequiredShipmentSelectorPK == null);
364                } else {
365                    objectsEqual = objectsEqual && thisRequiredShipmentSelectorPK.equals(thatRequiredShipmentSelectorPK);
366                }
367            }
368            
369            if(objectsEqual) {
370                Long thisFromTime = getFromTime();
371                Long thatFromTime = that.getFromTime();
372                
373                if(thisFromTime == null) {
374                    objectsEqual = objectsEqual && (thatFromTime == null);
375                } else {
376                    objectsEqual = objectsEqual && thisFromTime.equals(thatFromTime);
377                }
378            }
379            
380            if(objectsEqual) {
381                Long thisThruTime = getThruTime();
382                Long thatThruTime = that.getThruTime();
383                
384                if(thisThruTime == null) {
385                    objectsEqual = objectsEqual && (thatThruTime == null);
386                } else {
387                    objectsEqual = objectsEqual && thisThruTime.equals(thatThruTime);
388                }
389            }
390            
391            return objectsEqual;
392        } else {
393            return false;
394        }
395    }
396    
397    @Override
398    public boolean hasBeenModified() {
399        return carrierServicePKHasBeenModified || carrierOptionPKHasBeenModified || isRecommendedHasBeenModified || isRequiredHasBeenModified || recommendedGeoCodeSelectorPKHasBeenModified || requiredGeoCodeSelectorPKHasBeenModified || recommendedItemSelectorPKHasBeenModified || requiredItemSelectorPKHasBeenModified || recommendedOrderSelectorPKHasBeenModified || requiredOrderSelectorPKHasBeenModified || recommendedShipmentSelectorPKHasBeenModified || requiredShipmentSelectorPKHasBeenModified || fromTimeHasBeenModified || thruTimeHasBeenModified;
400    }
401    
402    @Override
403    public void clearHasBeenModified() {
404        carrierServicePKHasBeenModified = false;
405        carrierOptionPKHasBeenModified = false;
406        isRecommendedHasBeenModified = false;
407        isRequiredHasBeenModified = false;
408        recommendedGeoCodeSelectorPKHasBeenModified = false;
409        requiredGeoCodeSelectorPKHasBeenModified = false;
410        recommendedItemSelectorPKHasBeenModified = false;
411        requiredItemSelectorPKHasBeenModified = false;
412        recommendedOrderSelectorPKHasBeenModified = false;
413        requiredOrderSelectorPKHasBeenModified = false;
414        recommendedShipmentSelectorPKHasBeenModified = false;
415        requiredShipmentSelectorPKHasBeenModified = false;
416        fromTimeHasBeenModified = false;
417        thruTimeHasBeenModified = false;
418    }
419    
420    public CarrierServicePK getCarrierServicePK() {
421        return carrierServicePK;
422    }
423    
424    public void setCarrierServicePK(CarrierServicePK carrierServicePK)
425            throws PersistenceNotNullException {
426        checkForNull(carrierServicePK);
427        
428        boolean update = true;
429        
430        if(this.carrierServicePK != null) {
431            if(this.carrierServicePK.equals(carrierServicePK)) {
432                update = false;
433            }
434        } else if(carrierServicePK == null) {
435            update = false;
436        }
437        
438        if(update) {
439            this.carrierServicePK = carrierServicePK;
440            carrierServicePKHasBeenModified = true;
441            clearHashAndString();
442        }
443    }
444    
445    public boolean getCarrierServicePKHasBeenModified() {
446        return carrierServicePKHasBeenModified;
447    }
448    
449    public CarrierOptionPK getCarrierOptionPK() {
450        return carrierOptionPK;
451    }
452    
453    public void setCarrierOptionPK(CarrierOptionPK carrierOptionPK)
454            throws PersistenceNotNullException {
455        checkForNull(carrierOptionPK);
456        
457        boolean update = true;
458        
459        if(this.carrierOptionPK != null) {
460            if(this.carrierOptionPK.equals(carrierOptionPK)) {
461                update = false;
462            }
463        } else if(carrierOptionPK == null) {
464            update = false;
465        }
466        
467        if(update) {
468            this.carrierOptionPK = carrierOptionPK;
469            carrierOptionPKHasBeenModified = true;
470            clearHashAndString();
471        }
472    }
473    
474    public boolean getCarrierOptionPKHasBeenModified() {
475        return carrierOptionPKHasBeenModified;
476    }
477    
478    public Boolean getIsRecommended() {
479        return isRecommended;
480    }
481    
482    public void setIsRecommended(Boolean isRecommended)
483            throws PersistenceNotNullException {
484        checkForNull(isRecommended);
485        
486        boolean update = true;
487        
488        if(this.isRecommended != null) {
489            if(this.isRecommended.equals(isRecommended)) {
490                update = false;
491            }
492        } else if(isRecommended == null) {
493            update = false;
494        }
495        
496        if(update) {
497            this.isRecommended = isRecommended;
498            isRecommendedHasBeenModified = true;
499            clearHashAndString();
500        }
501    }
502    
503    public boolean getIsRecommendedHasBeenModified() {
504        return isRecommendedHasBeenModified;
505    }
506    
507    public Boolean getIsRequired() {
508        return isRequired;
509    }
510    
511    public void setIsRequired(Boolean isRequired)
512            throws PersistenceNotNullException {
513        checkForNull(isRequired);
514        
515        boolean update = true;
516        
517        if(this.isRequired != null) {
518            if(this.isRequired.equals(isRequired)) {
519                update = false;
520            }
521        } else if(isRequired == null) {
522            update = false;
523        }
524        
525        if(update) {
526            this.isRequired = isRequired;
527            isRequiredHasBeenModified = true;
528            clearHashAndString();
529        }
530    }
531    
532    public boolean getIsRequiredHasBeenModified() {
533        return isRequiredHasBeenModified;
534    }
535    
536    public SelectorPK getRecommendedGeoCodeSelectorPK() {
537        return recommendedGeoCodeSelectorPK;
538    }
539    
540    public void setRecommendedGeoCodeSelectorPK(SelectorPK recommendedGeoCodeSelectorPK) {
541        boolean update = true;
542        
543        if(this.recommendedGeoCodeSelectorPK != null) {
544            if(this.recommendedGeoCodeSelectorPK.equals(recommendedGeoCodeSelectorPK)) {
545                update = false;
546            }
547        } else if(recommendedGeoCodeSelectorPK == null) {
548            update = false;
549        }
550        
551        if(update) {
552            this.recommendedGeoCodeSelectorPK = recommendedGeoCodeSelectorPK;
553            recommendedGeoCodeSelectorPKHasBeenModified = true;
554            clearHashAndString();
555        }
556    }
557    
558    public boolean getRecommendedGeoCodeSelectorPKHasBeenModified() {
559        return recommendedGeoCodeSelectorPKHasBeenModified;
560    }
561    
562    public SelectorPK getRequiredGeoCodeSelectorPK() {
563        return requiredGeoCodeSelectorPK;
564    }
565    
566    public void setRequiredGeoCodeSelectorPK(SelectorPK requiredGeoCodeSelectorPK) {
567        boolean update = true;
568        
569        if(this.requiredGeoCodeSelectorPK != null) {
570            if(this.requiredGeoCodeSelectorPK.equals(requiredGeoCodeSelectorPK)) {
571                update = false;
572            }
573        } else if(requiredGeoCodeSelectorPK == null) {
574            update = false;
575        }
576        
577        if(update) {
578            this.requiredGeoCodeSelectorPK = requiredGeoCodeSelectorPK;
579            requiredGeoCodeSelectorPKHasBeenModified = true;
580            clearHashAndString();
581        }
582    }
583    
584    public boolean getRequiredGeoCodeSelectorPKHasBeenModified() {
585        return requiredGeoCodeSelectorPKHasBeenModified;
586    }
587    
588    public SelectorPK getRecommendedItemSelectorPK() {
589        return recommendedItemSelectorPK;
590    }
591    
592    public void setRecommendedItemSelectorPK(SelectorPK recommendedItemSelectorPK) {
593        boolean update = true;
594        
595        if(this.recommendedItemSelectorPK != null) {
596            if(this.recommendedItemSelectorPK.equals(recommendedItemSelectorPK)) {
597                update = false;
598            }
599        } else if(recommendedItemSelectorPK == null) {
600            update = false;
601        }
602        
603        if(update) {
604            this.recommendedItemSelectorPK = recommendedItemSelectorPK;
605            recommendedItemSelectorPKHasBeenModified = true;
606            clearHashAndString();
607        }
608    }
609    
610    public boolean getRecommendedItemSelectorPKHasBeenModified() {
611        return recommendedItemSelectorPKHasBeenModified;
612    }
613    
614    public SelectorPK getRequiredItemSelectorPK() {
615        return requiredItemSelectorPK;
616    }
617    
618    public void setRequiredItemSelectorPK(SelectorPK requiredItemSelectorPK) {
619        boolean update = true;
620        
621        if(this.requiredItemSelectorPK != null) {
622            if(this.requiredItemSelectorPK.equals(requiredItemSelectorPK)) {
623                update = false;
624            }
625        } else if(requiredItemSelectorPK == null) {
626            update = false;
627        }
628        
629        if(update) {
630            this.requiredItemSelectorPK = requiredItemSelectorPK;
631            requiredItemSelectorPKHasBeenModified = true;
632            clearHashAndString();
633        }
634    }
635    
636    public boolean getRequiredItemSelectorPKHasBeenModified() {
637        return requiredItemSelectorPKHasBeenModified;
638    }
639    
640    public SelectorPK getRecommendedOrderSelectorPK() {
641        return recommendedOrderSelectorPK;
642    }
643    
644    public void setRecommendedOrderSelectorPK(SelectorPK recommendedOrderSelectorPK) {
645        boolean update = true;
646        
647        if(this.recommendedOrderSelectorPK != null) {
648            if(this.recommendedOrderSelectorPK.equals(recommendedOrderSelectorPK)) {
649                update = false;
650            }
651        } else if(recommendedOrderSelectorPK == null) {
652            update = false;
653        }
654        
655        if(update) {
656            this.recommendedOrderSelectorPK = recommendedOrderSelectorPK;
657            recommendedOrderSelectorPKHasBeenModified = true;
658            clearHashAndString();
659        }
660    }
661    
662    public boolean getRecommendedOrderSelectorPKHasBeenModified() {
663        return recommendedOrderSelectorPKHasBeenModified;
664    }
665    
666    public SelectorPK getRequiredOrderSelectorPK() {
667        return requiredOrderSelectorPK;
668    }
669    
670    public void setRequiredOrderSelectorPK(SelectorPK requiredOrderSelectorPK) {
671        boolean update = true;
672        
673        if(this.requiredOrderSelectorPK != null) {
674            if(this.requiredOrderSelectorPK.equals(requiredOrderSelectorPK)) {
675                update = false;
676            }
677        } else if(requiredOrderSelectorPK == null) {
678            update = false;
679        }
680        
681        if(update) {
682            this.requiredOrderSelectorPK = requiredOrderSelectorPK;
683            requiredOrderSelectorPKHasBeenModified = true;
684            clearHashAndString();
685        }
686    }
687    
688    public boolean getRequiredOrderSelectorPKHasBeenModified() {
689        return requiredOrderSelectorPKHasBeenModified;
690    }
691    
692    public SelectorPK getRecommendedShipmentSelectorPK() {
693        return recommendedShipmentSelectorPK;
694    }
695    
696    public void setRecommendedShipmentSelectorPK(SelectorPK recommendedShipmentSelectorPK) {
697        boolean update = true;
698        
699        if(this.recommendedShipmentSelectorPK != null) {
700            if(this.recommendedShipmentSelectorPK.equals(recommendedShipmentSelectorPK)) {
701                update = false;
702            }
703        } else if(recommendedShipmentSelectorPK == null) {
704            update = false;
705        }
706        
707        if(update) {
708            this.recommendedShipmentSelectorPK = recommendedShipmentSelectorPK;
709            recommendedShipmentSelectorPKHasBeenModified = true;
710            clearHashAndString();
711        }
712    }
713    
714    public boolean getRecommendedShipmentSelectorPKHasBeenModified() {
715        return recommendedShipmentSelectorPKHasBeenModified;
716    }
717    
718    public SelectorPK getRequiredShipmentSelectorPK() {
719        return requiredShipmentSelectorPK;
720    }
721    
722    public void setRequiredShipmentSelectorPK(SelectorPK requiredShipmentSelectorPK) {
723        boolean update = true;
724        
725        if(this.requiredShipmentSelectorPK != null) {
726            if(this.requiredShipmentSelectorPK.equals(requiredShipmentSelectorPK)) {
727                update = false;
728            }
729        } else if(requiredShipmentSelectorPK == null) {
730            update = false;
731        }
732        
733        if(update) {
734            this.requiredShipmentSelectorPK = requiredShipmentSelectorPK;
735            requiredShipmentSelectorPKHasBeenModified = true;
736            clearHashAndString();
737        }
738    }
739    
740    public boolean getRequiredShipmentSelectorPKHasBeenModified() {
741        return requiredShipmentSelectorPKHasBeenModified;
742    }
743    
744    public Long getFromTime() {
745        return fromTime;
746    }
747    
748    public void setFromTime(Long fromTime)
749            throws PersistenceNotNullException {
750        checkForNull(fromTime);
751        
752        boolean update = true;
753        
754        if(this.fromTime != null) {
755            if(this.fromTime.equals(fromTime)) {
756                update = false;
757            }
758        } else if(fromTime == null) {
759            update = false;
760        }
761        
762        if(update) {
763            this.fromTime = fromTime;
764            fromTimeHasBeenModified = true;
765            clearHashAndString();
766        }
767    }
768    
769    public boolean getFromTimeHasBeenModified() {
770        return fromTimeHasBeenModified;
771    }
772    
773    public Long getThruTime() {
774        return thruTime;
775    }
776    
777    public void setThruTime(Long thruTime)
778            throws PersistenceNotNullException {
779        checkForNull(thruTime);
780        
781        boolean update = true;
782        
783        if(this.thruTime != null) {
784            if(this.thruTime.equals(thruTime)) {
785                update = false;
786            }
787        } else if(thruTime == null) {
788            update = false;
789        }
790        
791        if(update) {
792            this.thruTime = thruTime;
793            thruTimeHasBeenModified = true;
794            clearHashAndString();
795        }
796    }
797    
798    public boolean getThruTimeHasBeenModified() {
799        return thruTimeHasBeenModified;
800    }
801    
802}