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 * ItemDescription.java 021 */ 022 023package com.echothree.model.data.item.server.entity; 024 025import com.echothree.model.data.item.common.pk.ItemDescriptionPK; 026 027import com.echothree.model.data.item.common.pk.ItemDescriptionDetailPK; 028 029import com.echothree.model.data.item.server.entity.ItemDescriptionDetail; 030 031import com.echothree.model.data.item.server.factory.ItemDescriptionDetailFactory; 032 033import com.echothree.model.data.item.common.pk.ItemDescriptionPK; 034 035import com.echothree.model.data.item.server.value.ItemDescriptionValue; 036 037import com.echothree.model.data.item.server.factory.ItemDescriptionFactory; 038 039import com.echothree.util.common.exception.PersistenceException; 040import com.echothree.util.common.exception.PersistenceDatabaseException; 041import com.echothree.util.common.exception.PersistenceNotNullException; 042import com.echothree.util.common.exception.PersistenceReadOnlyException; 043 044import com.echothree.util.common.persistence.BasePK; 045 046import com.echothree.util.common.persistence.type.ByteArray; 047 048import com.echothree.util.server.persistence.BaseEntity; 049import com.echothree.util.server.persistence.EntityPermission; 050import com.echothree.util.server.persistence.Session; 051import com.echothree.util.server.persistence.ThreadSession; 052 053import java.io.Serializable; 054 055public class ItemDescription 056 extends BaseEntity 057 implements Serializable { 058 059 private ItemDescriptionPK _pk; 060 private ItemDescriptionValue _value; 061 062 /** Creates a new instance of ItemDescription */ 063 public ItemDescription() 064 throws PersistenceException { 065 super(); 066 } 067 068 /** Creates a new instance of ItemDescription */ 069 public ItemDescription(ItemDescriptionValue value, EntityPermission entityPermission) { 070 super(entityPermission); 071 072 _value = value; 073 _pk = value.getPrimaryKey(); 074 } 075 076 @Override 077 public ItemDescriptionFactory getBaseFactoryInstance() { 078 return ItemDescriptionFactory.getInstance(); 079 } 080 081 @Override 082 public boolean hasBeenModified() { 083 return _value.hasBeenModified(); 084 } 085 086 @Override 087 public int hashCode() { 088 return _pk.hashCode(); 089 } 090 091 @Override 092 public String toString() { 093 return _pk.toString(); 094 } 095 096 @Override 097 public boolean equals(Object other) { 098 if(this == other) 099 return true; 100 101 if(other instanceof ItemDescription that) { 102 ItemDescriptionValue thatValue = that.getItemDescriptionValue(); 103 return _value.equals(thatValue); 104 } else { 105 return false; 106 } 107 } 108 109 @Override 110 public void store() 111 throws PersistenceDatabaseException { 112 getBaseFactoryInstance().store(this); 113 } 114 115 @Override 116 public void remove() 117 throws PersistenceDatabaseException { 118 getBaseFactoryInstance().remove(this); 119 } 120 121 public ItemDescriptionValue getItemDescriptionValue() { 122 return _value; 123 } 124 125 public void setItemDescriptionValue(ItemDescriptionValue value) 126 throws PersistenceReadOnlyException { 127 checkReadWrite(); 128 _value = value; 129 } 130 131 @Override 132 public ItemDescriptionPK getPrimaryKey() { 133 return _pk; 134 } 135 136 public ItemDescriptionDetailPK getActiveDetailPK() { 137 return _value.getActiveDetailPK(); 138 } 139 140 public ItemDescriptionDetail getActiveDetail(EntityPermission entityPermission) { 141 ItemDescriptionDetailPK pk = getActiveDetailPK(); 142 ItemDescriptionDetail entity = pk == null? null: ItemDescriptionDetailFactory.getInstance().getEntityFromPK(entityPermission, pk); 143 144 return entity; 145 } 146 147 public ItemDescriptionDetail getActiveDetail() { 148 return getActiveDetail(EntityPermission.READ_ONLY); 149 } 150 151 public ItemDescriptionDetail getActiveDetailForUpdate() { 152 return getActiveDetail(EntityPermission.READ_WRITE); 153 } 154 155 public void setActiveDetailPK(ItemDescriptionDetailPK activeDetailPK) 156 throws PersistenceNotNullException, PersistenceReadOnlyException { 157 checkReadWrite(); 158 _value.setActiveDetailPK(activeDetailPK); 159 } 160 161 public void setActiveDetail(ItemDescriptionDetail entity) { 162 setActiveDetailPK(entity == null? null: entity.getPrimaryKey()); 163 } 164 165 public boolean getActiveDetailPKHasBeenModified() { 166 return _value.getActiveDetailPKHasBeenModified(); 167 } 168 169 public ItemDescriptionDetailPK getLastDetailPK() { 170 return _value.getLastDetailPK(); 171 } 172 173 public ItemDescriptionDetail getLastDetail(EntityPermission entityPermission) { 174 ItemDescriptionDetailPK pk = getLastDetailPK(); 175 ItemDescriptionDetail entity = pk == null? null: ItemDescriptionDetailFactory.getInstance().getEntityFromPK(entityPermission, pk); 176 177 return entity; 178 } 179 180 public ItemDescriptionDetail getLastDetail() { 181 return getLastDetail(EntityPermission.READ_ONLY); 182 } 183 184 public ItemDescriptionDetail getLastDetailForUpdate() { 185 return getLastDetail(EntityPermission.READ_WRITE); 186 } 187 188 public void setLastDetailPK(ItemDescriptionDetailPK lastDetailPK) 189 throws PersistenceNotNullException, PersistenceReadOnlyException { 190 checkReadWrite(); 191 _value.setLastDetailPK(lastDetailPK); 192 } 193 194 public void setLastDetail(ItemDescriptionDetail entity) { 195 setLastDetailPK(entity == null? null: entity.getPrimaryKey()); 196 } 197 198 public boolean getLastDetailPKHasBeenModified() { 199 return _value.getLastDetailPKHasBeenModified(); 200 } 201 202}