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 * Campaign.java 021 */ 022 023package com.echothree.model.data.campaign.server.entity; 024 025import com.echothree.model.data.campaign.common.pk.CampaignPK; 026 027import com.echothree.model.data.campaign.common.pk.CampaignDetailPK; 028 029import com.echothree.model.data.campaign.server.entity.CampaignDetail; 030 031import com.echothree.model.data.campaign.server.factory.CampaignDetailFactory; 032 033import com.echothree.model.data.campaign.common.pk.CampaignPK; 034 035import com.echothree.model.data.campaign.server.value.CampaignValue; 036 037import com.echothree.model.data.campaign.server.factory.CampaignFactory; 038 039import com.echothree.util.common.exception.PersistenceException; 040import com.echothree.util.common.exception.PersistenceDatabaseException; 041import com.echothree.util.common.exception.PersistenceNotNullException; 042import com.echothree.util.common.exception.PersistenceReadOnlyException; 043 044import com.echothree.util.common.persistence.BasePK; 045 046import com.echothree.util.common.persistence.type.ByteArray; 047 048import com.echothree.util.server.persistence.BaseEntity; 049import com.echothree.util.server.persistence.EntityPermission; 050import com.echothree.util.server.persistence.Session; 051import com.echothree.util.server.persistence.ThreadSession; 052 053import java.io.Serializable; 054 055public class Campaign 056 extends BaseEntity 057 implements Serializable { 058 059 private CampaignPK _pk; 060 private CampaignValue _value; 061 062 /** Creates a new instance of Campaign */ 063 public Campaign() 064 throws PersistenceException { 065 super(); 066 } 067 068 /** Creates a new instance of Campaign */ 069 public Campaign(CampaignValue value, EntityPermission entityPermission) { 070 super(entityPermission); 071 072 _value = value; 073 _pk = value.getPrimaryKey(); 074 } 075 076 @Override 077 public CampaignFactory getBaseFactoryInstance() { 078 return CampaignFactory.getInstance(); 079 } 080 081 @Override 082 public boolean hasBeenModified() { 083 return _value.hasBeenModified(); 084 } 085 086 @Override 087 public int hashCode() { 088 return _pk.hashCode(); 089 } 090 091 @Override 092 public String toString() { 093 return _pk.toString(); 094 } 095 096 @Override 097 public boolean equals(Object other) { 098 if(this == other) 099 return true; 100 101 if(other instanceof Campaign that) { 102 CampaignValue thatValue = that.getCampaignValue(); 103 return _value.equals(thatValue); 104 } else { 105 return false; 106 } 107 } 108 109 @Override 110 public void store() 111 throws PersistenceDatabaseException { 112 getBaseFactoryInstance().store(this); 113 } 114 115 @Override 116 public void remove() 117 throws PersistenceDatabaseException { 118 getBaseFactoryInstance().remove(this); 119 } 120 121 public CampaignValue getCampaignValue() { 122 return _value; 123 } 124 125 public void setCampaignValue(CampaignValue value) 126 throws PersistenceReadOnlyException { 127 checkReadWrite(); 128 _value = value; 129 } 130 131 @Override 132 public CampaignPK getPrimaryKey() { 133 return _pk; 134 } 135 136 public CampaignDetailPK getActiveDetailPK() { 137 return _value.getActiveDetailPK(); 138 } 139 140 public CampaignDetail getActiveDetail(EntityPermission entityPermission) { 141 CampaignDetailPK pk = getActiveDetailPK(); 142 CampaignDetail entity = pk == null? null: CampaignDetailFactory.getInstance().getEntityFromPK(entityPermission, pk); 143 144 return entity; 145 } 146 147 public CampaignDetail getActiveDetail() { 148 return getActiveDetail(EntityPermission.READ_ONLY); 149 } 150 151 public CampaignDetail getActiveDetailForUpdate() { 152 return getActiveDetail(EntityPermission.READ_WRITE); 153 } 154 155 public void setActiveDetailPK(CampaignDetailPK activeDetailPK) 156 throws PersistenceNotNullException, PersistenceReadOnlyException { 157 checkReadWrite(); 158 _value.setActiveDetailPK(activeDetailPK); 159 } 160 161 public void setActiveDetail(CampaignDetail entity) { 162 setActiveDetailPK(entity == null? null: entity.getPrimaryKey()); 163 } 164 165 public boolean getActiveDetailPKHasBeenModified() { 166 return _value.getActiveDetailPKHasBeenModified(); 167 } 168 169 public CampaignDetailPK getLastDetailPK() { 170 return _value.getLastDetailPK(); 171 } 172 173 public CampaignDetail getLastDetail(EntityPermission entityPermission) { 174 CampaignDetailPK pk = getLastDetailPK(); 175 CampaignDetail entity = pk == null? null: CampaignDetailFactory.getInstance().getEntityFromPK(entityPermission, pk); 176 177 return entity; 178 } 179 180 public CampaignDetail getLastDetail() { 181 return getLastDetail(EntityPermission.READ_ONLY); 182 } 183 184 public CampaignDetail getLastDetailForUpdate() { 185 return getLastDetail(EntityPermission.READ_WRITE); 186 } 187 188 public void setLastDetailPK(CampaignDetailPK lastDetailPK) 189 throws PersistenceNotNullException, PersistenceReadOnlyException { 190 checkReadWrite(); 191 _value.setLastDetailPK(lastDetailPK); 192 } 193 194 public void setLastDetail(CampaignDetail entity) { 195 setLastDetailPK(entity == null? null: entity.getPrimaryKey()); 196 } 197 198 public boolean getLastDetailPKHasBeenModified() { 199 return _value.getLastDetailPKHasBeenModified(); 200 } 201 202}