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 * DocumentDetail.java 021 */ 022 023package com.echothree.model.data.document.server.entity; 024 025import com.echothree.model.data.document.common.pk.DocumentDetailPK; 026 027import com.echothree.model.data.document.common.pk.DocumentPK; 028import com.echothree.model.data.document.common.pk.DocumentTypePK; 029import com.echothree.model.data.core.common.pk.MimeTypePK; 030 031import com.echothree.model.data.document.server.entity.Document; 032import com.echothree.model.data.document.server.entity.DocumentType; 033import com.echothree.model.data.core.server.entity.MimeType; 034 035import com.echothree.model.data.document.server.factory.DocumentFactory; 036import com.echothree.model.data.document.server.factory.DocumentTypeFactory; 037import com.echothree.model.data.core.server.factory.MimeTypeFactory; 038 039import com.echothree.model.data.document.common.pk.DocumentDetailPK; 040 041import com.echothree.model.data.document.server.value.DocumentDetailValue; 042 043import com.echothree.model.data.document.server.factory.DocumentDetailFactory; 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 DocumentDetail 062 extends BaseEntity 063 implements Serializable { 064 065 private DocumentDetailPK _pk; 066 private DocumentDetailValue _value; 067 068 /** Creates a new instance of DocumentDetail */ 069 public DocumentDetail() 070 throws PersistenceException { 071 super(); 072 } 073 074 /** Creates a new instance of DocumentDetail */ 075 public DocumentDetail(DocumentDetailValue value, EntityPermission entityPermission) { 076 super(entityPermission); 077 078 _value = value; 079 _pk = value.getPrimaryKey(); 080 } 081 082 @Override 083 public DocumentDetailFactory getBaseFactoryInstance() { 084 return DocumentDetailFactory.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 DocumentDetail that) { 108 DocumentDetailValue thatValue = that.getDocumentDetailValue(); 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 DocumentDetailValue getDocumentDetailValue() { 128 return _value; 129 } 130 131 public void setDocumentDetailValue(DocumentDetailValue value) 132 throws PersistenceReadOnlyException { 133 checkReadWrite(); 134 _value = value; 135 } 136 137 @Override 138 public DocumentDetailPK getPrimaryKey() { 139 return _pk; 140 } 141 142 public DocumentPK getDocumentPK() { 143 return _value.getDocumentPK(); 144 } 145 146 public Document getDocument(EntityPermission entityPermission) { 147 return DocumentFactory.getInstance().getEntityFromPK(entityPermission, getDocumentPK()); 148 } 149 150 public Document getDocument() { 151 return getDocument(EntityPermission.READ_ONLY); 152 } 153 154 public Document getDocumentForUpdate() { 155 return getDocument(EntityPermission.READ_WRITE); 156 } 157 158 public void setDocumentPK(DocumentPK documentPK) 159 throws PersistenceNotNullException, PersistenceReadOnlyException { 160 checkReadWrite(); 161 _value.setDocumentPK(documentPK); 162 } 163 164 public void setDocument(Document entity) { 165 setDocumentPK(entity == null? null: entity.getPrimaryKey()); 166 } 167 168 public boolean getDocumentPKHasBeenModified() { 169 return _value.getDocumentPKHasBeenModified(); 170 } 171 172 public String getDocumentName() { 173 return _value.getDocumentName(); 174 } 175 176 public void setDocumentName(String documentName) 177 throws PersistenceNotNullException, PersistenceReadOnlyException { 178 checkReadWrite(); 179 _value.setDocumentName(documentName); 180 } 181 182 public boolean getDocumentNameHasBeenModified() { 183 return _value.getDocumentNameHasBeenModified(); 184 } 185 186 public DocumentTypePK getDocumentTypePK() { 187 return _value.getDocumentTypePK(); 188 } 189 190 public DocumentType getDocumentType(EntityPermission entityPermission) { 191 return DocumentTypeFactory.getInstance().getEntityFromPK(entityPermission, getDocumentTypePK()); 192 } 193 194 public DocumentType getDocumentType() { 195 return getDocumentType(EntityPermission.READ_ONLY); 196 } 197 198 public DocumentType getDocumentTypeForUpdate() { 199 return getDocumentType(EntityPermission.READ_WRITE); 200 } 201 202 public void setDocumentTypePK(DocumentTypePK documentTypePK) 203 throws PersistenceNotNullException, PersistenceReadOnlyException { 204 checkReadWrite(); 205 _value.setDocumentTypePK(documentTypePK); 206 } 207 208 public void setDocumentType(DocumentType entity) { 209 setDocumentTypePK(entity == null? null: entity.getPrimaryKey()); 210 } 211 212 public boolean getDocumentTypePKHasBeenModified() { 213 return _value.getDocumentTypePKHasBeenModified(); 214 } 215 216 public MimeTypePK getMimeTypePK() { 217 return _value.getMimeTypePK(); 218 } 219 220 public MimeType getMimeType(EntityPermission entityPermission) { 221 return MimeTypeFactory.getInstance().getEntityFromPK(entityPermission, getMimeTypePK()); 222 } 223 224 public MimeType getMimeType() { 225 return getMimeType(EntityPermission.READ_ONLY); 226 } 227 228 public MimeType getMimeTypeForUpdate() { 229 return getMimeType(EntityPermission.READ_WRITE); 230 } 231 232 public void setMimeTypePK(MimeTypePK mimeTypePK) 233 throws PersistenceNotNullException, PersistenceReadOnlyException { 234 checkReadWrite(); 235 _value.setMimeTypePK(mimeTypePK); 236 } 237 238 public void setMimeType(MimeType entity) { 239 setMimeTypePK(entity == null? null: entity.getPrimaryKey()); 240 } 241 242 public boolean getMimeTypePKHasBeenModified() { 243 return _value.getMimeTypePKHasBeenModified(); 244 } 245 246 public Integer getPages() { 247 return _value.getPages(); 248 } 249 250 public void setPages(Integer pages) 251 throws PersistenceNotNullException, PersistenceReadOnlyException { 252 checkReadWrite(); 253 _value.setPages(pages); 254 } 255 256 public boolean getPagesHasBeenModified() { 257 return _value.getPagesHasBeenModified(); 258 } 259 260 public Long getFromTime() { 261 return _value.getFromTime(); 262 } 263 264 public void setFromTime(Long fromTime) 265 throws PersistenceNotNullException, PersistenceReadOnlyException { 266 checkReadWrite(); 267 _value.setFromTime(fromTime); 268 } 269 270 public boolean getFromTimeHasBeenModified() { 271 return _value.getFromTimeHasBeenModified(); 272 } 273 274 public Long getThruTime() { 275 return _value.getThruTime(); 276 } 277 278 public void setThruTime(Long thruTime) 279 throws PersistenceNotNullException, PersistenceReadOnlyException { 280 checkReadWrite(); 281 _value.setThruTime(thruTime); 282 } 283 284 public boolean getThruTimeHasBeenModified() { 285 return _value.getThruTimeHasBeenModified(); 286 } 287 288}