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 * ProfileValue.java
021 */
022
023package com.echothree.model.data.party.server.value;
024
025import com.echothree.model.data.party.common.pk.ProfilePK;
026
027import com.echothree.model.data.party.server.factory.ProfileFactory;
028
029import com.echothree.model.data.party.common.pk.PartyPK;
030import com.echothree.model.data.icon.common.pk.IconPK;
031import com.echothree.model.data.party.common.pk.GenderPK;
032import com.echothree.model.data.party.common.pk.BirthdayFormatPK;
033import com.echothree.model.data.core.common.pk.MimeTypePK;
034
035import com.echothree.util.common.exception.PersistenceCloneException;
036import com.echothree.util.common.exception.PersistenceNotNullException;
037
038import com.echothree.util.server.persistence.BaseValue;
039
040import java.io.Serializable;
041
042public class ProfileValue
043        extends BaseValue<ProfilePK>
044        implements Cloneable, Serializable {
045    
046    private PartyPK partyPK;
047    private boolean partyPKHasBeenModified = false;
048    private String nickname;
049    private boolean nicknameHasBeenModified = false;
050    private IconPK iconPK;
051    private boolean iconPKHasBeenModified = false;
052    private String pronunciation;
053    private boolean pronunciationHasBeenModified = false;
054    private GenderPK genderPK;
055    private boolean genderPKHasBeenModified = false;
056    private String pronouns;
057    private boolean pronounsHasBeenModified = false;
058    private Integer birthday;
059    private boolean birthdayHasBeenModified = false;
060    private BirthdayFormatPK birthdayFormatPK;
061    private boolean birthdayFormatPKHasBeenModified = false;
062    private String occupation;
063    private boolean occupationHasBeenModified = false;
064    private String hobbies;
065    private boolean hobbiesHasBeenModified = false;
066    private String location;
067    private boolean locationHasBeenModified = false;
068    private MimeTypePK bioMimeTypePK;
069    private boolean bioMimeTypePKHasBeenModified = false;
070    private String bio;
071    private boolean bioHasBeenModified = false;
072    private MimeTypePK signatureMimeTypePK;
073    private boolean signatureMimeTypePKHasBeenModified = false;
074    private String signature;
075    private boolean signatureHasBeenModified = false;
076    private Long fromTime;
077    private boolean fromTimeHasBeenModified = false;
078    private Long thruTime;
079    private boolean thruTimeHasBeenModified = false;
080    
081    private transient Integer _hashCode = null;
082    private transient String _stringValue = null;
083    
084    private void constructFields(PartyPK partyPK, String nickname, IconPK iconPK, String pronunciation, GenderPK genderPK, String pronouns, Integer birthday, BirthdayFormatPK birthdayFormatPK, String occupation, String hobbies, String location, MimeTypePK bioMimeTypePK, String bio, MimeTypePK signatureMimeTypePK, String signature, Long fromTime, Long thruTime)
085            throws PersistenceNotNullException {
086        checkForNull(partyPK);
087        this.partyPK = partyPK;
088        this.nickname = nickname;
089        this.iconPK = iconPK;
090        this.pronunciation = pronunciation;
091        this.genderPK = genderPK;
092        this.pronouns = pronouns;
093        this.birthday = birthday;
094        checkForNull(birthdayFormatPK);
095        this.birthdayFormatPK = birthdayFormatPK;
096        this.occupation = occupation;
097        this.hobbies = hobbies;
098        this.location = location;
099        this.bioMimeTypePK = bioMimeTypePK;
100        this.bio = bio;
101        this.signatureMimeTypePK = signatureMimeTypePK;
102        this.signature = signature;
103        checkForNull(fromTime);
104        this.fromTime = fromTime;
105        checkForNull(thruTime);
106        this.thruTime = thruTime;
107    }
108    
109    /** Creates a new instance of ProfileValue */
110    public ProfileValue(ProfilePK profilePK, PartyPK partyPK, String nickname, IconPK iconPK, String pronunciation, GenderPK genderPK, String pronouns, Integer birthday, BirthdayFormatPK birthdayFormatPK, String occupation, String hobbies, String location, MimeTypePK bioMimeTypePK, String bio, MimeTypePK signatureMimeTypePK, String signature, Long fromTime, Long thruTime)
111            throws PersistenceNotNullException {
112        super(profilePK);
113        constructFields(partyPK, nickname, iconPK, pronunciation, genderPK, pronouns, birthday, birthdayFormatPK, occupation, hobbies, location, bioMimeTypePK, bio, signatureMimeTypePK, signature, fromTime, thruTime);
114    }
115    
116    /** Creates a new instance of ProfileValue */
117    public ProfileValue(PartyPK partyPK, String nickname, IconPK iconPK, String pronunciation, GenderPK genderPK, String pronouns, Integer birthday, BirthdayFormatPK birthdayFormatPK, String occupation, String hobbies, String location, MimeTypePK bioMimeTypePK, String bio, MimeTypePK signatureMimeTypePK, String signature, Long fromTime, Long thruTime)
118            throws PersistenceNotNullException {
119        super();
120        constructFields(partyPK, nickname, iconPK, pronunciation, genderPK, pronouns, birthday, birthdayFormatPK, occupation, hobbies, location, bioMimeTypePK, bio, signatureMimeTypePK, signature, fromTime, thruTime);
121    }
122    
123   @Override
124   public ProfileFactory getBaseFactoryInstance() {
125        return ProfileFactory.getInstance();
126    }
127    
128    @Override
129    public ProfileValue clone() {
130        Object result;
131        
132        try {
133            result = super.clone();
134        } catch (CloneNotSupportedException cnse) {
135            // This shouldn't happen, fail when it does.
136            throw new PersistenceCloneException(cnse);
137        }
138        
139        return (ProfileValue)result;
140    }
141    
142   @Override
143    public ProfilePK getPrimaryKey() {
144        if(_primaryKey == null) {
145            _primaryKey = new ProfilePK(entityId);
146        }
147        
148        return _primaryKey;
149    }
150    
151    private void clearHashAndString() {
152        _hashCode = null;
153        _stringValue = null;
154    }
155    
156    @Override
157    public int hashCode() {
158        if(_hashCode == null) {
159            int hashCode = 17;
160            
161            hashCode = 37 * hashCode + ((entityId != null) ? entityId.hashCode() : 0);
162            
163            hashCode = 37 * hashCode + ((partyPK != null) ? partyPK.hashCode() : 0);
164            hashCode = 37 * hashCode + ((nickname != null) ? nickname.hashCode() : 0);
165            hashCode = 37 * hashCode + ((iconPK != null) ? iconPK.hashCode() : 0);
166            hashCode = 37 * hashCode + ((pronunciation != null) ? pronunciation.hashCode() : 0);
167            hashCode = 37 * hashCode + ((genderPK != null) ? genderPK.hashCode() : 0);
168            hashCode = 37 * hashCode + ((pronouns != null) ? pronouns.hashCode() : 0);
169            hashCode = 37 * hashCode + ((birthday != null) ? birthday.hashCode() : 0);
170            hashCode = 37 * hashCode + ((birthdayFormatPK != null) ? birthdayFormatPK.hashCode() : 0);
171            hashCode = 37 * hashCode + ((occupation != null) ? occupation.hashCode() : 0);
172            hashCode = 37 * hashCode + ((hobbies != null) ? hobbies.hashCode() : 0);
173            hashCode = 37 * hashCode + ((location != null) ? location.hashCode() : 0);
174            hashCode = 37 * hashCode + ((bioMimeTypePK != null) ? bioMimeTypePK.hashCode() : 0);
175            hashCode = 37 * hashCode + ((bio != null) ? bio.hashCode() : 0);
176            hashCode = 37 * hashCode + ((signatureMimeTypePK != null) ? signatureMimeTypePK.hashCode() : 0);
177            hashCode = 37 * hashCode + ((signature != null) ? signature.hashCode() : 0);
178            hashCode = 37 * hashCode + ((fromTime != null) ? fromTime.hashCode() : 0);
179            hashCode = 37 * hashCode + ((thruTime != null) ? thruTime.hashCode() : 0);
180            
181            _hashCode = hashCode;
182        }
183        
184        return _hashCode;
185    }
186    
187    @Override
188    public String toString() {
189        if(_stringValue == null) {
190            StringBuilder stringValue = new StringBuilder("{");
191            
192            stringValue.append("entityId=").append(getEntityId());
193            
194            stringValue.append(", partyPK=").append(getPartyPK());
195            stringValue.append(", nickname=").append(getNickname());
196            stringValue.append(", iconPK=").append(getIconPK());
197            stringValue.append(", pronunciation=").append(getPronunciation());
198            stringValue.append(", genderPK=").append(getGenderPK());
199            stringValue.append(", pronouns=").append(getPronouns());
200            stringValue.append(", birthday=").append(getBirthday());
201            stringValue.append(", birthdayFormatPK=").append(getBirthdayFormatPK());
202            stringValue.append(", occupation=").append(getOccupation());
203            stringValue.append(", hobbies=").append(getHobbies());
204            stringValue.append(", location=").append(getLocation());
205            stringValue.append(", bioMimeTypePK=").append(getBioMimeTypePK());
206            stringValue.append(", bio=").append(getBio());
207            stringValue.append(", signatureMimeTypePK=").append(getSignatureMimeTypePK());
208            stringValue.append(", signature=").append(getSignature());
209            stringValue.append(", fromTime=").append(getFromTime());
210            stringValue.append(", thruTime=").append(getThruTime());
211            
212            stringValue.append('}');
213            
214            _stringValue = stringValue.toString();
215        }
216        return _stringValue;
217    }
218    
219    @Override
220    public boolean equals(Object other) {
221        if(this == other)
222            return true;
223        
224        if(!hasIdentity())
225            return false;
226        
227        if(other instanceof  ProfileValue) {
228            ProfileValue that = (ProfileValue)other;
229            
230            if(!that.hasIdentity())
231                return false;
232            
233            Long thisEntityId = getEntityId();
234            Long thatEntityId = that.getEntityId();
235            
236            boolean objectsEqual = thisEntityId.equals(thatEntityId);
237            if(objectsEqual)
238                objectsEqual = objectsEqual && isIdentical(that);
239            
240            return objectsEqual;
241        } else {
242            return false;
243        }
244    }
245    
246    public boolean isIdentical(Object other) {
247        if(other instanceof ProfileValue) {
248            ProfileValue that = (ProfileValue)other;
249            boolean objectsEqual = true;
250            
251            
252            if(objectsEqual) {
253                PartyPK thisPartyPK = getPartyPK();
254                PartyPK thatPartyPK = that.getPartyPK();
255                
256                if(thisPartyPK == null) {
257                    objectsEqual = objectsEqual && (thatPartyPK == null);
258                } else {
259                    objectsEqual = objectsEqual && thisPartyPK.equals(thatPartyPK);
260                }
261            }
262            
263            if(objectsEqual) {
264                String thisNickname = getNickname();
265                String thatNickname = that.getNickname();
266                
267                if(thisNickname == null) {
268                    objectsEqual = objectsEqual && (thatNickname == null);
269                } else {
270                    objectsEqual = objectsEqual && thisNickname.equals(thatNickname);
271                }
272            }
273            
274            if(objectsEqual) {
275                IconPK thisIconPK = getIconPK();
276                IconPK thatIconPK = that.getIconPK();
277                
278                if(thisIconPK == null) {
279                    objectsEqual = objectsEqual && (thatIconPK == null);
280                } else {
281                    objectsEqual = objectsEqual && thisIconPK.equals(thatIconPK);
282                }
283            }
284            
285            if(objectsEqual) {
286                String thisPronunciation = getPronunciation();
287                String thatPronunciation = that.getPronunciation();
288                
289                if(thisPronunciation == null) {
290                    objectsEqual = objectsEqual && (thatPronunciation == null);
291                } else {
292                    objectsEqual = objectsEqual && thisPronunciation.equals(thatPronunciation);
293                }
294            }
295            
296            if(objectsEqual) {
297                GenderPK thisGenderPK = getGenderPK();
298                GenderPK thatGenderPK = that.getGenderPK();
299                
300                if(thisGenderPK == null) {
301                    objectsEqual = objectsEqual && (thatGenderPK == null);
302                } else {
303                    objectsEqual = objectsEqual && thisGenderPK.equals(thatGenderPK);
304                }
305            }
306            
307            if(objectsEqual) {
308                String thisPronouns = getPronouns();
309                String thatPronouns = that.getPronouns();
310                
311                if(thisPronouns == null) {
312                    objectsEqual = objectsEqual && (thatPronouns == null);
313                } else {
314                    objectsEqual = objectsEqual && thisPronouns.equals(thatPronouns);
315                }
316            }
317            
318            if(objectsEqual) {
319                Integer thisBirthday = getBirthday();
320                Integer thatBirthday = that.getBirthday();
321                
322                if(thisBirthday == null) {
323                    objectsEqual = objectsEqual && (thatBirthday == null);
324                } else {
325                    objectsEqual = objectsEqual && thisBirthday.equals(thatBirthday);
326                }
327            }
328            
329            if(objectsEqual) {
330                BirthdayFormatPK thisBirthdayFormatPK = getBirthdayFormatPK();
331                BirthdayFormatPK thatBirthdayFormatPK = that.getBirthdayFormatPK();
332                
333                if(thisBirthdayFormatPK == null) {
334                    objectsEqual = objectsEqual && (thatBirthdayFormatPK == null);
335                } else {
336                    objectsEqual = objectsEqual && thisBirthdayFormatPK.equals(thatBirthdayFormatPK);
337                }
338            }
339            
340            if(objectsEqual) {
341                String thisOccupation = getOccupation();
342                String thatOccupation = that.getOccupation();
343                
344                if(thisOccupation == null) {
345                    objectsEqual = objectsEqual && (thatOccupation == null);
346                } else {
347                    objectsEqual = objectsEqual && thisOccupation.equals(thatOccupation);
348                }
349            }
350            
351            if(objectsEqual) {
352                String thisHobbies = getHobbies();
353                String thatHobbies = that.getHobbies();
354                
355                if(thisHobbies == null) {
356                    objectsEqual = objectsEqual && (thatHobbies == null);
357                } else {
358                    objectsEqual = objectsEqual && thisHobbies.equals(thatHobbies);
359                }
360            }
361            
362            if(objectsEqual) {
363                String thisLocation = getLocation();
364                String thatLocation = that.getLocation();
365                
366                if(thisLocation == null) {
367                    objectsEqual = objectsEqual && (thatLocation == null);
368                } else {
369                    objectsEqual = objectsEqual && thisLocation.equals(thatLocation);
370                }
371            }
372            
373            if(objectsEqual) {
374                MimeTypePK thisBioMimeTypePK = getBioMimeTypePK();
375                MimeTypePK thatBioMimeTypePK = that.getBioMimeTypePK();
376                
377                if(thisBioMimeTypePK == null) {
378                    objectsEqual = objectsEqual && (thatBioMimeTypePK == null);
379                } else {
380                    objectsEqual = objectsEqual && thisBioMimeTypePK.equals(thatBioMimeTypePK);
381                }
382            }
383            
384            if(objectsEqual) {
385                String thisBio = getBio();
386                String thatBio = that.getBio();
387                
388                if(thisBio == null) {
389                    objectsEqual = objectsEqual && (thatBio == null);
390                } else {
391                    objectsEqual = objectsEqual && thisBio.equals(thatBio);
392                }
393            }
394            
395            if(objectsEqual) {
396                MimeTypePK thisSignatureMimeTypePK = getSignatureMimeTypePK();
397                MimeTypePK thatSignatureMimeTypePK = that.getSignatureMimeTypePK();
398                
399                if(thisSignatureMimeTypePK == null) {
400                    objectsEqual = objectsEqual && (thatSignatureMimeTypePK == null);
401                } else {
402                    objectsEqual = objectsEqual && thisSignatureMimeTypePK.equals(thatSignatureMimeTypePK);
403                }
404            }
405            
406            if(objectsEqual) {
407                String thisSignature = getSignature();
408                String thatSignature = that.getSignature();
409                
410                if(thisSignature == null) {
411                    objectsEqual = objectsEqual && (thatSignature == null);
412                } else {
413                    objectsEqual = objectsEqual && thisSignature.equals(thatSignature);
414                }
415            }
416            
417            if(objectsEqual) {
418                Long thisFromTime = getFromTime();
419                Long thatFromTime = that.getFromTime();
420                
421                if(thisFromTime == null) {
422                    objectsEqual = objectsEqual && (thatFromTime == null);
423                } else {
424                    objectsEqual = objectsEqual && thisFromTime.equals(thatFromTime);
425                }
426            }
427            
428            if(objectsEqual) {
429                Long thisThruTime = getThruTime();
430                Long thatThruTime = that.getThruTime();
431                
432                if(thisThruTime == null) {
433                    objectsEqual = objectsEqual && (thatThruTime == null);
434                } else {
435                    objectsEqual = objectsEqual && thisThruTime.equals(thatThruTime);
436                }
437            }
438            
439            return objectsEqual;
440        } else {
441            return false;
442        }
443    }
444    
445    @Override
446    public boolean hasBeenModified() {
447        return partyPKHasBeenModified || nicknameHasBeenModified || iconPKHasBeenModified || pronunciationHasBeenModified || genderPKHasBeenModified || pronounsHasBeenModified || birthdayHasBeenModified || birthdayFormatPKHasBeenModified || occupationHasBeenModified || hobbiesHasBeenModified || locationHasBeenModified || bioMimeTypePKHasBeenModified || bioHasBeenModified || signatureMimeTypePKHasBeenModified || signatureHasBeenModified || fromTimeHasBeenModified || thruTimeHasBeenModified;
448    }
449    
450    @Override
451    public void clearHasBeenModified() {
452        partyPKHasBeenModified = false;
453        nicknameHasBeenModified = false;
454        iconPKHasBeenModified = false;
455        pronunciationHasBeenModified = false;
456        genderPKHasBeenModified = false;
457        pronounsHasBeenModified = false;
458        birthdayHasBeenModified = false;
459        birthdayFormatPKHasBeenModified = false;
460        occupationHasBeenModified = false;
461        hobbiesHasBeenModified = false;
462        locationHasBeenModified = false;
463        bioMimeTypePKHasBeenModified = false;
464        bioHasBeenModified = false;
465        signatureMimeTypePKHasBeenModified = false;
466        signatureHasBeenModified = false;
467        fromTimeHasBeenModified = false;
468        thruTimeHasBeenModified = false;
469    }
470    
471    public PartyPK getPartyPK() {
472        return partyPK;
473    }
474    
475    public void setPartyPK(PartyPK partyPK)
476            throws PersistenceNotNullException {
477        checkForNull(partyPK);
478        
479        boolean update = true;
480        
481        if(this.partyPK != null) {
482            if(this.partyPK.equals(partyPK)) {
483                update = false;
484            }
485        } else if(partyPK == null) {
486            update = false;
487        }
488        
489        if(update) {
490            this.partyPK = partyPK;
491            partyPKHasBeenModified = true;
492            clearHashAndString();
493        }
494    }
495    
496    public boolean getPartyPKHasBeenModified() {
497        return partyPKHasBeenModified;
498    }
499    
500    public String getNickname() {
501        return nickname;
502    }
503    
504    public void setNickname(String nickname) {
505        boolean update = true;
506        
507        if(this.nickname != null) {
508            if(this.nickname.equals(nickname)) {
509                update = false;
510            }
511        } else if(nickname == null) {
512            update = false;
513        }
514        
515        if(update) {
516            this.nickname = nickname;
517            nicknameHasBeenModified = true;
518            clearHashAndString();
519        }
520    }
521    
522    public boolean getNicknameHasBeenModified() {
523        return nicknameHasBeenModified;
524    }
525    
526    public IconPK getIconPK() {
527        return iconPK;
528    }
529    
530    public void setIconPK(IconPK iconPK) {
531        boolean update = true;
532        
533        if(this.iconPK != null) {
534            if(this.iconPK.equals(iconPK)) {
535                update = false;
536            }
537        } else if(iconPK == null) {
538            update = false;
539        }
540        
541        if(update) {
542            this.iconPK = iconPK;
543            iconPKHasBeenModified = true;
544            clearHashAndString();
545        }
546    }
547    
548    public boolean getIconPKHasBeenModified() {
549        return iconPKHasBeenModified;
550    }
551    
552    public String getPronunciation() {
553        return pronunciation;
554    }
555    
556    public void setPronunciation(String pronunciation) {
557        boolean update = true;
558        
559        if(this.pronunciation != null) {
560            if(this.pronunciation.equals(pronunciation)) {
561                update = false;
562            }
563        } else if(pronunciation == null) {
564            update = false;
565        }
566        
567        if(update) {
568            this.pronunciation = pronunciation;
569            pronunciationHasBeenModified = true;
570            clearHashAndString();
571        }
572    }
573    
574    public boolean getPronunciationHasBeenModified() {
575        return pronunciationHasBeenModified;
576    }
577    
578    public GenderPK getGenderPK() {
579        return genderPK;
580    }
581    
582    public void setGenderPK(GenderPK genderPK) {
583        boolean update = true;
584        
585        if(this.genderPK != null) {
586            if(this.genderPK.equals(genderPK)) {
587                update = false;
588            }
589        } else if(genderPK == null) {
590            update = false;
591        }
592        
593        if(update) {
594            this.genderPK = genderPK;
595            genderPKHasBeenModified = true;
596            clearHashAndString();
597        }
598    }
599    
600    public boolean getGenderPKHasBeenModified() {
601        return genderPKHasBeenModified;
602    }
603    
604    public String getPronouns() {
605        return pronouns;
606    }
607    
608    public void setPronouns(String pronouns) {
609        boolean update = true;
610        
611        if(this.pronouns != null) {
612            if(this.pronouns.equals(pronouns)) {
613                update = false;
614            }
615        } else if(pronouns == null) {
616            update = false;
617        }
618        
619        if(update) {
620            this.pronouns = pronouns;
621            pronounsHasBeenModified = true;
622            clearHashAndString();
623        }
624    }
625    
626    public boolean getPronounsHasBeenModified() {
627        return pronounsHasBeenModified;
628    }
629    
630    public Integer getBirthday() {
631        return birthday;
632    }
633    
634    public void setBirthday(Integer birthday) {
635        boolean update = true;
636        
637        if(this.birthday != null) {
638            if(this.birthday.equals(birthday)) {
639                update = false;
640            }
641        } else if(birthday == null) {
642            update = false;
643        }
644        
645        if(update) {
646            this.birthday = birthday;
647            birthdayHasBeenModified = true;
648            clearHashAndString();
649        }
650    }
651    
652    public boolean getBirthdayHasBeenModified() {
653        return birthdayHasBeenModified;
654    }
655    
656    public BirthdayFormatPK getBirthdayFormatPK() {
657        return birthdayFormatPK;
658    }
659    
660    public void setBirthdayFormatPK(BirthdayFormatPK birthdayFormatPK)
661            throws PersistenceNotNullException {
662        checkForNull(birthdayFormatPK);
663        
664        boolean update = true;
665        
666        if(this.birthdayFormatPK != null) {
667            if(this.birthdayFormatPK.equals(birthdayFormatPK)) {
668                update = false;
669            }
670        } else if(birthdayFormatPK == null) {
671            update = false;
672        }
673        
674        if(update) {
675            this.birthdayFormatPK = birthdayFormatPK;
676            birthdayFormatPKHasBeenModified = true;
677            clearHashAndString();
678        }
679    }
680    
681    public boolean getBirthdayFormatPKHasBeenModified() {
682        return birthdayFormatPKHasBeenModified;
683    }
684    
685    public String getOccupation() {
686        return occupation;
687    }
688    
689    public void setOccupation(String occupation) {
690        boolean update = true;
691        
692        if(this.occupation != null) {
693            if(this.occupation.equals(occupation)) {
694                update = false;
695            }
696        } else if(occupation == null) {
697            update = false;
698        }
699        
700        if(update) {
701            this.occupation = occupation;
702            occupationHasBeenModified = true;
703            clearHashAndString();
704        }
705    }
706    
707    public boolean getOccupationHasBeenModified() {
708        return occupationHasBeenModified;
709    }
710    
711    public String getHobbies() {
712        return hobbies;
713    }
714    
715    public void setHobbies(String hobbies) {
716        boolean update = true;
717        
718        if(this.hobbies != null) {
719            if(this.hobbies.equals(hobbies)) {
720                update = false;
721            }
722        } else if(hobbies == null) {
723            update = false;
724        }
725        
726        if(update) {
727            this.hobbies = hobbies;
728            hobbiesHasBeenModified = true;
729            clearHashAndString();
730        }
731    }
732    
733    public boolean getHobbiesHasBeenModified() {
734        return hobbiesHasBeenModified;
735    }
736    
737    public String getLocation() {
738        return location;
739    }
740    
741    public void setLocation(String location) {
742        boolean update = true;
743        
744        if(this.location != null) {
745            if(this.location.equals(location)) {
746                update = false;
747            }
748        } else if(location == null) {
749            update = false;
750        }
751        
752        if(update) {
753            this.location = location;
754            locationHasBeenModified = true;
755            clearHashAndString();
756        }
757    }
758    
759    public boolean getLocationHasBeenModified() {
760        return locationHasBeenModified;
761    }
762    
763    public MimeTypePK getBioMimeTypePK() {
764        return bioMimeTypePK;
765    }
766    
767    public void setBioMimeTypePK(MimeTypePK bioMimeTypePK) {
768        boolean update = true;
769        
770        if(this.bioMimeTypePK != null) {
771            if(this.bioMimeTypePK.equals(bioMimeTypePK)) {
772                update = false;
773            }
774        } else if(bioMimeTypePK == null) {
775            update = false;
776        }
777        
778        if(update) {
779            this.bioMimeTypePK = bioMimeTypePK;
780            bioMimeTypePKHasBeenModified = true;
781            clearHashAndString();
782        }
783    }
784    
785    public boolean getBioMimeTypePKHasBeenModified() {
786        return bioMimeTypePKHasBeenModified;
787    }
788    
789    public String getBio() {
790        return bio;
791    }
792    
793    public void setBio(String bio) {
794        boolean update = true;
795        
796        if(this.bio != null) {
797            if(this.bio.equals(bio)) {
798                update = false;
799            }
800        } else if(bio == null) {
801            update = false;
802        }
803        
804        if(update) {
805            this.bio = bio;
806            bioHasBeenModified = true;
807            clearHashAndString();
808        }
809    }
810    
811    public boolean getBioHasBeenModified() {
812        return bioHasBeenModified;
813    }
814    
815    public MimeTypePK getSignatureMimeTypePK() {
816        return signatureMimeTypePK;
817    }
818    
819    public void setSignatureMimeTypePK(MimeTypePK signatureMimeTypePK) {
820        boolean update = true;
821        
822        if(this.signatureMimeTypePK != null) {
823            if(this.signatureMimeTypePK.equals(signatureMimeTypePK)) {
824                update = false;
825            }
826        } else if(signatureMimeTypePK == null) {
827            update = false;
828        }
829        
830        if(update) {
831            this.signatureMimeTypePK = signatureMimeTypePK;
832            signatureMimeTypePKHasBeenModified = true;
833            clearHashAndString();
834        }
835    }
836    
837    public boolean getSignatureMimeTypePKHasBeenModified() {
838        return signatureMimeTypePKHasBeenModified;
839    }
840    
841    public String getSignature() {
842        return signature;
843    }
844    
845    public void setSignature(String signature) {
846        boolean update = true;
847        
848        if(this.signature != null) {
849            if(this.signature.equals(signature)) {
850                update = false;
851            }
852        } else if(signature == null) {
853            update = false;
854        }
855        
856        if(update) {
857            this.signature = signature;
858            signatureHasBeenModified = true;
859            clearHashAndString();
860        }
861    }
862    
863    public boolean getSignatureHasBeenModified() {
864        return signatureHasBeenModified;
865    }
866    
867    public Long getFromTime() {
868        return fromTime;
869    }
870    
871    public void setFromTime(Long fromTime)
872            throws PersistenceNotNullException {
873        checkForNull(fromTime);
874        
875        boolean update = true;
876        
877        if(this.fromTime != null) {
878            if(this.fromTime.equals(fromTime)) {
879                update = false;
880            }
881        } else if(fromTime == null) {
882            update = false;
883        }
884        
885        if(update) {
886            this.fromTime = fromTime;
887            fromTimeHasBeenModified = true;
888            clearHashAndString();
889        }
890    }
891    
892    public boolean getFromTimeHasBeenModified() {
893        return fromTimeHasBeenModified;
894    }
895    
896    public Long getThruTime() {
897        return thruTime;
898    }
899    
900    public void setThruTime(Long thruTime)
901            throws PersistenceNotNullException {
902        checkForNull(thruTime);
903        
904        boolean update = true;
905        
906        if(this.thruTime != null) {
907            if(this.thruTime.equals(thruTime)) {
908                update = false;
909            }
910        } else if(thruTime == null) {
911            update = false;
912        }
913        
914        if(update) {
915            this.thruTime = thruTime;
916            thruTimeHasBeenModified = true;
917            clearHashAndString();
918        }
919    }
920    
921    public boolean getThruTimeHasBeenModified() {
922        return thruTimeHasBeenModified;
923    }
924    
925}