001// -------------------------------------------------------------------------------- 002// Copyright 2002-2026 Echo Three, LLC 003// 004// Licensed under the Apache License, Version 2.0 (the "License"); 005// you may not use this file except in compliance with the License. 006// You may obtain a copy of the License at 007// 008// http://www.apache.org/licenses/LICENSE-2.0 009// 010// Unless required by applicable law or agreed to in writing, software 011// distributed under the License is distributed on an "AS IS" BASIS, 012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013// See the License for the specific language governing permissions and 014// limitations under the License. 015// -------------------------------------------------------------------------------- 016// Generated File -- DO NOT EDIT BY HAND 017// -------------------------------------------------------------------------------- 018 019/** 020 * PartyDetail.java 021 */ 022 023package com.echothree.model.data.party.server.entity; 024 025import com.echothree.model.data.party.common.pk.PartyDetailPK; 026 027import com.echothree.model.data.party.common.pk.PartyPK; 028import com.echothree.model.data.party.common.pk.PartyTypePK; 029import com.echothree.model.data.party.common.pk.LanguagePK; 030import com.echothree.model.data.accounting.common.pk.CurrencyPK; 031import com.echothree.model.data.party.common.pk.TimeZonePK; 032import com.echothree.model.data.party.common.pk.DateTimeFormatPK; 033 034import com.echothree.model.data.party.server.entity.Party; 035import com.echothree.model.data.party.server.entity.PartyType; 036import com.echothree.model.data.party.server.entity.Language; 037import com.echothree.model.data.accounting.server.entity.Currency; 038import com.echothree.model.data.party.server.entity.TimeZone; 039import com.echothree.model.data.party.server.entity.DateTimeFormat; 040 041import com.echothree.model.data.party.server.factory.PartyFactory; 042import com.echothree.model.data.party.server.factory.PartyTypeFactory; 043import com.echothree.model.data.party.server.factory.LanguageFactory; 044import com.echothree.model.data.accounting.server.factory.CurrencyFactory; 045import com.echothree.model.data.party.server.factory.TimeZoneFactory; 046import com.echothree.model.data.party.server.factory.DateTimeFormatFactory; 047 048import com.echothree.model.data.party.common.pk.PartyDetailPK; 049 050import com.echothree.model.data.party.server.value.PartyDetailValue; 051 052import com.echothree.model.data.party.server.factory.PartyDetailFactory; 053 054import com.echothree.util.common.exception.PersistenceException; 055import com.echothree.util.common.exception.PersistenceDatabaseException; 056import com.echothree.util.common.exception.PersistenceNotNullException; 057import com.echothree.util.common.exception.PersistenceReadOnlyException; 058 059import com.echothree.util.common.persistence.BasePK; 060 061import com.echothree.util.common.persistence.type.ByteArray; 062 063import com.echothree.util.server.persistence.BaseEntity; 064import com.echothree.util.server.persistence.EntityPermission; 065import com.echothree.util.server.persistence.Session; 066import com.echothree.util.server.persistence.ThreadSession; 067 068import java.io.Serializable; 069 070import javax.annotation.Nonnull; 071import javax.annotation.Nullable; 072 073public class PartyDetail 074 extends BaseEntity 075 implements Serializable { 076 077 private PartyDetailPK _pk; 078 private PartyDetailValue _value; 079 080 /** Creates a new instance of PartyDetail */ 081 public PartyDetail() 082 throws PersistenceException { 083 super(); 084 } 085 086 /** Creates a new instance of PartyDetail */ 087 public PartyDetail(PartyDetailValue value, EntityPermission entityPermission) { 088 super(entityPermission); 089 090 _value = value; 091 _pk = value.getPrimaryKey(); 092 } 093 094 @Override 095 @Nonnull 096 public PartyDetailFactory getBaseFactoryInstance() { 097 return PartyDetailFactory.getInstance(); 098 } 099 100 @Override 101 public boolean hasBeenModified() { 102 return _value.hasBeenModified(); 103 } 104 105 @Override 106 public int hashCode() { 107 return _pk.hashCode(); 108 } 109 110 @Override 111 @Nonnull 112 public String toString() { 113 return _pk.toString(); 114 } 115 116 @Override 117 public boolean equals(Object other) { 118 if(this == other) 119 return true; 120 121 if(other instanceof PartyDetail that) { 122 PartyDetailValue thatValue = that.getPartyDetailValue(); 123 return _value.equals(thatValue); 124 } else { 125 return false; 126 } 127 } 128 129 @Override 130 public void store() 131 throws PersistenceDatabaseException { 132 getBaseFactoryInstance().store(this); 133 } 134 135 @Override 136 public void remove() 137 throws PersistenceDatabaseException { 138 getBaseFactoryInstance().remove(this); 139 } 140 141 @Nonnull 142 public PartyDetailValue getPartyDetailValue() { 143 return _value; 144 } 145 146 public void setPartyDetailValue(@Nonnull PartyDetailValue value) 147 throws PersistenceReadOnlyException { 148 checkReadWrite(); 149 _value = value; 150 } 151 152 @Override 153 @Nonnull 154 public PartyDetailPK getPrimaryKey() { 155 return _pk; 156 } 157 158 @Nonnull 159 public PartyPK getPartyPK() { 160 return _value.getPartyPK(); 161 } 162 163 @Nonnull 164 public Party getParty(EntityPermission entityPermission) { 165 return PartyFactory.getInstance().getEntityFromPK(entityPermission, getPartyPK()); 166 } 167 168 @Nonnull 169 public Party getParty() { 170 return getParty(EntityPermission.READ_ONLY); 171 } 172 173 @Nonnull 174 public Party getPartyForUpdate() { 175 return getParty(EntityPermission.READ_WRITE); 176 } 177 178 public void setPartyPK(@Nonnull PartyPK partyPK) 179 throws PersistenceNotNullException, PersistenceReadOnlyException { 180 checkReadWrite(); 181 _value.setPartyPK(partyPK); 182 } 183 184 public void setParty(@Nonnull Party entity) { 185 setPartyPK(entity == null ? null : entity.getPrimaryKey()); 186 } 187 188 public boolean getPartyPKHasBeenModified() { 189 return _value.getPartyPKHasBeenModified(); 190 } 191 192 @Nonnull 193 public String getPartyName() { 194 return _value.getPartyName(); 195 } 196 197 public void setPartyName(@Nonnull String partyName) 198 throws PersistenceNotNullException, PersistenceReadOnlyException { 199 checkReadWrite(); 200 _value.setPartyName(partyName); 201 } 202 203 public boolean getPartyNameHasBeenModified() { 204 return _value.getPartyNameHasBeenModified(); 205 } 206 207 @Nonnull 208 public PartyTypePK getPartyTypePK() { 209 return _value.getPartyTypePK(); 210 } 211 212 @Nonnull 213 public PartyType getPartyType(EntityPermission entityPermission) { 214 return PartyTypeFactory.getInstance().getEntityFromPK(entityPermission, getPartyTypePK()); 215 } 216 217 @Nonnull 218 public PartyType getPartyType() { 219 return getPartyType(EntityPermission.READ_ONLY); 220 } 221 222 @Nonnull 223 public PartyType getPartyTypeForUpdate() { 224 return getPartyType(EntityPermission.READ_WRITE); 225 } 226 227 public void setPartyTypePK(@Nonnull PartyTypePK partyTypePK) 228 throws PersistenceNotNullException, PersistenceReadOnlyException { 229 checkReadWrite(); 230 _value.setPartyTypePK(partyTypePK); 231 } 232 233 public void setPartyType(@Nonnull PartyType entity) { 234 setPartyTypePK(entity == null ? null : entity.getPrimaryKey()); 235 } 236 237 public boolean getPartyTypePKHasBeenModified() { 238 return _value.getPartyTypePKHasBeenModified(); 239 } 240 241 @Nullable 242 public LanguagePK getPreferredLanguagePK() { 243 return _value.getPreferredLanguagePK(); 244 } 245 246 @Nullable 247 public Language getPreferredLanguage(EntityPermission entityPermission) { 248 LanguagePK pk = getPreferredLanguagePK(); 249 Language entity = pk == null? null: LanguageFactory.getInstance().getEntityFromPK(entityPermission, pk); 250 251 return entity; 252 } 253 254 @Nullable 255 public Language getPreferredLanguage() { 256 return getPreferredLanguage(EntityPermission.READ_ONLY); 257 } 258 259 @Nullable 260 public Language getPreferredLanguageForUpdate() { 261 return getPreferredLanguage(EntityPermission.READ_WRITE); 262 } 263 264 public void setPreferredLanguagePK(@Nullable LanguagePK preferredLanguagePK) 265 throws PersistenceNotNullException, PersistenceReadOnlyException { 266 checkReadWrite(); 267 _value.setPreferredLanguagePK(preferredLanguagePK); 268 } 269 270 public void setPreferredLanguage(@Nullable Language entity) { 271 setPreferredLanguagePK(entity == null ? null : entity.getPrimaryKey()); 272 } 273 274 public boolean getPreferredLanguagePKHasBeenModified() { 275 return _value.getPreferredLanguagePKHasBeenModified(); 276 } 277 278 @Nullable 279 public CurrencyPK getPreferredCurrencyPK() { 280 return _value.getPreferredCurrencyPK(); 281 } 282 283 @Nullable 284 public Currency getPreferredCurrency(EntityPermission entityPermission) { 285 CurrencyPK pk = getPreferredCurrencyPK(); 286 Currency entity = pk == null? null: CurrencyFactory.getInstance().getEntityFromPK(entityPermission, pk); 287 288 return entity; 289 } 290 291 @Nullable 292 public Currency getPreferredCurrency() { 293 return getPreferredCurrency(EntityPermission.READ_ONLY); 294 } 295 296 @Nullable 297 public Currency getPreferredCurrencyForUpdate() { 298 return getPreferredCurrency(EntityPermission.READ_WRITE); 299 } 300 301 public void setPreferredCurrencyPK(@Nullable CurrencyPK preferredCurrencyPK) 302 throws PersistenceNotNullException, PersistenceReadOnlyException { 303 checkReadWrite(); 304 _value.setPreferredCurrencyPK(preferredCurrencyPK); 305 } 306 307 public void setPreferredCurrency(@Nullable Currency entity) { 308 setPreferredCurrencyPK(entity == null ? null : entity.getPrimaryKey()); 309 } 310 311 public boolean getPreferredCurrencyPKHasBeenModified() { 312 return _value.getPreferredCurrencyPKHasBeenModified(); 313 } 314 315 @Nullable 316 public TimeZonePK getPreferredTimeZonePK() { 317 return _value.getPreferredTimeZonePK(); 318 } 319 320 @Nullable 321 public TimeZone getPreferredTimeZone(EntityPermission entityPermission) { 322 TimeZonePK pk = getPreferredTimeZonePK(); 323 TimeZone entity = pk == null? null: TimeZoneFactory.getInstance().getEntityFromPK(entityPermission, pk); 324 325 return entity; 326 } 327 328 @Nullable 329 public TimeZone getPreferredTimeZone() { 330 return getPreferredTimeZone(EntityPermission.READ_ONLY); 331 } 332 333 @Nullable 334 public TimeZone getPreferredTimeZoneForUpdate() { 335 return getPreferredTimeZone(EntityPermission.READ_WRITE); 336 } 337 338 public void setPreferredTimeZonePK(@Nullable TimeZonePK preferredTimeZonePK) 339 throws PersistenceNotNullException, PersistenceReadOnlyException { 340 checkReadWrite(); 341 _value.setPreferredTimeZonePK(preferredTimeZonePK); 342 } 343 344 public void setPreferredTimeZone(@Nullable TimeZone entity) { 345 setPreferredTimeZonePK(entity == null ? null : entity.getPrimaryKey()); 346 } 347 348 public boolean getPreferredTimeZonePKHasBeenModified() { 349 return _value.getPreferredTimeZonePKHasBeenModified(); 350 } 351 352 @Nullable 353 public DateTimeFormatPK getPreferredDateTimeFormatPK() { 354 return _value.getPreferredDateTimeFormatPK(); 355 } 356 357 @Nullable 358 public DateTimeFormat getPreferredDateTimeFormat(EntityPermission entityPermission) { 359 DateTimeFormatPK pk = getPreferredDateTimeFormatPK(); 360 DateTimeFormat entity = pk == null? null: DateTimeFormatFactory.getInstance().getEntityFromPK(entityPermission, pk); 361 362 return entity; 363 } 364 365 @Nullable 366 public DateTimeFormat getPreferredDateTimeFormat() { 367 return getPreferredDateTimeFormat(EntityPermission.READ_ONLY); 368 } 369 370 @Nullable 371 public DateTimeFormat getPreferredDateTimeFormatForUpdate() { 372 return getPreferredDateTimeFormat(EntityPermission.READ_WRITE); 373 } 374 375 public void setPreferredDateTimeFormatPK(@Nullable DateTimeFormatPK preferredDateTimeFormatPK) 376 throws PersistenceNotNullException, PersistenceReadOnlyException { 377 checkReadWrite(); 378 _value.setPreferredDateTimeFormatPK(preferredDateTimeFormatPK); 379 } 380 381 public void setPreferredDateTimeFormat(@Nullable DateTimeFormat entity) { 382 setPreferredDateTimeFormatPK(entity == null ? null : entity.getPrimaryKey()); 383 } 384 385 public boolean getPreferredDateTimeFormatPKHasBeenModified() { 386 return _value.getPreferredDateTimeFormatPKHasBeenModified(); 387 } 388 389 @Nonnull 390 public Long getFromTime() { 391 return _value.getFromTime(); 392 } 393 394 public void setFromTime(@Nonnull Long fromTime) 395 throws PersistenceNotNullException, PersistenceReadOnlyException { 396 checkReadWrite(); 397 _value.setFromTime(fromTime); 398 } 399 400 public boolean getFromTimeHasBeenModified() { 401 return _value.getFromTimeHasBeenModified(); 402 } 403 404 @Nonnull 405 public Long getThruTime() { 406 return _value.getThruTime(); 407 } 408 409 public void setThruTime(@Nonnull Long thruTime) 410 throws PersistenceNotNullException, PersistenceReadOnlyException { 411 checkReadWrite(); 412 _value.setThruTime(thruTime); 413 } 414 415 public boolean getThruTimeHasBeenModified() { 416 return _value.getThruTimeHasBeenModified(); 417 } 418 419}