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 * ItemTaxClassificationDetail.java 021 */ 022 023package com.echothree.model.data.tax.server.entity; 024 025import com.echothree.model.data.tax.common.pk.ItemTaxClassificationDetailPK; 026 027import com.echothree.model.data.tax.common.pk.ItemTaxClassificationPK; 028import com.echothree.model.data.item.common.pk.ItemPK; 029import com.echothree.model.data.geo.common.pk.GeoCodePK; 030import com.echothree.model.data.tax.common.pk.TaxClassificationPK; 031 032import com.echothree.model.data.tax.server.entity.ItemTaxClassification; 033import com.echothree.model.data.item.server.entity.Item; 034import com.echothree.model.data.geo.server.entity.GeoCode; 035import com.echothree.model.data.tax.server.entity.TaxClassification; 036 037import com.echothree.model.data.tax.server.factory.ItemTaxClassificationFactory; 038import com.echothree.model.data.item.server.factory.ItemFactory; 039import com.echothree.model.data.geo.server.factory.GeoCodeFactory; 040import com.echothree.model.data.tax.server.factory.TaxClassificationFactory; 041 042import com.echothree.model.data.tax.common.pk.ItemTaxClassificationDetailPK; 043 044import com.echothree.model.data.tax.server.value.ItemTaxClassificationDetailValue; 045 046import com.echothree.model.data.tax.server.factory.ItemTaxClassificationDetailFactory; 047 048import com.echothree.util.common.exception.PersistenceException; 049import com.echothree.util.common.exception.PersistenceDatabaseException; 050import com.echothree.util.common.exception.PersistenceNotNullException; 051import com.echothree.util.common.exception.PersistenceReadOnlyException; 052 053import com.echothree.util.common.persistence.BasePK; 054 055import com.echothree.util.common.persistence.type.ByteArray; 056 057import com.echothree.util.server.persistence.BaseEntity; 058import com.echothree.util.server.persistence.EntityPermission; 059import com.echothree.util.server.persistence.Session; 060import com.echothree.util.server.persistence.ThreadSession; 061 062import java.io.Serializable; 063 064import javax.annotation.Nonnull; 065import javax.annotation.Nullable; 066 067public class ItemTaxClassificationDetail 068 extends BaseEntity 069 implements Serializable { 070 071 private ItemTaxClassificationDetailPK _pk; 072 private ItemTaxClassificationDetailValue _value; 073 074 /** Creates a new instance of ItemTaxClassificationDetail */ 075 public ItemTaxClassificationDetail() 076 throws PersistenceException { 077 super(); 078 } 079 080 /** Creates a new instance of ItemTaxClassificationDetail */ 081 public ItemTaxClassificationDetail(ItemTaxClassificationDetailValue value, EntityPermission entityPermission) { 082 super(entityPermission); 083 084 _value = value; 085 _pk = value.getPrimaryKey(); 086 } 087 088 @Override 089 @Nonnull 090 public ItemTaxClassificationDetailFactory getBaseFactoryInstance() { 091 return ItemTaxClassificationDetailFactory.getInstance(); 092 } 093 094 @Override 095 public boolean hasBeenModified() { 096 return _value.hasBeenModified(); 097 } 098 099 @Override 100 public int hashCode() { 101 return _pk.hashCode(); 102 } 103 104 @Override 105 @Nonnull 106 public String toString() { 107 return _pk.toString(); 108 } 109 110 @Override 111 public boolean equals(Object other) { 112 if(this == other) 113 return true; 114 115 if(other instanceof ItemTaxClassificationDetail that) { 116 ItemTaxClassificationDetailValue thatValue = that.getItemTaxClassificationDetailValue(); 117 return _value.equals(thatValue); 118 } else { 119 return false; 120 } 121 } 122 123 @Override 124 public void store() 125 throws PersistenceDatabaseException { 126 getBaseFactoryInstance().store(this); 127 } 128 129 @Override 130 public void remove() 131 throws PersistenceDatabaseException { 132 getBaseFactoryInstance().remove(this); 133 } 134 135 @Nonnull 136 public ItemTaxClassificationDetailValue getItemTaxClassificationDetailValue() { 137 return _value; 138 } 139 140 public void setItemTaxClassificationDetailValue(@Nonnull ItemTaxClassificationDetailValue value) 141 throws PersistenceReadOnlyException { 142 checkReadWrite(); 143 _value = value; 144 } 145 146 @Override 147 @Nonnull 148 public ItemTaxClassificationDetailPK getPrimaryKey() { 149 return _pk; 150 } 151 152 @Nonnull 153 public ItemTaxClassificationPK getItemTaxClassificationPK() { 154 return _value.getItemTaxClassificationPK(); 155 } 156 157 @Nonnull 158 public ItemTaxClassification getItemTaxClassification(EntityPermission entityPermission) { 159 return ItemTaxClassificationFactory.getInstance().getEntityFromPK(entityPermission, getItemTaxClassificationPK()); 160 } 161 162 @Nonnull 163 public ItemTaxClassification getItemTaxClassification() { 164 return getItemTaxClassification(EntityPermission.READ_ONLY); 165 } 166 167 @Nonnull 168 public ItemTaxClassification getItemTaxClassificationForUpdate() { 169 return getItemTaxClassification(EntityPermission.READ_WRITE); 170 } 171 172 public void setItemTaxClassificationPK(@Nonnull ItemTaxClassificationPK itemTaxClassificationPK) 173 throws PersistenceNotNullException, PersistenceReadOnlyException { 174 checkReadWrite(); 175 _value.setItemTaxClassificationPK(itemTaxClassificationPK); 176 } 177 178 public void setItemTaxClassification(@Nonnull ItemTaxClassification entity) { 179 setItemTaxClassificationPK(entity == null ? null : entity.getPrimaryKey()); 180 } 181 182 public boolean getItemTaxClassificationPKHasBeenModified() { 183 return _value.getItemTaxClassificationPKHasBeenModified(); 184 } 185 186 @Nonnull 187 public ItemPK getItemPK() { 188 return _value.getItemPK(); 189 } 190 191 @Nonnull 192 public Item getItem(EntityPermission entityPermission) { 193 return ItemFactory.getInstance().getEntityFromPK(entityPermission, getItemPK()); 194 } 195 196 @Nonnull 197 public Item getItem() { 198 return getItem(EntityPermission.READ_ONLY); 199 } 200 201 @Nonnull 202 public Item getItemForUpdate() { 203 return getItem(EntityPermission.READ_WRITE); 204 } 205 206 public void setItemPK(@Nonnull ItemPK itemPK) 207 throws PersistenceNotNullException, PersistenceReadOnlyException { 208 checkReadWrite(); 209 _value.setItemPK(itemPK); 210 } 211 212 public void setItem(@Nonnull Item entity) { 213 setItemPK(entity == null ? null : entity.getPrimaryKey()); 214 } 215 216 public boolean getItemPKHasBeenModified() { 217 return _value.getItemPKHasBeenModified(); 218 } 219 220 @Nonnull 221 public GeoCodePK getCountryGeoCodePK() { 222 return _value.getCountryGeoCodePK(); 223 } 224 225 @Nonnull 226 public GeoCode getCountryGeoCode(EntityPermission entityPermission) { 227 return GeoCodeFactory.getInstance().getEntityFromPK(entityPermission, getCountryGeoCodePK()); 228 } 229 230 @Nonnull 231 public GeoCode getCountryGeoCode() { 232 return getCountryGeoCode(EntityPermission.READ_ONLY); 233 } 234 235 @Nonnull 236 public GeoCode getCountryGeoCodeForUpdate() { 237 return getCountryGeoCode(EntityPermission.READ_WRITE); 238 } 239 240 public void setCountryGeoCodePK(@Nonnull GeoCodePK countryGeoCodePK) 241 throws PersistenceNotNullException, PersistenceReadOnlyException { 242 checkReadWrite(); 243 _value.setCountryGeoCodePK(countryGeoCodePK); 244 } 245 246 public void setCountryGeoCode(@Nonnull GeoCode entity) { 247 setCountryGeoCodePK(entity == null ? null : entity.getPrimaryKey()); 248 } 249 250 public boolean getCountryGeoCodePKHasBeenModified() { 251 return _value.getCountryGeoCodePKHasBeenModified(); 252 } 253 254 @Nonnull 255 public TaxClassificationPK getTaxClassificationPK() { 256 return _value.getTaxClassificationPK(); 257 } 258 259 @Nonnull 260 public TaxClassification getTaxClassification(EntityPermission entityPermission) { 261 return TaxClassificationFactory.getInstance().getEntityFromPK(entityPermission, getTaxClassificationPK()); 262 } 263 264 @Nonnull 265 public TaxClassification getTaxClassification() { 266 return getTaxClassification(EntityPermission.READ_ONLY); 267 } 268 269 @Nonnull 270 public TaxClassification getTaxClassificationForUpdate() { 271 return getTaxClassification(EntityPermission.READ_WRITE); 272 } 273 274 public void setTaxClassificationPK(@Nonnull TaxClassificationPK taxClassificationPK) 275 throws PersistenceNotNullException, PersistenceReadOnlyException { 276 checkReadWrite(); 277 _value.setTaxClassificationPK(taxClassificationPK); 278 } 279 280 public void setTaxClassification(@Nonnull TaxClassification entity) { 281 setTaxClassificationPK(entity == null ? null : entity.getPrimaryKey()); 282 } 283 284 public boolean getTaxClassificationPKHasBeenModified() { 285 return _value.getTaxClassificationPKHasBeenModified(); 286 } 287 288 @Nonnull 289 public Long getFromTime() { 290 return _value.getFromTime(); 291 } 292 293 public void setFromTime(@Nonnull Long fromTime) 294 throws PersistenceNotNullException, PersistenceReadOnlyException { 295 checkReadWrite(); 296 _value.setFromTime(fromTime); 297 } 298 299 public boolean getFromTimeHasBeenModified() { 300 return _value.getFromTimeHasBeenModified(); 301 } 302 303 @Nonnull 304 public Long getThruTime() { 305 return _value.getThruTime(); 306 } 307 308 public void setThruTime(@Nonnull Long thruTime) 309 throws PersistenceNotNullException, PersistenceReadOnlyException { 310 checkReadWrite(); 311 _value.setThruTime(thruTime); 312 } 313 314 public boolean getThruTimeHasBeenModified() { 315 return _value.getThruTimeHasBeenModified(); 316 } 317 318}