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 061import javax.annotation.Nonnull; 062import javax.annotation.Nullable; 063 064public class PaymentDeductionDetail 065 extends BaseEntity 066 implements Serializable { 067 068 private PaymentDeductionDetailPK _pk; 069 private PaymentDeductionDetailValue _value; 070 071 /** Creates a new instance of PaymentDeductionDetail */ 072 public PaymentDeductionDetail() 073 throws PersistenceException { 074 super(); 075 } 076 077 /** Creates a new instance of PaymentDeductionDetail */ 078 public PaymentDeductionDetail(PaymentDeductionDetailValue value, EntityPermission entityPermission) { 079 super(entityPermission); 080 081 _value = value; 082 _pk = value.getPrimaryKey(); 083 } 084 085 @Override 086 @Nonnull 087 public PaymentDeductionDetailFactory getBaseFactoryInstance() { 088 return PaymentDeductionDetailFactory.getInstance(); 089 } 090 091 @Override 092 public boolean hasBeenModified() { 093 return _value.hasBeenModified(); 094 } 095 096 @Override 097 public int hashCode() { 098 return _pk.hashCode(); 099 } 100 101 @Override 102 @Nonnull 103 public String toString() { 104 return _pk.toString(); 105 } 106 107 @Override 108 public boolean equals(Object other) { 109 if(this == other) 110 return true; 111 112 if(other instanceof PaymentDeductionDetail that) { 113 PaymentDeductionDetailValue thatValue = that.getPaymentDeductionDetailValue(); 114 return _value.equals(thatValue); 115 } else { 116 return false; 117 } 118 } 119 120 @Override 121 public void store() 122 throws PersistenceDatabaseException { 123 getBaseFactoryInstance().store(this); 124 } 125 126 @Override 127 public void remove() 128 throws PersistenceDatabaseException { 129 getBaseFactoryInstance().remove(this); 130 } 131 132 @Nonnull 133 public PaymentDeductionDetailValue getPaymentDeductionDetailValue() { 134 return _value; 135 } 136 137 public void setPaymentDeductionDetailValue(@Nonnull PaymentDeductionDetailValue value) 138 throws PersistenceReadOnlyException { 139 checkReadWrite(); 140 _value = value; 141 } 142 143 @Override 144 @Nonnull 145 public PaymentDeductionDetailPK getPrimaryKey() { 146 return _pk; 147 } 148 149 @Nonnull 150 public PaymentDeductionPK getPaymentDeductionPK() { 151 return _value.getPaymentDeductionPK(); 152 } 153 154 @Nonnull 155 public PaymentDeduction getPaymentDeduction(EntityPermission entityPermission) { 156 return PaymentDeductionFactory.getInstance().getEntityFromPK(entityPermission, getPaymentDeductionPK()); 157 } 158 159 @Nonnull 160 public PaymentDeduction getPaymentDeduction() { 161 return getPaymentDeduction(EntityPermission.READ_ONLY); 162 } 163 164 @Nonnull 165 public PaymentDeduction getPaymentDeductionForUpdate() { 166 return getPaymentDeduction(EntityPermission.READ_WRITE); 167 } 168 169 public void setPaymentDeductionPK(@Nonnull PaymentDeductionPK paymentDeductionPK) 170 throws PersistenceNotNullException, PersistenceReadOnlyException { 171 checkReadWrite(); 172 _value.setPaymentDeductionPK(paymentDeductionPK); 173 } 174 175 public void setPaymentDeduction(@Nonnull PaymentDeduction entity) { 176 setPaymentDeductionPK(entity == null ? null : entity.getPrimaryKey()); 177 } 178 179 public boolean getPaymentDeductionPKHasBeenModified() { 180 return _value.getPaymentDeductionPKHasBeenModified(); 181 } 182 183 @Nonnull 184 public String getPaymentDeductionName() { 185 return _value.getPaymentDeductionName(); 186 } 187 188 public void setPaymentDeductionName(@Nonnull String paymentDeductionName) 189 throws PersistenceNotNullException, PersistenceReadOnlyException { 190 checkReadWrite(); 191 _value.setPaymentDeductionName(paymentDeductionName); 192 } 193 194 public boolean getPaymentDeductionNameHasBeenModified() { 195 return _value.getPaymentDeductionNameHasBeenModified(); 196 } 197 198 @Nullable 199 public PaymentDeductionTypePK getPaymentDeductionTypePK() { 200 return _value.getPaymentDeductionTypePK(); 201 } 202 203 @Nullable 204 public PaymentDeductionType getPaymentDeductionType(EntityPermission entityPermission) { 205 PaymentDeductionTypePK pk = getPaymentDeductionTypePK(); 206 PaymentDeductionType entity = pk == null? null: PaymentDeductionTypeFactory.getInstance().getEntityFromPK(entityPermission, pk); 207 208 return entity; 209 } 210 211 @Nullable 212 public PaymentDeductionType getPaymentDeductionType() { 213 return getPaymentDeductionType(EntityPermission.READ_ONLY); 214 } 215 216 @Nullable 217 public PaymentDeductionType getPaymentDeductionTypeForUpdate() { 218 return getPaymentDeductionType(EntityPermission.READ_WRITE); 219 } 220 221 public void setPaymentDeductionTypePK(@Nullable PaymentDeductionTypePK paymentDeductionTypePK) 222 throws PersistenceNotNullException, PersistenceReadOnlyException { 223 checkReadWrite(); 224 _value.setPaymentDeductionTypePK(paymentDeductionTypePK); 225 } 226 227 public void setPaymentDeductionType(@Nullable PaymentDeductionType entity) { 228 setPaymentDeductionTypePK(entity == null ? null : entity.getPrimaryKey()); 229 } 230 231 public boolean getPaymentDeductionTypePKHasBeenModified() { 232 return _value.getPaymentDeductionTypePKHasBeenModified(); 233 } 234 235 @Nullable 236 public PaymentPK getPaymentPK() { 237 return _value.getPaymentPK(); 238 } 239 240 @Nullable 241 public Payment getPayment(EntityPermission entityPermission) { 242 PaymentPK pk = getPaymentPK(); 243 Payment entity = pk == null? null: PaymentFactory.getInstance().getEntityFromPK(entityPermission, pk); 244 245 return entity; 246 } 247 248 @Nullable 249 public Payment getPayment() { 250 return getPayment(EntityPermission.READ_ONLY); 251 } 252 253 @Nullable 254 public Payment getPaymentForUpdate() { 255 return getPayment(EntityPermission.READ_WRITE); 256 } 257 258 public void setPaymentPK(@Nullable PaymentPK paymentPK) 259 throws PersistenceNotNullException, PersistenceReadOnlyException { 260 checkReadWrite(); 261 _value.setPaymentPK(paymentPK); 262 } 263 264 public void setPayment(@Nullable Payment entity) { 265 setPaymentPK(entity == null ? null : entity.getPrimaryKey()); 266 } 267 268 public boolean getPaymentPKHasBeenModified() { 269 return _value.getPaymentPKHasBeenModified(); 270 } 271 272 @Nonnull 273 public Long getAmount() { 274 return _value.getAmount(); 275 } 276 277 public void setAmount(@Nonnull Long amount) 278 throws PersistenceNotNullException, PersistenceReadOnlyException { 279 checkReadWrite(); 280 _value.setAmount(amount); 281 } 282 283 public boolean getAmountHasBeenModified() { 284 return _value.getAmountHasBeenModified(); 285 } 286 287 @Nonnull 288 public Long getFromTime() { 289 return _value.getFromTime(); 290 } 291 292 public void setFromTime(@Nonnull Long fromTime) 293 throws PersistenceNotNullException, PersistenceReadOnlyException { 294 checkReadWrite(); 295 _value.setFromTime(fromTime); 296 } 297 298 public boolean getFromTimeHasBeenModified() { 299 return _value.getFromTimeHasBeenModified(); 300 } 301 302 @Nonnull 303 public Long getThruTime() { 304 return _value.getThruTime(); 305 } 306 307 public void setThruTime(@Nonnull Long thruTime) 308 throws PersistenceNotNullException, PersistenceReadOnlyException { 309 checkReadWrite(); 310 _value.setThruTime(thruTime); 311 } 312 313 public boolean getThruTimeHasBeenModified() { 314 return _value.getThruTimeHasBeenModified(); 315 } 316 317}