001// -------------------------------------------------------------------------------- 002// Copyright 2002-2024 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 * MessageBlob.java 021 */ 022 023package com.echothree.model.data.message.server.entity; 024 025import com.echothree.model.data.message.common.pk.MessageBlobPK; 026 027import com.echothree.model.data.message.common.pk.MessagePK; 028import com.echothree.model.data.party.common.pk.LanguagePK; 029import com.echothree.model.data.core.common.pk.MimeTypePK; 030 031import com.echothree.model.data.message.server.entity.Message; 032import com.echothree.model.data.party.server.entity.Language; 033import com.echothree.model.data.core.server.entity.MimeType; 034 035import com.echothree.model.data.message.server.factory.MessageFactory; 036import com.echothree.model.data.party.server.factory.LanguageFactory; 037import com.echothree.model.data.core.server.factory.MimeTypeFactory; 038 039import com.echothree.model.data.message.common.pk.MessageBlobPK; 040 041import com.echothree.model.data.message.server.value.MessageBlobValue; 042 043import com.echothree.model.data.message.server.factory.MessageBlobFactory; 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 MessageBlob 062 extends BaseEntity 063 implements Serializable { 064 065 private MessageBlobPK _pk; 066 private MessageBlobValue _value; 067 068 /** Creates a new instance of MessageBlob */ 069 public MessageBlob() 070 throws PersistenceException { 071 super(); 072 } 073 074 /** Creates a new instance of MessageBlob */ 075 public MessageBlob(MessageBlobValue value, EntityPermission entityPermission) { 076 super(entityPermission); 077 078 _value = value; 079 _pk = value.getPrimaryKey(); 080 } 081 082 @Override 083 public MessageBlobFactory getBaseFactoryInstance() { 084 return MessageBlobFactory.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 MessageBlob) { 108 MessageBlob that = (MessageBlob)other; 109 110 MessageBlobValue thatValue = that.getMessageBlobValue(); 111 return _value.equals(thatValue); 112 } else { 113 return false; 114 } 115 } 116 117 @Override 118 public void store(Session session) 119 throws PersistenceDatabaseException { 120 getBaseFactoryInstance().store(session, this); 121 } 122 123 @Override 124 public void remove(Session session) 125 throws PersistenceDatabaseException { 126 getBaseFactoryInstance().remove(session, this); 127 } 128 129 @Override 130 public void remove() 131 throws PersistenceDatabaseException { 132 getBaseFactoryInstance().remove(ThreadSession.currentSession(), this); 133 } 134 135 public MessageBlobValue getMessageBlobValue() { 136 return _value; 137 } 138 139 public void setMessageBlobValue(MessageBlobValue value) 140 throws PersistenceReadOnlyException { 141 checkReadWrite(); 142 _value = value; 143 } 144 145 @Override 146 public MessageBlobPK getPrimaryKey() { 147 return _pk; 148 } 149 150 public MessagePK getMessagePK() { 151 return _value.getMessagePK(); 152 } 153 154 public Message getMessage(Session session, EntityPermission entityPermission) { 155 return MessageFactory.getInstance().getEntityFromPK(session, entityPermission, getMessagePK()); 156 } 157 158 public Message getMessage(EntityPermission entityPermission) { 159 return getMessage(ThreadSession.currentSession(), entityPermission); 160 } 161 162 public Message getMessage(Session session) { 163 return getMessage(session, EntityPermission.READ_ONLY); 164 } 165 166 public Message getMessage() { 167 return getMessage(ThreadSession.currentSession(), EntityPermission.READ_ONLY); 168 } 169 170 public Message getMessageForUpdate(Session session) { 171 return getMessage(session, EntityPermission.READ_WRITE); 172 } 173 174 public Message getMessageForUpdate() { 175 return getMessage(ThreadSession.currentSession(), EntityPermission.READ_WRITE); 176 } 177 178 public void setMessagePK(MessagePK messagePK) 179 throws PersistenceNotNullException, PersistenceReadOnlyException { 180 checkReadWrite(); 181 _value.setMessagePK(messagePK); 182 } 183 184 public void setMessage(Message entity) { 185 setMessagePK(entity == null? null: entity.getPrimaryKey()); 186 } 187 188 public boolean getMessagePKHasBeenModified() { 189 return _value.getMessagePKHasBeenModified(); 190 } 191 192 public LanguagePK getLanguagePK() { 193 return _value.getLanguagePK(); 194 } 195 196 public Language getLanguage(Session session, EntityPermission entityPermission) { 197 return LanguageFactory.getInstance().getEntityFromPK(session, entityPermission, getLanguagePK()); 198 } 199 200 public Language getLanguage(EntityPermission entityPermission) { 201 return getLanguage(ThreadSession.currentSession(), entityPermission); 202 } 203 204 public Language getLanguage(Session session) { 205 return getLanguage(session, EntityPermission.READ_ONLY); 206 } 207 208 public Language getLanguage() { 209 return getLanguage(ThreadSession.currentSession(), EntityPermission.READ_ONLY); 210 } 211 212 public Language getLanguageForUpdate(Session session) { 213 return getLanguage(session, EntityPermission.READ_WRITE); 214 } 215 216 public Language getLanguageForUpdate() { 217 return getLanguage(ThreadSession.currentSession(), EntityPermission.READ_WRITE); 218 } 219 220 public void setLanguagePK(LanguagePK languagePK) 221 throws PersistenceNotNullException, PersistenceReadOnlyException { 222 checkReadWrite(); 223 _value.setLanguagePK(languagePK); 224 } 225 226 public void setLanguage(Language entity) { 227 setLanguagePK(entity == null? null: entity.getPrimaryKey()); 228 } 229 230 public boolean getLanguagePKHasBeenModified() { 231 return _value.getLanguagePKHasBeenModified(); 232 } 233 234 public MimeTypePK getMimeTypePK() { 235 return _value.getMimeTypePK(); 236 } 237 238 public MimeType getMimeType(Session session, EntityPermission entityPermission) { 239 MimeTypePK pk = getMimeTypePK(); 240 MimeType entity = pk == null? null: MimeTypeFactory.getInstance().getEntityFromPK(session, entityPermission, pk); 241 242 return entity; 243 } 244 245 public MimeType getMimeType(EntityPermission entityPermission) { 246 return getMimeType(ThreadSession.currentSession(), entityPermission); 247 } 248 249 public MimeType getMimeType(Session session) { 250 return getMimeType(session, EntityPermission.READ_ONLY); 251 } 252 253 public MimeType getMimeType() { 254 return getMimeType(ThreadSession.currentSession(), EntityPermission.READ_ONLY); 255 } 256 257 public MimeType getMimeTypeForUpdate(Session session) { 258 return getMimeType(session, EntityPermission.READ_WRITE); 259 } 260 261 public MimeType getMimeTypeForUpdate() { 262 return getMimeType(ThreadSession.currentSession(), EntityPermission.READ_WRITE); 263 } 264 265 public void setMimeTypePK(MimeTypePK mimeTypePK) 266 throws PersistenceNotNullException, PersistenceReadOnlyException { 267 checkReadWrite(); 268 _value.setMimeTypePK(mimeTypePK); 269 } 270 271 public void setMimeType(MimeType entity) { 272 setMimeTypePK(entity == null? null: entity.getPrimaryKey()); 273 } 274 275 public boolean getMimeTypePKHasBeenModified() { 276 return _value.getMimeTypePKHasBeenModified(); 277 } 278 279 public ByteArray getBlob() { 280 return _value.getBlob(); 281 } 282 283 public void setBlob(ByteArray blob) 284 throws PersistenceNotNullException, PersistenceReadOnlyException { 285 checkReadWrite(); 286 _value.setBlob(blob); 287 } 288 289 public boolean getBlobHasBeenModified() { 290 return _value.getBlobHasBeenModified(); 291 } 292 293 public Long getFromTime() { 294 return _value.getFromTime(); 295 } 296 297 public void setFromTime(Long fromTime) 298 throws PersistenceNotNullException, PersistenceReadOnlyException { 299 checkReadWrite(); 300 _value.setFromTime(fromTime); 301 } 302 303 public boolean getFromTimeHasBeenModified() { 304 return _value.getFromTimeHasBeenModified(); 305 } 306 307 public Long getThruTime() { 308 return _value.getThruTime(); 309 } 310 311 public void setThruTime(Long thruTime) 312 throws PersistenceNotNullException, PersistenceReadOnlyException { 313 checkReadWrite(); 314 _value.setThruTime(thruTime); 315 } 316 317 public boolean getThruTimeHasBeenModified() { 318 return _value.getThruTimeHasBeenModified(); 319 } 320 321}