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 * PeriodDetail.java 021 */ 022 023package com.echothree.model.data.period.server.entity; 024 025import com.echothree.model.data.period.common.pk.PeriodDetailPK; 026 027import com.echothree.model.data.period.common.pk.PeriodPK; 028import com.echothree.model.data.period.common.pk.PeriodKindPK; 029import com.echothree.model.data.period.common.pk.PeriodTypePK; 030 031import com.echothree.model.data.period.server.entity.Period; 032import com.echothree.model.data.period.server.entity.PeriodKind; 033import com.echothree.model.data.period.server.entity.PeriodType; 034 035import com.echothree.model.data.period.server.factory.PeriodFactory; 036import com.echothree.model.data.period.server.factory.PeriodKindFactory; 037import com.echothree.model.data.period.server.factory.PeriodTypeFactory; 038 039import com.echothree.model.data.period.common.pk.PeriodDetailPK; 040 041import com.echothree.model.data.period.server.value.PeriodDetailValue; 042 043import com.echothree.model.data.period.server.factory.PeriodDetailFactory; 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 PeriodDetail 062 extends BaseEntity 063 implements Serializable { 064 065 private PeriodDetailPK _pk; 066 private PeriodDetailValue _value; 067 068 /** Creates a new instance of PeriodDetail */ 069 public PeriodDetail() 070 throws PersistenceException { 071 super(); 072 } 073 074 /** Creates a new instance of PeriodDetail */ 075 public PeriodDetail(PeriodDetailValue value, EntityPermission entityPermission) { 076 super(entityPermission); 077 078 _value = value; 079 _pk = value.getPrimaryKey(); 080 } 081 082 @Override 083 public PeriodDetailFactory getBaseFactoryInstance() { 084 return PeriodDetailFactory.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 PeriodDetail that) { 108 PeriodDetailValue thatValue = that.getPeriodDetailValue(); 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 PeriodDetailValue getPeriodDetailValue() { 128 return _value; 129 } 130 131 public void setPeriodDetailValue(PeriodDetailValue value) 132 throws PersistenceReadOnlyException { 133 checkReadWrite(); 134 _value = value; 135 } 136 137 @Override 138 public PeriodDetailPK getPrimaryKey() { 139 return _pk; 140 } 141 142 public PeriodPK getPeriodPK() { 143 return _value.getPeriodPK(); 144 } 145 146 public Period getPeriod(EntityPermission entityPermission) { 147 return PeriodFactory.getInstance().getEntityFromPK(entityPermission, getPeriodPK()); 148 } 149 150 public Period getPeriod() { 151 return getPeriod(EntityPermission.READ_ONLY); 152 } 153 154 public Period getPeriodForUpdate() { 155 return getPeriod(EntityPermission.READ_WRITE); 156 } 157 158 public void setPeriodPK(PeriodPK periodPK) 159 throws PersistenceNotNullException, PersistenceReadOnlyException { 160 checkReadWrite(); 161 _value.setPeriodPK(periodPK); 162 } 163 164 public void setPeriod(Period entity) { 165 setPeriodPK(entity == null? null: entity.getPrimaryKey()); 166 } 167 168 public boolean getPeriodPKHasBeenModified() { 169 return _value.getPeriodPKHasBeenModified(); 170 } 171 172 public PeriodKindPK getPeriodKindPK() { 173 return _value.getPeriodKindPK(); 174 } 175 176 public PeriodKind getPeriodKind(EntityPermission entityPermission) { 177 return PeriodKindFactory.getInstance().getEntityFromPK(entityPermission, getPeriodKindPK()); 178 } 179 180 public PeriodKind getPeriodKind() { 181 return getPeriodKind(EntityPermission.READ_ONLY); 182 } 183 184 public PeriodKind getPeriodKindForUpdate() { 185 return getPeriodKind(EntityPermission.READ_WRITE); 186 } 187 188 public void setPeriodKindPK(PeriodKindPK periodKindPK) 189 throws PersistenceNotNullException, PersistenceReadOnlyException { 190 checkReadWrite(); 191 _value.setPeriodKindPK(periodKindPK); 192 } 193 194 public void setPeriodKind(PeriodKind entity) { 195 setPeriodKindPK(entity == null? null: entity.getPrimaryKey()); 196 } 197 198 public boolean getPeriodKindPKHasBeenModified() { 199 return _value.getPeriodKindPKHasBeenModified(); 200 } 201 202 public String getPeriodName() { 203 return _value.getPeriodName(); 204 } 205 206 public void setPeriodName(String periodName) 207 throws PersistenceNotNullException, PersistenceReadOnlyException { 208 checkReadWrite(); 209 _value.setPeriodName(periodName); 210 } 211 212 public boolean getPeriodNameHasBeenModified() { 213 return _value.getPeriodNameHasBeenModified(); 214 } 215 216 public PeriodPK getParentPeriodPK() { 217 return _value.getParentPeriodPK(); 218 } 219 220 public Period getParentPeriod(EntityPermission entityPermission) { 221 PeriodPK pk = getParentPeriodPK(); 222 Period entity = pk == null? null: PeriodFactory.getInstance().getEntityFromPK(entityPermission, pk); 223 224 return entity; 225 } 226 227 public Period getParentPeriod() { 228 return getParentPeriod(EntityPermission.READ_ONLY); 229 } 230 231 public Period getParentPeriodForUpdate() { 232 return getParentPeriod(EntityPermission.READ_WRITE); 233 } 234 235 public void setParentPeriodPK(PeriodPK parentPeriodPK) 236 throws PersistenceNotNullException, PersistenceReadOnlyException { 237 checkReadWrite(); 238 _value.setParentPeriodPK(parentPeriodPK); 239 } 240 241 public void setParentPeriod(Period entity) { 242 setParentPeriodPK(entity == null? null: entity.getPrimaryKey()); 243 } 244 245 public boolean getParentPeriodPKHasBeenModified() { 246 return _value.getParentPeriodPKHasBeenModified(); 247 } 248 249 public PeriodTypePK getPeriodTypePK() { 250 return _value.getPeriodTypePK(); 251 } 252 253 public PeriodType getPeriodType(EntityPermission entityPermission) { 254 PeriodTypePK pk = getPeriodTypePK(); 255 PeriodType entity = pk == null? null: PeriodTypeFactory.getInstance().getEntityFromPK(entityPermission, pk); 256 257 return entity; 258 } 259 260 public PeriodType getPeriodType() { 261 return getPeriodType(EntityPermission.READ_ONLY); 262 } 263 264 public PeriodType getPeriodTypeForUpdate() { 265 return getPeriodType(EntityPermission.READ_WRITE); 266 } 267 268 public void setPeriodTypePK(PeriodTypePK periodTypePK) 269 throws PersistenceNotNullException, PersistenceReadOnlyException { 270 checkReadWrite(); 271 _value.setPeriodTypePK(periodTypePK); 272 } 273 274 public void setPeriodType(PeriodType entity) { 275 setPeriodTypePK(entity == null? null: entity.getPrimaryKey()); 276 } 277 278 public boolean getPeriodTypePKHasBeenModified() { 279 return _value.getPeriodTypePKHasBeenModified(); 280 } 281 282 public Long getStartTime() { 283 return _value.getStartTime(); 284 } 285 286 public void setStartTime(Long startTime) 287 throws PersistenceNotNullException, PersistenceReadOnlyException { 288 checkReadWrite(); 289 _value.setStartTime(startTime); 290 } 291 292 public boolean getStartTimeHasBeenModified() { 293 return _value.getStartTimeHasBeenModified(); 294 } 295 296 public Long getEndTime() { 297 return _value.getEndTime(); 298 } 299 300 public void setEndTime(Long endTime) 301 throws PersistenceNotNullException, PersistenceReadOnlyException { 302 checkReadWrite(); 303 _value.setEndTime(endTime); 304 } 305 306 public boolean getEndTimeHasBeenModified() { 307 return _value.getEndTimeHasBeenModified(); 308 } 309 310 public Long getFromTime() { 311 return _value.getFromTime(); 312 } 313 314 public void setFromTime(Long fromTime) 315 throws PersistenceNotNullException, PersistenceReadOnlyException { 316 checkReadWrite(); 317 _value.setFromTime(fromTime); 318 } 319 320 public boolean getFromTimeHasBeenModified() { 321 return _value.getFromTimeHasBeenModified(); 322 } 323 324 public Long getThruTime() { 325 return _value.getThruTime(); 326 } 327 328 public void setThruTime(Long thruTime) 329 throws PersistenceNotNullException, PersistenceReadOnlyException { 330 checkReadWrite(); 331 _value.setThruTime(thruTime); 332 } 333 334 public boolean getThruTimeHasBeenModified() { 335 return _value.getThruTimeHasBeenModified(); 336 } 337 338}