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 * FinancialAccountRole.java 021 */ 022 023package com.echothree.model.data.financial.server.entity; 024 025import com.echothree.model.data.financial.common.pk.FinancialAccountRolePK; 026 027import com.echothree.model.data.financial.common.pk.FinancialAccountPK; 028import com.echothree.model.data.party.common.pk.PartyPK; 029import com.echothree.model.data.financial.common.pk.FinancialAccountRoleTypePK; 030 031import com.echothree.model.data.financial.server.entity.FinancialAccount; 032import com.echothree.model.data.party.server.entity.Party; 033import com.echothree.model.data.financial.server.entity.FinancialAccountRoleType; 034 035import com.echothree.model.data.financial.server.factory.FinancialAccountFactory; 036import com.echothree.model.data.party.server.factory.PartyFactory; 037import com.echothree.model.data.financial.server.factory.FinancialAccountRoleTypeFactory; 038 039import com.echothree.model.data.financial.common.pk.FinancialAccountRolePK; 040 041import com.echothree.model.data.financial.server.value.FinancialAccountRoleValue; 042 043import com.echothree.model.data.financial.server.factory.FinancialAccountRoleFactory; 044 045import com.echothree.util.common.exception.PersistenceException; 046import com.echothree.util.common.exception.PersistenceDatabaseException; 047import com.echothree.util.common.exception.PersistenceNotNullException; 048import com.echothree.util.common.exception.PersistenceReadOnlyException; 049 050import com.echothree.util.common.persistence.BasePK; 051 052import com.echothree.util.common.persistence.type.ByteArray; 053 054import com.echothree.util.server.persistence.BaseEntity; 055import com.echothree.util.server.persistence.EntityPermission; 056import com.echothree.util.server.persistence.Session; 057import com.echothree.util.server.persistence.ThreadSession; 058 059import java.io.Serializable; 060 061public class FinancialAccountRole 062 extends BaseEntity 063 implements Serializable { 064 065 private FinancialAccountRolePK _pk; 066 private FinancialAccountRoleValue _value; 067 068 /** Creates a new instance of FinancialAccountRole */ 069 public FinancialAccountRole() 070 throws PersistenceException { 071 super(); 072 } 073 074 /** Creates a new instance of FinancialAccountRole */ 075 public FinancialAccountRole(FinancialAccountRoleValue value, EntityPermission entityPermission) { 076 super(entityPermission); 077 078 _value = value; 079 _pk = value.getPrimaryKey(); 080 } 081 082 @Override 083 public FinancialAccountRoleFactory getBaseFactoryInstance() { 084 return FinancialAccountRoleFactory.getInstance(); 085 } 086 087 @Override 088 public boolean hasBeenModified() { 089 return _value.hasBeenModified(); 090 } 091 092 @Override 093 public int hashCode() { 094 return _pk.hashCode(); 095 } 096 097 @Override 098 public String toString() { 099 return _pk.toString(); 100 } 101 102 @Override 103 public boolean equals(Object other) { 104 if(this == other) 105 return true; 106 107 if(other instanceof FinancialAccountRole that) { 108 FinancialAccountRoleValue thatValue = that.getFinancialAccountRoleValue(); 109 return _value.equals(thatValue); 110 } else { 111 return false; 112 } 113 } 114 115 @Override 116 public void store(Session session) 117 throws PersistenceDatabaseException { 118 getBaseFactoryInstance().store(session, this); 119 } 120 121 @Override 122 public void remove(Session session) 123 throws PersistenceDatabaseException { 124 getBaseFactoryInstance().remove(session, this); 125 } 126 127 @Override 128 public void remove() 129 throws PersistenceDatabaseException { 130 getBaseFactoryInstance().remove(ThreadSession.currentSession(), this); 131 } 132 133 public FinancialAccountRoleValue getFinancialAccountRoleValue() { 134 return _value; 135 } 136 137 public void setFinancialAccountRoleValue(FinancialAccountRoleValue value) 138 throws PersistenceReadOnlyException { 139 checkReadWrite(); 140 _value = value; 141 } 142 143 @Override 144 public FinancialAccountRolePK getPrimaryKey() { 145 return _pk; 146 } 147 148 public FinancialAccountPK getFinancialAccountPK() { 149 return _value.getFinancialAccountPK(); 150 } 151 152 public FinancialAccount getFinancialAccount(Session session, EntityPermission entityPermission) { 153 return FinancialAccountFactory.getInstance().getEntityFromPK(session, entityPermission, getFinancialAccountPK()); 154 } 155 156 public FinancialAccount getFinancialAccount(EntityPermission entityPermission) { 157 return getFinancialAccount(ThreadSession.currentSession(), entityPermission); 158 } 159 160 public FinancialAccount getFinancialAccount(Session session) { 161 return getFinancialAccount(session, EntityPermission.READ_ONLY); 162 } 163 164 public FinancialAccount getFinancialAccount() { 165 return getFinancialAccount(ThreadSession.currentSession(), EntityPermission.READ_ONLY); 166 } 167 168 public FinancialAccount getFinancialAccountForUpdate(Session session) { 169 return getFinancialAccount(session, EntityPermission.READ_WRITE); 170 } 171 172 public FinancialAccount getFinancialAccountForUpdate() { 173 return getFinancialAccount(ThreadSession.currentSession(), EntityPermission.READ_WRITE); 174 } 175 176 public void setFinancialAccountPK(FinancialAccountPK financialAccountPK) 177 throws PersistenceNotNullException, PersistenceReadOnlyException { 178 checkReadWrite(); 179 _value.setFinancialAccountPK(financialAccountPK); 180 } 181 182 public void setFinancialAccount(FinancialAccount entity) { 183 setFinancialAccountPK(entity == null? null: entity.getPrimaryKey()); 184 } 185 186 public boolean getFinancialAccountPKHasBeenModified() { 187 return _value.getFinancialAccountPKHasBeenModified(); 188 } 189 190 public PartyPK getPartyPK() { 191 return _value.getPartyPK(); 192 } 193 194 public Party getParty(Session session, EntityPermission entityPermission) { 195 return PartyFactory.getInstance().getEntityFromPK(session, entityPermission, getPartyPK()); 196 } 197 198 public Party getParty(EntityPermission entityPermission) { 199 return getParty(ThreadSession.currentSession(), entityPermission); 200 } 201 202 public Party getParty(Session session) { 203 return getParty(session, EntityPermission.READ_ONLY); 204 } 205 206 public Party getParty() { 207 return getParty(ThreadSession.currentSession(), EntityPermission.READ_ONLY); 208 } 209 210 public Party getPartyForUpdate(Session session) { 211 return getParty(session, EntityPermission.READ_WRITE); 212 } 213 214 public Party getPartyForUpdate() { 215 return getParty(ThreadSession.currentSession(), EntityPermission.READ_WRITE); 216 } 217 218 public void setPartyPK(PartyPK partyPK) 219 throws PersistenceNotNullException, PersistenceReadOnlyException { 220 checkReadWrite(); 221 _value.setPartyPK(partyPK); 222 } 223 224 public void setParty(Party entity) { 225 setPartyPK(entity == null? null: entity.getPrimaryKey()); 226 } 227 228 public boolean getPartyPKHasBeenModified() { 229 return _value.getPartyPKHasBeenModified(); 230 } 231 232 public FinancialAccountRoleTypePK getFinancialAccountRoleTypePK() { 233 return _value.getFinancialAccountRoleTypePK(); 234 } 235 236 public FinancialAccountRoleType getFinancialAccountRoleType(Session session, EntityPermission entityPermission) { 237 return FinancialAccountRoleTypeFactory.getInstance().getEntityFromPK(session, entityPermission, getFinancialAccountRoleTypePK()); 238 } 239 240 public FinancialAccountRoleType getFinancialAccountRoleType(EntityPermission entityPermission) { 241 return getFinancialAccountRoleType(ThreadSession.currentSession(), entityPermission); 242 } 243 244 public FinancialAccountRoleType getFinancialAccountRoleType(Session session) { 245 return getFinancialAccountRoleType(session, EntityPermission.READ_ONLY); 246 } 247 248 public FinancialAccountRoleType getFinancialAccountRoleType() { 249 return getFinancialAccountRoleType(ThreadSession.currentSession(), EntityPermission.READ_ONLY); 250 } 251 252 public FinancialAccountRoleType getFinancialAccountRoleTypeForUpdate(Session session) { 253 return getFinancialAccountRoleType(session, EntityPermission.READ_WRITE); 254 } 255 256 public FinancialAccountRoleType getFinancialAccountRoleTypeForUpdate() { 257 return getFinancialAccountRoleType(ThreadSession.currentSession(), EntityPermission.READ_WRITE); 258 } 259 260 public void setFinancialAccountRoleTypePK(FinancialAccountRoleTypePK financialAccountRoleTypePK) 261 throws PersistenceNotNullException, PersistenceReadOnlyException { 262 checkReadWrite(); 263 _value.setFinancialAccountRoleTypePK(financialAccountRoleTypePK); 264 } 265 266 public void setFinancialAccountRoleType(FinancialAccountRoleType entity) { 267 setFinancialAccountRoleTypePK(entity == null? null: entity.getPrimaryKey()); 268 } 269 270 public boolean getFinancialAccountRoleTypePKHasBeenModified() { 271 return _value.getFinancialAccountRoleTypePKHasBeenModified(); 272 } 273 274 public Long getFromTime() { 275 return _value.getFromTime(); 276 } 277 278 public void setFromTime(Long fromTime) 279 throws PersistenceNotNullException, PersistenceReadOnlyException { 280 checkReadWrite(); 281 _value.setFromTime(fromTime); 282 } 283 284 public boolean getFromTimeHasBeenModified() { 285 return _value.getFromTimeHasBeenModified(); 286 } 287 288 public Long getThruTime() { 289 return _value.getThruTime(); 290 } 291 292 public void setThruTime(Long thruTime) 293 throws PersistenceNotNullException, PersistenceReadOnlyException { 294 checkReadWrite(); 295 _value.setThruTime(thruTime); 296 } 297 298 public boolean getThruTimeHasBeenModified() { 299 return _value.getThruTimeHasBeenModified(); 300 } 301 302}