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 * RelatedItemDetail.java 021 */ 022 023package com.echothree.model.data.item.server.entity; 024 025import com.echothree.model.data.item.common.pk.RelatedItemDetailPK; 026 027import com.echothree.model.data.item.common.pk.RelatedItemPK; 028import com.echothree.model.data.item.common.pk.RelatedItemTypePK; 029import com.echothree.model.data.item.common.pk.ItemPK; 030 031import com.echothree.model.data.item.server.entity.RelatedItem; 032import com.echothree.model.data.item.server.entity.RelatedItemType; 033import com.echothree.model.data.item.server.entity.Item; 034 035import com.echothree.model.data.item.server.factory.RelatedItemFactory; 036import com.echothree.model.data.item.server.factory.RelatedItemTypeFactory; 037import com.echothree.model.data.item.server.factory.ItemFactory; 038 039import com.echothree.model.data.item.common.pk.RelatedItemDetailPK; 040 041import com.echothree.model.data.item.server.value.RelatedItemDetailValue; 042 043import com.echothree.model.data.item.server.factory.RelatedItemDetailFactory; 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 RelatedItemDetail 065 extends BaseEntity 066 implements Serializable { 067 068 private RelatedItemDetailPK _pk; 069 private RelatedItemDetailValue _value; 070 071 /** Creates a new instance of RelatedItemDetail */ 072 public RelatedItemDetail() 073 throws PersistenceException { 074 super(); 075 } 076 077 /** Creates a new instance of RelatedItemDetail */ 078 public RelatedItemDetail(RelatedItemDetailValue value, EntityPermission entityPermission) { 079 super(entityPermission); 080 081 _value = value; 082 _pk = value.getPrimaryKey(); 083 } 084 085 @Override 086 @Nonnull 087 public RelatedItemDetailFactory getBaseFactoryInstance() { 088 return RelatedItemDetailFactory.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 RelatedItemDetail that) { 113 RelatedItemDetailValue thatValue = that.getRelatedItemDetailValue(); 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 RelatedItemDetailValue getRelatedItemDetailValue() { 134 return _value; 135 } 136 137 public void setRelatedItemDetailValue(@Nonnull RelatedItemDetailValue value) 138 throws PersistenceReadOnlyException { 139 checkReadWrite(); 140 _value = value; 141 } 142 143 @Override 144 @Nonnull 145 public RelatedItemDetailPK getPrimaryKey() { 146 return _pk; 147 } 148 149 @Nonnull 150 public RelatedItemPK getRelatedItemPK() { 151 return _value.getRelatedItemPK(); 152 } 153 154 @Nonnull 155 public RelatedItem getRelatedItem(EntityPermission entityPermission) { 156 return RelatedItemFactory.getInstance().getEntityFromPK(entityPermission, getRelatedItemPK()); 157 } 158 159 @Nonnull 160 public RelatedItem getRelatedItem() { 161 return getRelatedItem(EntityPermission.READ_ONLY); 162 } 163 164 @Nonnull 165 public RelatedItem getRelatedItemForUpdate() { 166 return getRelatedItem(EntityPermission.READ_WRITE); 167 } 168 169 public void setRelatedItemPK(@Nonnull RelatedItemPK relatedItemPK) 170 throws PersistenceNotNullException, PersistenceReadOnlyException { 171 checkReadWrite(); 172 _value.setRelatedItemPK(relatedItemPK); 173 } 174 175 public void setRelatedItem(@Nonnull RelatedItem entity) { 176 setRelatedItemPK(entity == null ? null : entity.getPrimaryKey()); 177 } 178 179 public boolean getRelatedItemPKHasBeenModified() { 180 return _value.getRelatedItemPKHasBeenModified(); 181 } 182 183 @Nonnull 184 public RelatedItemTypePK getRelatedItemTypePK() { 185 return _value.getRelatedItemTypePK(); 186 } 187 188 @Nonnull 189 public RelatedItemType getRelatedItemType(EntityPermission entityPermission) { 190 return RelatedItemTypeFactory.getInstance().getEntityFromPK(entityPermission, getRelatedItemTypePK()); 191 } 192 193 @Nonnull 194 public RelatedItemType getRelatedItemType() { 195 return getRelatedItemType(EntityPermission.READ_ONLY); 196 } 197 198 @Nonnull 199 public RelatedItemType getRelatedItemTypeForUpdate() { 200 return getRelatedItemType(EntityPermission.READ_WRITE); 201 } 202 203 public void setRelatedItemTypePK(@Nonnull RelatedItemTypePK relatedItemTypePK) 204 throws PersistenceNotNullException, PersistenceReadOnlyException { 205 checkReadWrite(); 206 _value.setRelatedItemTypePK(relatedItemTypePK); 207 } 208 209 public void setRelatedItemType(@Nonnull RelatedItemType entity) { 210 setRelatedItemTypePK(entity == null ? null : entity.getPrimaryKey()); 211 } 212 213 public boolean getRelatedItemTypePKHasBeenModified() { 214 return _value.getRelatedItemTypePKHasBeenModified(); 215 } 216 217 @Nonnull 218 public ItemPK getFromItemPK() { 219 return _value.getFromItemPK(); 220 } 221 222 @Nonnull 223 public Item getFromItem(EntityPermission entityPermission) { 224 return ItemFactory.getInstance().getEntityFromPK(entityPermission, getFromItemPK()); 225 } 226 227 @Nonnull 228 public Item getFromItem() { 229 return getFromItem(EntityPermission.READ_ONLY); 230 } 231 232 @Nonnull 233 public Item getFromItemForUpdate() { 234 return getFromItem(EntityPermission.READ_WRITE); 235 } 236 237 public void setFromItemPK(@Nonnull ItemPK fromItemPK) 238 throws PersistenceNotNullException, PersistenceReadOnlyException { 239 checkReadWrite(); 240 _value.setFromItemPK(fromItemPK); 241 } 242 243 public void setFromItem(@Nonnull Item entity) { 244 setFromItemPK(entity == null ? null : entity.getPrimaryKey()); 245 } 246 247 public boolean getFromItemPKHasBeenModified() { 248 return _value.getFromItemPKHasBeenModified(); 249 } 250 251 @Nonnull 252 public ItemPK getToItemPK() { 253 return _value.getToItemPK(); 254 } 255 256 @Nonnull 257 public Item getToItem(EntityPermission entityPermission) { 258 return ItemFactory.getInstance().getEntityFromPK(entityPermission, getToItemPK()); 259 } 260 261 @Nonnull 262 public Item getToItem() { 263 return getToItem(EntityPermission.READ_ONLY); 264 } 265 266 @Nonnull 267 public Item getToItemForUpdate() { 268 return getToItem(EntityPermission.READ_WRITE); 269 } 270 271 public void setToItemPK(@Nonnull ItemPK toItemPK) 272 throws PersistenceNotNullException, PersistenceReadOnlyException { 273 checkReadWrite(); 274 _value.setToItemPK(toItemPK); 275 } 276 277 public void setToItem(@Nonnull Item entity) { 278 setToItemPK(entity == null ? null : entity.getPrimaryKey()); 279 } 280 281 public boolean getToItemPKHasBeenModified() { 282 return _value.getToItemPKHasBeenModified(); 283 } 284 285 @Nonnull 286 public Integer getSortOrder() { 287 return _value.getSortOrder(); 288 } 289 290 public void setSortOrder(@Nonnull Integer sortOrder) 291 throws PersistenceNotNullException, PersistenceReadOnlyException { 292 checkReadWrite(); 293 _value.setSortOrder(sortOrder); 294 } 295 296 public boolean getSortOrderHasBeenModified() { 297 return _value.getSortOrderHasBeenModified(); 298 } 299 300 @Nonnull 301 public Long getFromTime() { 302 return _value.getFromTime(); 303 } 304 305 public void setFromTime(@Nonnull Long fromTime) 306 throws PersistenceNotNullException, PersistenceReadOnlyException { 307 checkReadWrite(); 308 _value.setFromTime(fromTime); 309 } 310 311 public boolean getFromTimeHasBeenModified() { 312 return _value.getFromTimeHasBeenModified(); 313 } 314 315 @Nonnull 316 public Long getThruTime() { 317 return _value.getThruTime(); 318 } 319 320 public void setThruTime(@Nonnull Long thruTime) 321 throws PersistenceNotNullException, PersistenceReadOnlyException { 322 checkReadWrite(); 323 _value.setThruTime(thruTime); 324 } 325 326 public boolean getThruTimeHasBeenModified() { 327 return _value.getThruTimeHasBeenModified(); 328 } 329 330}