001// --------------------------------------------------------------------------------
002// Copyright 2002-2025 Echo Three, LLC
003//
004// Licensed under the Apache License, Version 2.0 (the "License");
005// you may not use this file except in compliance with the License.
006// You may obtain a copy of the License at
007//
008//     http://www.apache.org/licenses/LICENSE-2.0
009//
010// Unless required by applicable law or agreed to in writing, software
011// distributed under the License is distributed on an "AS IS" BASIS,
012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013// See the License for the specific language governing permissions and
014// limitations under the License.
015// --------------------------------------------------------------------------------
016// Generated File -- DO NOT EDIT BY HAND
017// --------------------------------------------------------------------------------
018
019/**
020 * 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            _stringValue = "{" + 
191                    "entityId=" + getEntityId() +
192                    ", partyPK=" + getPartyPK() +
193                    ", nickname=" + getNickname() +
194                    ", iconPK=" + getIconPK() +
195                    ", pronunciation=" + getPronunciation() +
196                    ", genderPK=" + getGenderPK() +
197                    ", pronouns=" + getPronouns() +
198                    ", birthday=" + getBirthday() +
199                    ", birthdayFormatPK=" + getBirthdayFormatPK() +
200                    ", occupation=" + getOccupation() +
201                    ", hobbies=" + getHobbies() +
202                    ", location=" + getLocation() +
203                    ", bioMimeTypePK=" + getBioMimeTypePK() +
204                    ", bio=" + getBio() +
205                    ", signatureMimeTypePK=" + getSignatureMimeTypePK() +
206                    ", signature=" + getSignature() +
207                    ", fromTime=" + getFromTime() +
208                    ", thruTime=" + getThruTime() +
209                    "}";
210        }
211        return _stringValue;
212    }
213    
214    @Override
215    public boolean equals(Object other) {
216        if(this == other)
217            return true;
218        
219        if(!hasIdentity())
220            return false;
221        
222        if(other instanceof  ProfileValue that) {
223            if(!that.hasIdentity())
224                return false;
225            
226            Long thisEntityId = getEntityId();
227            Long thatEntityId = that.getEntityId();
228            
229            boolean objectsEqual = thisEntityId.equals(thatEntityId);
230            if(objectsEqual)
231                objectsEqual = isIdentical(that);
232            
233            return objectsEqual;
234        } else {
235            return false;
236        }
237    }
238    
239    public boolean isIdentical(Object other) {
240        if(other instanceof ProfileValue that) {
241            boolean objectsEqual = true;
242            
243            
244            if(objectsEqual) {
245                PartyPK thisPartyPK = getPartyPK();
246                PartyPK thatPartyPK = that.getPartyPK();
247                
248                if(thisPartyPK == null) {
249                    objectsEqual = objectsEqual && (thatPartyPK == null);
250                } else {
251                    objectsEqual = objectsEqual && thisPartyPK.equals(thatPartyPK);
252                }
253            }
254            
255            if(objectsEqual) {
256                String thisNickname = getNickname();
257                String thatNickname = that.getNickname();
258                
259                if(thisNickname == null) {
260                    objectsEqual = objectsEqual && (thatNickname == null);
261                } else {
262                    objectsEqual = objectsEqual && thisNickname.equals(thatNickname);
263                }
264            }
265            
266            if(objectsEqual) {
267                IconPK thisIconPK = getIconPK();
268                IconPK thatIconPK = that.getIconPK();
269                
270                if(thisIconPK == null) {
271                    objectsEqual = objectsEqual && (thatIconPK == null);
272                } else {
273                    objectsEqual = objectsEqual && thisIconPK.equals(thatIconPK);
274                }
275            }
276            
277            if(objectsEqual) {
278                String thisPronunciation = getPronunciation();
279                String thatPronunciation = that.getPronunciation();
280                
281                if(thisPronunciation == null) {
282                    objectsEqual = objectsEqual && (thatPronunciation == null);
283                } else {
284                    objectsEqual = objectsEqual && thisPronunciation.equals(thatPronunciation);
285                }
286            }
287            
288            if(objectsEqual) {
289                GenderPK thisGenderPK = getGenderPK();
290                GenderPK thatGenderPK = that.getGenderPK();
291                
292                if(thisGenderPK == null) {
293                    objectsEqual = objectsEqual && (thatGenderPK == null);
294                } else {
295                    objectsEqual = objectsEqual && thisGenderPK.equals(thatGenderPK);
296                }
297            }
298            
299            if(objectsEqual) {
300                String thisPronouns = getPronouns();
301                String thatPronouns = that.getPronouns();
302                
303                if(thisPronouns == null) {
304                    objectsEqual = objectsEqual && (thatPronouns == null);
305                } else {
306                    objectsEqual = objectsEqual && thisPronouns.equals(thatPronouns);
307                }
308            }
309            
310            if(objectsEqual) {
311                Integer thisBirthday = getBirthday();
312                Integer thatBirthday = that.getBirthday();
313                
314                if(thisBirthday == null) {
315                    objectsEqual = objectsEqual && (thatBirthday == null);
316                } else {
317                    objectsEqual = objectsEqual && thisBirthday.equals(thatBirthday);
318                }
319            }
320            
321            if(objectsEqual) {
322                BirthdayFormatPK thisBirthdayFormatPK = getBirthdayFormatPK();
323                BirthdayFormatPK thatBirthdayFormatPK = that.getBirthdayFormatPK();
324                
325                if(thisBirthdayFormatPK == null) {
326                    objectsEqual = objectsEqual && (thatBirthdayFormatPK == null);
327                } else {
328                    objectsEqual = objectsEqual && thisBirthdayFormatPK.equals(thatBirthdayFormatPK);
329                }
330            }
331            
332            if(objectsEqual) {
333                String thisOccupation = getOccupation();
334                String thatOccupation = that.getOccupation();
335                
336                if(thisOccupation == null) {
337                    objectsEqual = objectsEqual && (thatOccupation == null);
338                } else {
339                    objectsEqual = objectsEqual && thisOccupation.equals(thatOccupation);
340                }
341            }
342            
343            if(objectsEqual) {
344                String thisHobbies = getHobbies();
345                String thatHobbies = that.getHobbies();
346                
347                if(thisHobbies == null) {
348                    objectsEqual = objectsEqual && (thatHobbies == null);
349                } else {
350                    objectsEqual = objectsEqual && thisHobbies.equals(thatHobbies);
351                }
352            }
353            
354            if(objectsEqual) {
355                String thisLocation = getLocation();
356                String thatLocation = that.getLocation();
357                
358                if(thisLocation == null) {
359                    objectsEqual = objectsEqual && (thatLocation == null);
360                } else {
361                    objectsEqual = objectsEqual && thisLocation.equals(thatLocation);
362                }
363            }
364            
365            if(objectsEqual) {
366                MimeTypePK thisBioMimeTypePK = getBioMimeTypePK();
367                MimeTypePK thatBioMimeTypePK = that.getBioMimeTypePK();
368                
369                if(thisBioMimeTypePK == null) {
370                    objectsEqual = objectsEqual && (thatBioMimeTypePK == null);
371                } else {
372                    objectsEqual = objectsEqual && thisBioMimeTypePK.equals(thatBioMimeTypePK);
373                }
374            }
375            
376            if(objectsEqual) {
377                String thisBio = getBio();
378                String thatBio = that.getBio();
379                
380                if(thisBio == null) {
381                    objectsEqual = objectsEqual && (thatBio == null);
382                } else {
383                    objectsEqual = objectsEqual && thisBio.equals(thatBio);
384                }
385            }
386            
387            if(objectsEqual) {
388                MimeTypePK thisSignatureMimeTypePK = getSignatureMimeTypePK();
389                MimeTypePK thatSignatureMimeTypePK = that.getSignatureMimeTypePK();
390                
391                if(thisSignatureMimeTypePK == null) {
392                    objectsEqual = objectsEqual && (thatSignatureMimeTypePK == null);
393                } else {
394                    objectsEqual = objectsEqual && thisSignatureMimeTypePK.equals(thatSignatureMimeTypePK);
395                }
396            }
397            
398            if(objectsEqual) {
399                String thisSignature = getSignature();
400                String thatSignature = that.getSignature();
401                
402                if(thisSignature == null) {
403                    objectsEqual = objectsEqual && (thatSignature == null);
404                } else {
405                    objectsEqual = objectsEqual && thisSignature.equals(thatSignature);
406                }
407            }
408            
409            if(objectsEqual) {
410                Long thisFromTime = getFromTime();
411                Long thatFromTime = that.getFromTime();
412                
413                if(thisFromTime == null) {
414                    objectsEqual = objectsEqual && (thatFromTime == null);
415                } else {
416                    objectsEqual = objectsEqual && thisFromTime.equals(thatFromTime);
417                }
418            }
419            
420            if(objectsEqual) {
421                Long thisThruTime = getThruTime();
422                Long thatThruTime = that.getThruTime();
423                
424                if(thisThruTime == null) {
425                    objectsEqual = objectsEqual && (thatThruTime == null);
426                } else {
427                    objectsEqual = objectsEqual && thisThruTime.equals(thatThruTime);
428                }
429            }
430            
431            return objectsEqual;
432        } else {
433            return false;
434        }
435    }
436    
437    @Override
438    public boolean hasBeenModified() {
439        return partyPKHasBeenModified || nicknameHasBeenModified || iconPKHasBeenModified || pronunciationHasBeenModified || genderPKHasBeenModified || pronounsHasBeenModified || birthdayHasBeenModified || birthdayFormatPKHasBeenModified || occupationHasBeenModified || hobbiesHasBeenModified || locationHasBeenModified || bioMimeTypePKHasBeenModified || bioHasBeenModified || signatureMimeTypePKHasBeenModified || signatureHasBeenModified || fromTimeHasBeenModified || thruTimeHasBeenModified;
440    }
441    
442    @Override
443    public void clearHasBeenModified() {
444        partyPKHasBeenModified = false;
445        nicknameHasBeenModified = false;
446        iconPKHasBeenModified = false;
447        pronunciationHasBeenModified = false;
448        genderPKHasBeenModified = false;
449        pronounsHasBeenModified = false;
450        birthdayHasBeenModified = false;
451        birthdayFormatPKHasBeenModified = false;
452        occupationHasBeenModified = false;
453        hobbiesHasBeenModified = false;
454        locationHasBeenModified = false;
455        bioMimeTypePKHasBeenModified = false;
456        bioHasBeenModified = false;
457        signatureMimeTypePKHasBeenModified = false;
458        signatureHasBeenModified = false;
459        fromTimeHasBeenModified = false;
460        thruTimeHasBeenModified = false;
461    }
462    
463    public PartyPK getPartyPK() {
464        return partyPK;
465    }
466    
467    public void setPartyPK(PartyPK partyPK)
468            throws PersistenceNotNullException {
469        checkForNull(partyPK);
470        
471        boolean update = true;
472        
473        if(this.partyPK != null) {
474            if(this.partyPK.equals(partyPK)) {
475                update = false;
476            }
477        } else if(partyPK == null) {
478            update = false;
479        }
480        
481        if(update) {
482            this.partyPK = partyPK;
483            partyPKHasBeenModified = true;
484            clearHashAndString();
485        }
486    }
487    
488    public boolean getPartyPKHasBeenModified() {
489        return partyPKHasBeenModified;
490    }
491    
492    public String getNickname() {
493        return nickname;
494    }
495    
496    public void setNickname(String nickname) {
497        boolean update = true;
498        
499        if(this.nickname != null) {
500            if(this.nickname.equals(nickname)) {
501                update = false;
502            }
503        } else if(nickname == null) {
504            update = false;
505        }
506        
507        if(update) {
508            this.nickname = nickname;
509            nicknameHasBeenModified = true;
510            clearHashAndString();
511        }
512    }
513    
514    public boolean getNicknameHasBeenModified() {
515        return nicknameHasBeenModified;
516    }
517    
518    public IconPK getIconPK() {
519        return iconPK;
520    }
521    
522    public void setIconPK(IconPK iconPK) {
523        boolean update = true;
524        
525        if(this.iconPK != null) {
526            if(this.iconPK.equals(iconPK)) {
527                update = false;
528            }
529        } else if(iconPK == null) {
530            update = false;
531        }
532        
533        if(update) {
534            this.iconPK = iconPK;
535            iconPKHasBeenModified = true;
536            clearHashAndString();
537        }
538    }
539    
540    public boolean getIconPKHasBeenModified() {
541        return iconPKHasBeenModified;
542    }
543    
544    public String getPronunciation() {
545        return pronunciation;
546    }
547    
548    public void setPronunciation(String pronunciation) {
549        boolean update = true;
550        
551        if(this.pronunciation != null) {
552            if(this.pronunciation.equals(pronunciation)) {
553                update = false;
554            }
555        } else if(pronunciation == null) {
556            update = false;
557        }
558        
559        if(update) {
560            this.pronunciation = pronunciation;
561            pronunciationHasBeenModified = true;
562            clearHashAndString();
563        }
564    }
565    
566    public boolean getPronunciationHasBeenModified() {
567        return pronunciationHasBeenModified;
568    }
569    
570    public GenderPK getGenderPK() {
571        return genderPK;
572    }
573    
574    public void setGenderPK(GenderPK genderPK) {
575        boolean update = true;
576        
577        if(this.genderPK != null) {
578            if(this.genderPK.equals(genderPK)) {
579                update = false;
580            }
581        } else if(genderPK == null) {
582            update = false;
583        }
584        
585        if(update) {
586            this.genderPK = genderPK;
587            genderPKHasBeenModified = true;
588            clearHashAndString();
589        }
590    }
591    
592    public boolean getGenderPKHasBeenModified() {
593        return genderPKHasBeenModified;
594    }
595    
596    public String getPronouns() {
597        return pronouns;
598    }
599    
600    public void setPronouns(String pronouns) {
601        boolean update = true;
602        
603        if(this.pronouns != null) {
604            if(this.pronouns.equals(pronouns)) {
605                update = false;
606            }
607        } else if(pronouns == null) {
608            update = false;
609        }
610        
611        if(update) {
612            this.pronouns = pronouns;
613            pronounsHasBeenModified = true;
614            clearHashAndString();
615        }
616    }
617    
618    public boolean getPronounsHasBeenModified() {
619        return pronounsHasBeenModified;
620    }
621    
622    public Integer getBirthday() {
623        return birthday;
624    }
625    
626    public void setBirthday(Integer birthday) {
627        boolean update = true;
628        
629        if(this.birthday != null) {
630            if(this.birthday.equals(birthday)) {
631                update = false;
632            }
633        } else if(birthday == null) {
634            update = false;
635        }
636        
637        if(update) {
638            this.birthday = birthday;
639            birthdayHasBeenModified = true;
640            clearHashAndString();
641        }
642    }
643    
644    public boolean getBirthdayHasBeenModified() {
645        return birthdayHasBeenModified;
646    }
647    
648    public BirthdayFormatPK getBirthdayFormatPK() {
649        return birthdayFormatPK;
650    }
651    
652    public void setBirthdayFormatPK(BirthdayFormatPK birthdayFormatPK)
653            throws PersistenceNotNullException {
654        checkForNull(birthdayFormatPK);
655        
656        boolean update = true;
657        
658        if(this.birthdayFormatPK != null) {
659            if(this.birthdayFormatPK.equals(birthdayFormatPK)) {
660                update = false;
661            }
662        } else if(birthdayFormatPK == null) {
663            update = false;
664        }
665        
666        if(update) {
667            this.birthdayFormatPK = birthdayFormatPK;
668            birthdayFormatPKHasBeenModified = true;
669            clearHashAndString();
670        }
671    }
672    
673    public boolean getBirthdayFormatPKHasBeenModified() {
674        return birthdayFormatPKHasBeenModified;
675    }
676    
677    public String getOccupation() {
678        return occupation;
679    }
680    
681    public void setOccupation(String occupation) {
682        boolean update = true;
683        
684        if(this.occupation != null) {
685            if(this.occupation.equals(occupation)) {
686                update = false;
687            }
688        } else if(occupation == null) {
689            update = false;
690        }
691        
692        if(update) {
693            this.occupation = occupation;
694            occupationHasBeenModified = true;
695            clearHashAndString();
696        }
697    }
698    
699    public boolean getOccupationHasBeenModified() {
700        return occupationHasBeenModified;
701    }
702    
703    public String getHobbies() {
704        return hobbies;
705    }
706    
707    public void setHobbies(String hobbies) {
708        boolean update = true;
709        
710        if(this.hobbies != null) {
711            if(this.hobbies.equals(hobbies)) {
712                update = false;
713            }
714        } else if(hobbies == null) {
715            update = false;
716        }
717        
718        if(update) {
719            this.hobbies = hobbies;
720            hobbiesHasBeenModified = true;
721            clearHashAndString();
722        }
723    }
724    
725    public boolean getHobbiesHasBeenModified() {
726        return hobbiesHasBeenModified;
727    }
728    
729    public String getLocation() {
730        return location;
731    }
732    
733    public void setLocation(String location) {
734        boolean update = true;
735        
736        if(this.location != null) {
737            if(this.location.equals(location)) {
738                update = false;
739            }
740        } else if(location == null) {
741            update = false;
742        }
743        
744        if(update) {
745            this.location = location;
746            locationHasBeenModified = true;
747            clearHashAndString();
748        }
749    }
750    
751    public boolean getLocationHasBeenModified() {
752        return locationHasBeenModified;
753    }
754    
755    public MimeTypePK getBioMimeTypePK() {
756        return bioMimeTypePK;
757    }
758    
759    public void setBioMimeTypePK(MimeTypePK bioMimeTypePK) {
760        boolean update = true;
761        
762        if(this.bioMimeTypePK != null) {
763            if(this.bioMimeTypePK.equals(bioMimeTypePK)) {
764                update = false;
765            }
766        } else if(bioMimeTypePK == null) {
767            update = false;
768        }
769        
770        if(update) {
771            this.bioMimeTypePK = bioMimeTypePK;
772            bioMimeTypePKHasBeenModified = true;
773            clearHashAndString();
774        }
775    }
776    
777    public boolean getBioMimeTypePKHasBeenModified() {
778        return bioMimeTypePKHasBeenModified;
779    }
780    
781    public String getBio() {
782        return bio;
783    }
784    
785    public void setBio(String bio) {
786        boolean update = true;
787        
788        if(this.bio != null) {
789            if(this.bio.equals(bio)) {
790                update = false;
791            }
792        } else if(bio == null) {
793            update = false;
794        }
795        
796        if(update) {
797            this.bio = bio;
798            bioHasBeenModified = true;
799            clearHashAndString();
800        }
801    }
802    
803    public boolean getBioHasBeenModified() {
804        return bioHasBeenModified;
805    }
806    
807    public MimeTypePK getSignatureMimeTypePK() {
808        return signatureMimeTypePK;
809    }
810    
811    public void setSignatureMimeTypePK(MimeTypePK signatureMimeTypePK) {
812        boolean update = true;
813        
814        if(this.signatureMimeTypePK != null) {
815            if(this.signatureMimeTypePK.equals(signatureMimeTypePK)) {
816                update = false;
817            }
818        } else if(signatureMimeTypePK == null) {
819            update = false;
820        }
821        
822        if(update) {
823            this.signatureMimeTypePK = signatureMimeTypePK;
824            signatureMimeTypePKHasBeenModified = true;
825            clearHashAndString();
826        }
827    }
828    
829    public boolean getSignatureMimeTypePKHasBeenModified() {
830        return signatureMimeTypePKHasBeenModified;
831    }
832    
833    public String getSignature() {
834        return signature;
835    }
836    
837    public void setSignature(String signature) {
838        boolean update = true;
839        
840        if(this.signature != null) {
841            if(this.signature.equals(signature)) {
842                update = false;
843            }
844        } else if(signature == null) {
845            update = false;
846        }
847        
848        if(update) {
849            this.signature = signature;
850            signatureHasBeenModified = true;
851            clearHashAndString();
852        }
853    }
854    
855    public boolean getSignatureHasBeenModified() {
856        return signatureHasBeenModified;
857    }
858    
859    public Long getFromTime() {
860        return fromTime;
861    }
862    
863    public void setFromTime(Long fromTime)
864            throws PersistenceNotNullException {
865        checkForNull(fromTime);
866        
867        boolean update = true;
868        
869        if(this.fromTime != null) {
870            if(this.fromTime.equals(fromTime)) {
871                update = false;
872            }
873        } else if(fromTime == null) {
874            update = false;
875        }
876        
877        if(update) {
878            this.fromTime = fromTime;
879            fromTimeHasBeenModified = true;
880            clearHashAndString();
881        }
882    }
883    
884    public boolean getFromTimeHasBeenModified() {
885        return fromTimeHasBeenModified;
886    }
887    
888    public Long getThruTime() {
889        return thruTime;
890    }
891    
892    public void setThruTime(Long thruTime)
893            throws PersistenceNotNullException {
894        checkForNull(thruTime);
895        
896        boolean update = true;
897        
898        if(this.thruTime != null) {
899            if(this.thruTime.equals(thruTime)) {
900                update = false;
901            }
902        } else if(thruTime == null) {
903            update = false;
904        }
905        
906        if(update) {
907            this.thruTime = thruTime;
908            thruTimeHasBeenModified = true;
909            clearHashAndString();
910        }
911    }
912    
913    public boolean getThruTimeHasBeenModified() {
914        return thruTimeHasBeenModified;
915    }
916    
917}