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 * PaymentDeductionDetail.java 021 */ 022 023package com.echothree.model.data.payment.server.entity; 024 025import com.echothree.model.data.payment.common.pk.PaymentDeductionDetailPK; 026 027import com.echothree.model.data.payment.common.pk.PaymentDeductionPK; 028import com.echothree.model.data.payment.common.pk.PaymentDeductionTypePK; 029import com.echothree.model.data.payment.common.pk.PaymentPK; 030 031import com.echothree.model.data.payment.server.entity.PaymentDeduction; 032import com.echothree.model.data.payment.server.entity.PaymentDeductionType; 033import com.echothree.model.data.payment.server.entity.Payment; 034 035import com.echothree.model.data.payment.server.factory.PaymentDeductionFactory; 036import com.echothree.model.data.payment.server.factory.PaymentDeductionTypeFactory; 037import com.echothree.model.data.payment.server.factory.PaymentFactory; 038 039import com.echothree.model.data.payment.common.pk.PaymentDeductionDetailPK; 040 041import com.echothree.model.data.payment.server.value.PaymentDeductionDetailValue; 042 043import com.echothree.model.data.payment.server.factory.PaymentDeductionDetailFactory; 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 PaymentDeductionDetail 062 extends BaseEntity 063 implements Serializable { 064 065 private PaymentDeductionDetailPK _pk; 066 private PaymentDeductionDetailValue _value; 067 068 /** Creates a new instance of PaymentDeductionDetail */ 069 public PaymentDeductionDetail() 070 throws PersistenceException { 071 super(); 072 } 073 074 /** Creates a new instance of PaymentDeductionDetail */ 075 public PaymentDeductionDetail(PaymentDeductionDetailValue value, EntityPermission entityPermission) { 076 super(entityPermission); 077 078 _value = value; 079 _pk = value.getPrimaryKey(); 080 } 081 082 @Override 083 public PaymentDeductionDetailFactory getBaseFactoryInstance() { 084 return PaymentDeductionDetailFactory.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 PaymentDeductionDetail that) { 108 PaymentDeductionDetailValue thatValue = that.getPaymentDeductionDetailValue(); 109 return _value.equals(thatValue); 110 } else { 111 return false; 112 } 113 } 114 115 @Override 116 public void store() 117 throws PersistenceDatabaseException { 118 getBaseFactoryInstance().store(this); 119 } 120 121 @Override 122 public void remove() 123 throws PersistenceDatabaseException { 124 getBaseFactoryInstance().remove(this); 125 } 126 127 public PaymentDeductionDetailValue getPaymentDeductionDetailValue() { 128 return _value; 129 } 130 131 public void setPaymentDeductionDetailValue(PaymentDeductionDetailValue value) 132 throws PersistenceReadOnlyException { 133 checkReadWrite(); 134 _value = value; 135 } 136 137 @Override 138 public PaymentDeductionDetailPK getPrimaryKey() { 139 return _pk; 140 } 141 142 public PaymentDeductionPK getPaymentDeductionPK() { 143 return _value.getPaymentDeductionPK(); 144 } 145 146 public PaymentDeduction getPaymentDeduction(EntityPermission entityPermission) { 147 return PaymentDeductionFactory.getInstance().getEntityFromPK(entityPermission, getPaymentDeductionPK()); 148 } 149 150 public PaymentDeduction getPaymentDeduction() { 151 return getPaymentDeduction(EntityPermission.READ_ONLY); 152 } 153 154 public PaymentDeduction getPaymentDeductionForUpdate() { 155 return getPaymentDeduction(EntityPermission.READ_WRITE); 156 } 157 158 public void setPaymentDeductionPK(PaymentDeductionPK paymentDeductionPK) 159 throws PersistenceNotNullException, PersistenceReadOnlyException { 160 checkReadWrite(); 161 _value.setPaymentDeductionPK(paymentDeductionPK); 162 } 163 164 public void setPaymentDeduction(PaymentDeduction entity) { 165 setPaymentDeductionPK(entity == null? null: entity.getPrimaryKey()); 166 } 167 168 public boolean getPaymentDeductionPKHasBeenModified() { 169 return _value.getPaymentDeductionPKHasBeenModified(); 170 } 171 172 public String getPaymentDeductionName() { 173 return _value.getPaymentDeductionName(); 174 } 175 176 public void setPaymentDeductionName(String paymentDeductionName) 177 throws PersistenceNotNullException, PersistenceReadOnlyException { 178 checkReadWrite(); 179 _value.setPaymentDeductionName(paymentDeductionName); 180 } 181 182 public boolean getPaymentDeductionNameHasBeenModified() { 183 return _value.getPaymentDeductionNameHasBeenModified(); 184 } 185 186 public PaymentDeductionTypePK getPaymentDeductionTypePK() { 187 return _value.getPaymentDeductionTypePK(); 188 } 189 190 public PaymentDeductionType getPaymentDeductionType(EntityPermission entityPermission) { 191 PaymentDeductionTypePK pk = getPaymentDeductionTypePK(); 192 PaymentDeductionType entity = pk == null? null: PaymentDeductionTypeFactory.getInstance().getEntityFromPK(entityPermission, pk); 193 194 return entity; 195 } 196 197 public PaymentDeductionType getPaymentDeductionType() { 198 return getPaymentDeductionType(EntityPermission.READ_ONLY); 199 } 200 201 public PaymentDeductionType getPaymentDeductionTypeForUpdate() { 202 return getPaymentDeductionType(EntityPermission.READ_WRITE); 203 } 204 205 public void setPaymentDeductionTypePK(PaymentDeductionTypePK paymentDeductionTypePK) 206 throws PersistenceNotNullException, PersistenceReadOnlyException { 207 checkReadWrite(); 208 _value.setPaymentDeductionTypePK(paymentDeductionTypePK); 209 } 210 211 public void setPaymentDeductionType(PaymentDeductionType entity) { 212 setPaymentDeductionTypePK(entity == null? null: entity.getPrimaryKey()); 213 } 214 215 public boolean getPaymentDeductionTypePKHasBeenModified() { 216 return _value.getPaymentDeductionTypePKHasBeenModified(); 217 } 218 219 public PaymentPK getPaymentPK() { 220 return _value.getPaymentPK(); 221 } 222 223 public Payment getPayment(EntityPermission entityPermission) { 224 PaymentPK pk = getPaymentPK(); 225 Payment entity = pk == null? null: PaymentFactory.getInstance().getEntityFromPK(entityPermission, pk); 226 227 return entity; 228 } 229 230 public Payment getPayment() { 231 return getPayment(EntityPermission.READ_ONLY); 232 } 233 234 public Payment getPaymentForUpdate() { 235 return getPayment(EntityPermission.READ_WRITE); 236 } 237 238 public void setPaymentPK(PaymentPK paymentPK) 239 throws PersistenceNotNullException, PersistenceReadOnlyException { 240 checkReadWrite(); 241 _value.setPaymentPK(paymentPK); 242 } 243 244 public void setPayment(Payment entity) { 245 setPaymentPK(entity == null? null: entity.getPrimaryKey()); 246 } 247 248 public boolean getPaymentPKHasBeenModified() { 249 return _value.getPaymentPKHasBeenModified(); 250 } 251 252 public Long getAmount() { 253 return _value.getAmount(); 254 } 255 256 public void setAmount(Long amount) 257 throws PersistenceNotNullException, PersistenceReadOnlyException { 258 checkReadWrite(); 259 _value.setAmount(amount); 260 } 261 262 public boolean getAmountHasBeenModified() { 263 return _value.getAmountHasBeenModified(); 264 } 265 266 public Long getFromTime() { 267 return _value.getFromTime(); 268 } 269 270 public void setFromTime(Long fromTime) 271 throws PersistenceNotNullException, PersistenceReadOnlyException { 272 checkReadWrite(); 273 _value.setFromTime(fromTime); 274 } 275 276 public boolean getFromTimeHasBeenModified() { 277 return _value.getFromTimeHasBeenModified(); 278 } 279 280 public Long getThruTime() { 281 return _value.getThruTime(); 282 } 283 284 public void setThruTime(Long thruTime) 285 throws PersistenceNotNullException, PersistenceReadOnlyException { 286 checkReadWrite(); 287 _value.setThruTime(thruTime); 288 } 289 290 public boolean getThruTimeHasBeenModified() { 291 return _value.getThruTimeHasBeenModified(); 292 } 293 294}