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 * IndexDetail.java 021 */ 022 023package com.echothree.model.data.index.server.entity; 024 025import com.echothree.model.data.index.common.pk.IndexDetailPK; 026 027import com.echothree.model.data.index.common.pk.IndexPK; 028import com.echothree.model.data.index.common.pk.IndexTypePK; 029import com.echothree.model.data.party.common.pk.LanguagePK; 030 031import com.echothree.model.data.index.server.entity.Index; 032import com.echothree.model.data.index.server.entity.IndexType; 033import com.echothree.model.data.party.server.entity.Language; 034 035import com.echothree.model.data.index.server.factory.IndexFactory; 036import com.echothree.model.data.index.server.factory.IndexTypeFactory; 037import com.echothree.model.data.party.server.factory.LanguageFactory; 038 039import com.echothree.model.data.index.common.pk.IndexDetailPK; 040 041import com.echothree.model.data.index.server.value.IndexDetailValue; 042 043import com.echothree.model.data.index.server.factory.IndexDetailFactory; 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 IndexDetail 065 extends BaseEntity 066 implements Serializable { 067 068 private IndexDetailPK _pk; 069 private IndexDetailValue _value; 070 071 /** Creates a new instance of IndexDetail */ 072 public IndexDetail() 073 throws PersistenceException { 074 super(); 075 } 076 077 /** Creates a new instance of IndexDetail */ 078 public IndexDetail(IndexDetailValue value, EntityPermission entityPermission) { 079 super(entityPermission); 080 081 _value = value; 082 _pk = value.getPrimaryKey(); 083 } 084 085 @Override 086 @Nonnull 087 public IndexDetailFactory getBaseFactoryInstance() { 088 return IndexDetailFactory.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 IndexDetail that) { 113 IndexDetailValue thatValue = that.getIndexDetailValue(); 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 IndexDetailValue getIndexDetailValue() { 134 return _value; 135 } 136 137 public void setIndexDetailValue(@Nonnull IndexDetailValue value) 138 throws PersistenceReadOnlyException { 139 checkReadWrite(); 140 _value = value; 141 } 142 143 @Override 144 @Nonnull 145 public IndexDetailPK getPrimaryKey() { 146 return _pk; 147 } 148 149 @Nonnull 150 public IndexPK getIndexPK() { 151 return _value.getIndexPK(); 152 } 153 154 @Nonnull 155 public Index getIndex(EntityPermission entityPermission) { 156 return IndexFactory.getInstance().getEntityFromPK(entityPermission, getIndexPK()); 157 } 158 159 @Nonnull 160 public Index getIndex() { 161 return getIndex(EntityPermission.READ_ONLY); 162 } 163 164 @Nonnull 165 public Index getIndexForUpdate() { 166 return getIndex(EntityPermission.READ_WRITE); 167 } 168 169 public void setIndexPK(@Nonnull IndexPK indexPK) 170 throws PersistenceNotNullException, PersistenceReadOnlyException { 171 checkReadWrite(); 172 _value.setIndexPK(indexPK); 173 } 174 175 public void setIndex(@Nonnull Index entity) { 176 setIndexPK(entity == null ? null : entity.getPrimaryKey()); 177 } 178 179 public boolean getIndexPKHasBeenModified() { 180 return _value.getIndexPKHasBeenModified(); 181 } 182 183 @Nonnull 184 public String getIndexName() { 185 return _value.getIndexName(); 186 } 187 188 public void setIndexName(@Nonnull String indexName) 189 throws PersistenceNotNullException, PersistenceReadOnlyException { 190 checkReadWrite(); 191 _value.setIndexName(indexName); 192 } 193 194 public boolean getIndexNameHasBeenModified() { 195 return _value.getIndexNameHasBeenModified(); 196 } 197 198 @Nonnull 199 public IndexTypePK getIndexTypePK() { 200 return _value.getIndexTypePK(); 201 } 202 203 @Nonnull 204 public IndexType getIndexType(EntityPermission entityPermission) { 205 return IndexTypeFactory.getInstance().getEntityFromPK(entityPermission, getIndexTypePK()); 206 } 207 208 @Nonnull 209 public IndexType getIndexType() { 210 return getIndexType(EntityPermission.READ_ONLY); 211 } 212 213 @Nonnull 214 public IndexType getIndexTypeForUpdate() { 215 return getIndexType(EntityPermission.READ_WRITE); 216 } 217 218 public void setIndexTypePK(@Nonnull IndexTypePK indexTypePK) 219 throws PersistenceNotNullException, PersistenceReadOnlyException { 220 checkReadWrite(); 221 _value.setIndexTypePK(indexTypePK); 222 } 223 224 public void setIndexType(@Nonnull IndexType entity) { 225 setIndexTypePK(entity == null ? null : entity.getPrimaryKey()); 226 } 227 228 public boolean getIndexTypePKHasBeenModified() { 229 return _value.getIndexTypePKHasBeenModified(); 230 } 231 232 @Nullable 233 public LanguagePK getLanguagePK() { 234 return _value.getLanguagePK(); 235 } 236 237 @Nullable 238 public Language getLanguage(EntityPermission entityPermission) { 239 LanguagePK pk = getLanguagePK(); 240 Language entity = pk == null? null: LanguageFactory.getInstance().getEntityFromPK(entityPermission, pk); 241 242 return entity; 243 } 244 245 @Nullable 246 public Language getLanguage() { 247 return getLanguage(EntityPermission.READ_ONLY); 248 } 249 250 @Nullable 251 public Language getLanguageForUpdate() { 252 return getLanguage(EntityPermission.READ_WRITE); 253 } 254 255 public void setLanguagePK(@Nullable LanguagePK languagePK) 256 throws PersistenceNotNullException, PersistenceReadOnlyException { 257 checkReadWrite(); 258 _value.setLanguagePK(languagePK); 259 } 260 261 public void setLanguage(@Nullable Language entity) { 262 setLanguagePK(entity == null ? null : entity.getPrimaryKey()); 263 } 264 265 public boolean getLanguagePKHasBeenModified() { 266 return _value.getLanguagePKHasBeenModified(); 267 } 268 269 @Nonnull 270 public String getDirectory() { 271 return _value.getDirectory(); 272 } 273 274 public void setDirectory(@Nonnull String directory) 275 throws PersistenceNotNullException, PersistenceReadOnlyException { 276 checkReadWrite(); 277 _value.setDirectory(directory); 278 } 279 280 public boolean getDirectoryHasBeenModified() { 281 return _value.getDirectoryHasBeenModified(); 282 } 283 284 @Nonnull 285 public Boolean getIsDefault() { 286 return _value.getIsDefault(); 287 } 288 289 public void setIsDefault(@Nonnull Boolean isDefault) 290 throws PersistenceNotNullException, PersistenceReadOnlyException { 291 checkReadWrite(); 292 _value.setIsDefault(isDefault); 293 } 294 295 public boolean getIsDefaultHasBeenModified() { 296 return _value.getIsDefaultHasBeenModified(); 297 } 298 299 @Nonnull 300 public Integer getSortOrder() { 301 return _value.getSortOrder(); 302 } 303 304 public void setSortOrder(@Nonnull Integer sortOrder) 305 throws PersistenceNotNullException, PersistenceReadOnlyException { 306 checkReadWrite(); 307 _value.setSortOrder(sortOrder); 308 } 309 310 public boolean getSortOrderHasBeenModified() { 311 return _value.getSortOrderHasBeenModified(); 312 } 313 314 @Nonnull 315 public Long getFromTime() { 316 return _value.getFromTime(); 317 } 318 319 public void setFromTime(@Nonnull Long fromTime) 320 throws PersistenceNotNullException, PersistenceReadOnlyException { 321 checkReadWrite(); 322 _value.setFromTime(fromTime); 323 } 324 325 public boolean getFromTimeHasBeenModified() { 326 return _value.getFromTimeHasBeenModified(); 327 } 328 329 @Nonnull 330 public Long getThruTime() { 331 return _value.getThruTime(); 332 } 333 334 public void setThruTime(@Nonnull Long thruTime) 335 throws PersistenceNotNullException, PersistenceReadOnlyException { 336 checkReadWrite(); 337 _value.setThruTime(thruTime); 338 } 339 340 public boolean getThruTimeHasBeenModified() { 341 return _value.getThruTimeHasBeenModified(); 342 } 343 344}