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 * ShippingMethodDetail.java 021 */ 022 023package com.echothree.model.data.shipping.server.entity; 024 025import com.echothree.model.data.shipping.common.pk.ShippingMethodDetailPK; 026 027import com.echothree.model.data.shipping.common.pk.ShippingMethodPK; 028import com.echothree.model.data.selector.common.pk.SelectorPK; 029 030import com.echothree.model.data.shipping.server.entity.ShippingMethod; 031import com.echothree.model.data.selector.server.entity.Selector; 032 033import com.echothree.model.data.shipping.server.factory.ShippingMethodFactory; 034import com.echothree.model.data.selector.server.factory.SelectorFactory; 035 036import com.echothree.model.data.shipping.common.pk.ShippingMethodDetailPK; 037 038import com.echothree.model.data.shipping.server.value.ShippingMethodDetailValue; 039 040import com.echothree.model.data.shipping.server.factory.ShippingMethodDetailFactory; 041 042import com.echothree.util.common.exception.PersistenceException; 043import com.echothree.util.common.exception.PersistenceDatabaseException; 044import com.echothree.util.common.exception.PersistenceNotNullException; 045import com.echothree.util.common.exception.PersistenceReadOnlyException; 046 047import com.echothree.util.common.persistence.BasePK; 048 049import com.echothree.util.common.persistence.type.ByteArray; 050 051import com.echothree.util.server.persistence.BaseEntity; 052import com.echothree.util.server.persistence.EntityPermission; 053import com.echothree.util.server.persistence.Session; 054import com.echothree.util.server.persistence.ThreadSession; 055 056import java.io.Serializable; 057 058import javax.annotation.Nonnull; 059import javax.annotation.Nullable; 060 061public class ShippingMethodDetail 062 extends BaseEntity 063 implements Serializable { 064 065 private ShippingMethodDetailPK _pk; 066 private ShippingMethodDetailValue _value; 067 068 /** Creates a new instance of ShippingMethodDetail */ 069 public ShippingMethodDetail() 070 throws PersistenceException { 071 super(); 072 } 073 074 /** Creates a new instance of ShippingMethodDetail */ 075 public ShippingMethodDetail(ShippingMethodDetailValue value, EntityPermission entityPermission) { 076 super(entityPermission); 077 078 _value = value; 079 _pk = value.getPrimaryKey(); 080 } 081 082 @Override 083 @Nonnull 084 public ShippingMethodDetailFactory getBaseFactoryInstance() { 085 return ShippingMethodDetailFactory.getInstance(); 086 } 087 088 @Override 089 public boolean hasBeenModified() { 090 return _value.hasBeenModified(); 091 } 092 093 @Override 094 public int hashCode() { 095 return _pk.hashCode(); 096 } 097 098 @Override 099 @Nonnull 100 public String toString() { 101 return _pk.toString(); 102 } 103 104 @Override 105 public boolean equals(Object other) { 106 if(this == other) 107 return true; 108 109 if(other instanceof ShippingMethodDetail that) { 110 ShippingMethodDetailValue thatValue = that.getShippingMethodDetailValue(); 111 return _value.equals(thatValue); 112 } else { 113 return false; 114 } 115 } 116 117 @Override 118 public void store() 119 throws PersistenceDatabaseException { 120 getBaseFactoryInstance().store(this); 121 } 122 123 @Override 124 public void remove() 125 throws PersistenceDatabaseException { 126 getBaseFactoryInstance().remove(this); 127 } 128 129 @Nonnull 130 public ShippingMethodDetailValue getShippingMethodDetailValue() { 131 return _value; 132 } 133 134 public void setShippingMethodDetailValue(@Nonnull ShippingMethodDetailValue value) 135 throws PersistenceReadOnlyException { 136 checkReadWrite(); 137 _value = value; 138 } 139 140 @Override 141 @Nonnull 142 public ShippingMethodDetailPK getPrimaryKey() { 143 return _pk; 144 } 145 146 @Nonnull 147 public ShippingMethodPK getShippingMethodPK() { 148 return _value.getShippingMethodPK(); 149 } 150 151 @Nonnull 152 public ShippingMethod getShippingMethod(EntityPermission entityPermission) { 153 return ShippingMethodFactory.getInstance().getEntityFromPK(entityPermission, getShippingMethodPK()); 154 } 155 156 @Nonnull 157 public ShippingMethod getShippingMethod() { 158 return getShippingMethod(EntityPermission.READ_ONLY); 159 } 160 161 @Nonnull 162 public ShippingMethod getShippingMethodForUpdate() { 163 return getShippingMethod(EntityPermission.READ_WRITE); 164 } 165 166 public void setShippingMethodPK(@Nonnull ShippingMethodPK shippingMethodPK) 167 throws PersistenceNotNullException, PersistenceReadOnlyException { 168 checkReadWrite(); 169 _value.setShippingMethodPK(shippingMethodPK); 170 } 171 172 public void setShippingMethod(@Nonnull ShippingMethod entity) { 173 setShippingMethodPK(entity == null ? null : entity.getPrimaryKey()); 174 } 175 176 public boolean getShippingMethodPKHasBeenModified() { 177 return _value.getShippingMethodPKHasBeenModified(); 178 } 179 180 @Nonnull 181 public String getShippingMethodName() { 182 return _value.getShippingMethodName(); 183 } 184 185 public void setShippingMethodName(@Nonnull String shippingMethodName) 186 throws PersistenceNotNullException, PersistenceReadOnlyException { 187 checkReadWrite(); 188 _value.setShippingMethodName(shippingMethodName); 189 } 190 191 public boolean getShippingMethodNameHasBeenModified() { 192 return _value.getShippingMethodNameHasBeenModified(); 193 } 194 195 @Nullable 196 public SelectorPK getGeoCodeSelectorPK() { 197 return _value.getGeoCodeSelectorPK(); 198 } 199 200 @Nullable 201 public Selector getGeoCodeSelector(EntityPermission entityPermission) { 202 SelectorPK pk = getGeoCodeSelectorPK(); 203 Selector entity = pk == null? null: SelectorFactory.getInstance().getEntityFromPK(entityPermission, pk); 204 205 return entity; 206 } 207 208 @Nullable 209 public Selector getGeoCodeSelector() { 210 return getGeoCodeSelector(EntityPermission.READ_ONLY); 211 } 212 213 @Nullable 214 public Selector getGeoCodeSelectorForUpdate() { 215 return getGeoCodeSelector(EntityPermission.READ_WRITE); 216 } 217 218 public void setGeoCodeSelectorPK(@Nullable SelectorPK geoCodeSelectorPK) 219 throws PersistenceNotNullException, PersistenceReadOnlyException { 220 checkReadWrite(); 221 _value.setGeoCodeSelectorPK(geoCodeSelectorPK); 222 } 223 224 public void setGeoCodeSelector(@Nullable Selector entity) { 225 setGeoCodeSelectorPK(entity == null ? null : entity.getPrimaryKey()); 226 } 227 228 public boolean getGeoCodeSelectorPKHasBeenModified() { 229 return _value.getGeoCodeSelectorPKHasBeenModified(); 230 } 231 232 @Nullable 233 public SelectorPK getItemSelectorPK() { 234 return _value.getItemSelectorPK(); 235 } 236 237 @Nullable 238 public Selector getItemSelector(EntityPermission entityPermission) { 239 SelectorPK pk = getItemSelectorPK(); 240 Selector entity = pk == null? null: SelectorFactory.getInstance().getEntityFromPK(entityPermission, pk); 241 242 return entity; 243 } 244 245 @Nullable 246 public Selector getItemSelector() { 247 return getItemSelector(EntityPermission.READ_ONLY); 248 } 249 250 @Nullable 251 public Selector getItemSelectorForUpdate() { 252 return getItemSelector(EntityPermission.READ_WRITE); 253 } 254 255 public void setItemSelectorPK(@Nullable SelectorPK itemSelectorPK) 256 throws PersistenceNotNullException, PersistenceReadOnlyException { 257 checkReadWrite(); 258 _value.setItemSelectorPK(itemSelectorPK); 259 } 260 261 public void setItemSelector(@Nullable Selector entity) { 262 setItemSelectorPK(entity == null ? null : entity.getPrimaryKey()); 263 } 264 265 public boolean getItemSelectorPKHasBeenModified() { 266 return _value.getItemSelectorPKHasBeenModified(); 267 } 268 269 @Nonnull 270 public Integer getSortOrder() { 271 return _value.getSortOrder(); 272 } 273 274 public void setSortOrder(@Nonnull Integer sortOrder) 275 throws PersistenceNotNullException, PersistenceReadOnlyException { 276 checkReadWrite(); 277 _value.setSortOrder(sortOrder); 278 } 279 280 public boolean getSortOrderHasBeenModified() { 281 return _value.getSortOrderHasBeenModified(); 282 } 283 284 @Nonnull 285 public Long getFromTime() { 286 return _value.getFromTime(); 287 } 288 289 public void setFromTime(@Nonnull Long fromTime) 290 throws PersistenceNotNullException, PersistenceReadOnlyException { 291 checkReadWrite(); 292 _value.setFromTime(fromTime); 293 } 294 295 public boolean getFromTimeHasBeenModified() { 296 return _value.getFromTimeHasBeenModified(); 297 } 298 299 @Nonnull 300 public Long getThruTime() { 301 return _value.getThruTime(); 302 } 303 304 public void setThruTime(@Nonnull Long thruTime) 305 throws PersistenceNotNullException, PersistenceReadOnlyException { 306 checkReadWrite(); 307 _value.setThruTime(thruTime); 308 } 309 310 public boolean getThruTimeHasBeenModified() { 311 return _value.getThruTimeHasBeenModified(); 312 } 313 314}