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 * AssociateProgramDetail.java
021 */
022
023package com.echothree.model.data.associate.server.entity;
024
025import com.echothree.model.data.associate.common.pk.AssociateProgramDetailPK;
026
027import com.echothree.model.data.associate.common.pk.AssociateProgramPK;
028import com.echothree.model.data.sequence.common.pk.SequencePK;
029
030import com.echothree.model.data.associate.server.entity.AssociateProgram;
031import com.echothree.model.data.sequence.server.entity.Sequence;
032
033import com.echothree.model.data.associate.server.factory.AssociateProgramFactory;
034import com.echothree.model.data.sequence.server.factory.SequenceFactory;
035
036import com.echothree.model.data.associate.common.pk.AssociateProgramDetailPK;
037
038import com.echothree.model.data.associate.server.value.AssociateProgramDetailValue;
039
040import com.echothree.model.data.associate.server.factory.AssociateProgramDetailFactory;
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
058public class AssociateProgramDetail
059        extends BaseEntity
060        implements Serializable {
061    
062    private AssociateProgramDetailPK _pk;
063    private AssociateProgramDetailValue _value;
064    
065    /** Creates a new instance of AssociateProgramDetail */
066    public AssociateProgramDetail()
067            throws PersistenceException {
068        super();
069    }
070    
071    /** Creates a new instance of AssociateProgramDetail */
072    public AssociateProgramDetail(AssociateProgramDetailValue value, EntityPermission entityPermission) {
073        super(entityPermission);
074        
075        _value = value;
076        _pk = value.getPrimaryKey();
077    }
078    
079    @Override
080    public AssociateProgramDetailFactory getBaseFactoryInstance() {
081        return AssociateProgramDetailFactory.getInstance();
082    }
083    
084    @Override
085    public boolean hasBeenModified() {
086        return _value.hasBeenModified();
087    }
088    
089    @Override
090    public int hashCode() {
091        return _pk.hashCode();
092    }
093    
094    @Override
095    public String toString() {
096        return _pk.toString();
097    }
098    
099    @Override
100    public boolean equals(Object other) {
101        if(this == other)
102            return true;
103        
104        if(other instanceof AssociateProgramDetail) {
105            AssociateProgramDetail that = (AssociateProgramDetail)other;
106            
107            AssociateProgramDetailValue thatValue = that.getAssociateProgramDetailValue();
108            return _value.equals(thatValue);
109        } else {
110            return false;
111        }
112    }
113    
114    @Override
115    public void store(Session session)
116            throws PersistenceDatabaseException {
117        getBaseFactoryInstance().store(session, this);
118    }
119    
120    @Override
121    public void remove(Session session)
122            throws PersistenceDatabaseException {
123        getBaseFactoryInstance().remove(session, this);
124    }
125    
126    @Override
127    public void remove()
128            throws PersistenceDatabaseException {
129        getBaseFactoryInstance().remove(ThreadSession.currentSession(), this);
130    }
131    
132    public AssociateProgramDetailValue getAssociateProgramDetailValue() {
133        return _value;
134    }
135    
136    public void setAssociateProgramDetailValue(AssociateProgramDetailValue value)
137            throws PersistenceReadOnlyException {
138        checkReadWrite();
139        _value = value;
140    }
141    
142    @Override
143    public AssociateProgramDetailPK getPrimaryKey() {
144        return _pk;
145    }
146    
147    public AssociateProgramPK getAssociateProgramPK() {
148        return _value.getAssociateProgramPK();
149    }
150    
151    public AssociateProgram getAssociateProgram(Session session, EntityPermission entityPermission) {
152        AssociateProgramPK pk = getAssociateProgramPK();
153        AssociateProgram entity = pk == null? null: AssociateProgramFactory.getInstance().getEntityFromPK(session, entityPermission, pk);
154        
155        return entity;
156    }
157    
158    public AssociateProgram getAssociateProgram(EntityPermission entityPermission) {
159        return getAssociateProgram(ThreadSession.currentSession(), entityPermission);
160    }
161    
162    public AssociateProgram getAssociateProgram(Session session) {
163        return getAssociateProgram(session, EntityPermission.READ_ONLY);
164    }
165    
166    public AssociateProgram getAssociateProgram() {
167        return getAssociateProgram(ThreadSession.currentSession(), EntityPermission.READ_ONLY);
168    }
169    
170    public AssociateProgram getAssociateProgramForUpdate(Session session) {
171        return getAssociateProgram(session, EntityPermission.READ_WRITE);
172    }
173    
174    public AssociateProgram getAssociateProgramForUpdate() {
175        return getAssociateProgram(ThreadSession.currentSession(), EntityPermission.READ_WRITE);
176    }
177    
178    public void setAssociateProgramPK(AssociateProgramPK associateProgramPK)
179            throws PersistenceNotNullException, PersistenceReadOnlyException {
180        checkReadWrite();
181        _value.setAssociateProgramPK(associateProgramPK);
182    }
183    
184    public void setAssociateProgram(AssociateProgram entity) {
185        setAssociateProgramPK(entity == null? null: entity.getPrimaryKey());
186    }
187    
188    public boolean getAssociateProgramPKHasBeenModified() {
189        return _value.getAssociateProgramPKHasBeenModified();
190    }
191    
192    public String getAssociateProgramName() {
193        return _value.getAssociateProgramName();
194    }
195    
196    public void setAssociateProgramName(String associateProgramName)
197            throws PersistenceNotNullException, PersistenceReadOnlyException {
198        checkReadWrite();
199        _value.setAssociateProgramName(associateProgramName);
200    }
201    
202    public boolean getAssociateProgramNameHasBeenModified() {
203        return _value.getAssociateProgramNameHasBeenModified();
204    }
205    
206    public SequencePK getAssociateSequencePK() {
207        return _value.getAssociateSequencePK();
208    }
209    
210    public Sequence getAssociateSequence(Session session, EntityPermission entityPermission) {
211        SequencePK pk = getAssociateSequencePK();
212        Sequence entity = pk == null? null: SequenceFactory.getInstance().getEntityFromPK(session, entityPermission, pk);
213        
214        return entity;
215    }
216    
217    public Sequence getAssociateSequence(EntityPermission entityPermission) {
218        return getAssociateSequence(ThreadSession.currentSession(), entityPermission);
219    }
220    
221    public Sequence getAssociateSequence(Session session) {
222        return getAssociateSequence(session, EntityPermission.READ_ONLY);
223    }
224    
225    public Sequence getAssociateSequence() {
226        return getAssociateSequence(ThreadSession.currentSession(), EntityPermission.READ_ONLY);
227    }
228    
229    public Sequence getAssociateSequenceForUpdate(Session session) {
230        return getAssociateSequence(session, EntityPermission.READ_WRITE);
231    }
232    
233    public Sequence getAssociateSequenceForUpdate() {
234        return getAssociateSequence(ThreadSession.currentSession(), EntityPermission.READ_WRITE);
235    }
236    
237    public void setAssociateSequencePK(SequencePK associateSequencePK)
238            throws PersistenceNotNullException, PersistenceReadOnlyException {
239        checkReadWrite();
240        _value.setAssociateSequencePK(associateSequencePK);
241    }
242    
243    public void setAssociateSequence(Sequence entity) {
244        setAssociateSequencePK(entity == null? null: entity.getPrimaryKey());
245    }
246    
247    public boolean getAssociateSequencePKHasBeenModified() {
248        return _value.getAssociateSequencePKHasBeenModified();
249    }
250    
251    public SequencePK getAssociatePartyContactMechanismSequencePK() {
252        return _value.getAssociatePartyContactMechanismSequencePK();
253    }
254    
255    public Sequence getAssociatePartyContactMechanismSequence(Session session, EntityPermission entityPermission) {
256        SequencePK pk = getAssociatePartyContactMechanismSequencePK();
257        Sequence entity = pk == null? null: SequenceFactory.getInstance().getEntityFromPK(session, entityPermission, pk);
258        
259        return entity;
260    }
261    
262    public Sequence getAssociatePartyContactMechanismSequence(EntityPermission entityPermission) {
263        return getAssociatePartyContactMechanismSequence(ThreadSession.currentSession(), entityPermission);
264    }
265    
266    public Sequence getAssociatePartyContactMechanismSequence(Session session) {
267        return getAssociatePartyContactMechanismSequence(session, EntityPermission.READ_ONLY);
268    }
269    
270    public Sequence getAssociatePartyContactMechanismSequence() {
271        return getAssociatePartyContactMechanismSequence(ThreadSession.currentSession(), EntityPermission.READ_ONLY);
272    }
273    
274    public Sequence getAssociatePartyContactMechanismSequenceForUpdate(Session session) {
275        return getAssociatePartyContactMechanismSequence(session, EntityPermission.READ_WRITE);
276    }
277    
278    public Sequence getAssociatePartyContactMechanismSequenceForUpdate() {
279        return getAssociatePartyContactMechanismSequence(ThreadSession.currentSession(), EntityPermission.READ_WRITE);
280    }
281    
282    public void setAssociatePartyContactMechanismSequencePK(SequencePK associatePartyContactMechanismSequencePK)
283            throws PersistenceNotNullException, PersistenceReadOnlyException {
284        checkReadWrite();
285        _value.setAssociatePartyContactMechanismSequencePK(associatePartyContactMechanismSequencePK);
286    }
287    
288    public void setAssociatePartyContactMechanismSequence(Sequence entity) {
289        setAssociatePartyContactMechanismSequencePK(entity == null? null: entity.getPrimaryKey());
290    }
291    
292    public boolean getAssociatePartyContactMechanismSequencePKHasBeenModified() {
293        return _value.getAssociatePartyContactMechanismSequencePKHasBeenModified();
294    }
295    
296    public SequencePK getAssociateReferralSequencePK() {
297        return _value.getAssociateReferralSequencePK();
298    }
299    
300    public Sequence getAssociateReferralSequence(Session session, EntityPermission entityPermission) {
301        SequencePK pk = getAssociateReferralSequencePK();
302        Sequence entity = pk == null? null: SequenceFactory.getInstance().getEntityFromPK(session, entityPermission, pk);
303        
304        return entity;
305    }
306    
307    public Sequence getAssociateReferralSequence(EntityPermission entityPermission) {
308        return getAssociateReferralSequence(ThreadSession.currentSession(), entityPermission);
309    }
310    
311    public Sequence getAssociateReferralSequence(Session session) {
312        return getAssociateReferralSequence(session, EntityPermission.READ_ONLY);
313    }
314    
315    public Sequence getAssociateReferralSequence() {
316        return getAssociateReferralSequence(ThreadSession.currentSession(), EntityPermission.READ_ONLY);
317    }
318    
319    public Sequence getAssociateReferralSequenceForUpdate(Session session) {
320        return getAssociateReferralSequence(session, EntityPermission.READ_WRITE);
321    }
322    
323    public Sequence getAssociateReferralSequenceForUpdate() {
324        return getAssociateReferralSequence(ThreadSession.currentSession(), EntityPermission.READ_WRITE);
325    }
326    
327    public void setAssociateReferralSequencePK(SequencePK associateReferralSequencePK)
328            throws PersistenceNotNullException, PersistenceReadOnlyException {
329        checkReadWrite();
330        _value.setAssociateReferralSequencePK(associateReferralSequencePK);
331    }
332    
333    public void setAssociateReferralSequence(Sequence entity) {
334        setAssociateReferralSequencePK(entity == null? null: entity.getPrimaryKey());
335    }
336    
337    public boolean getAssociateReferralSequencePKHasBeenModified() {
338        return _value.getAssociateReferralSequencePKHasBeenModified();
339    }
340    
341    public Integer getItemIndirectSalePercent() {
342        return _value.getItemIndirectSalePercent();
343    }
344    
345    public void setItemIndirectSalePercent(Integer itemIndirectSalePercent)
346            throws PersistenceNotNullException, PersistenceReadOnlyException {
347        checkReadWrite();
348        _value.setItemIndirectSalePercent(itemIndirectSalePercent);
349    }
350    
351    public boolean getItemIndirectSalePercentHasBeenModified() {
352        return _value.getItemIndirectSalePercentHasBeenModified();
353    }
354    
355    public Integer getItemDirectSalePercent() {
356        return _value.getItemDirectSalePercent();
357    }
358    
359    public void setItemDirectSalePercent(Integer itemDirectSalePercent)
360            throws PersistenceNotNullException, PersistenceReadOnlyException {
361        checkReadWrite();
362        _value.setItemDirectSalePercent(itemDirectSalePercent);
363    }
364    
365    public boolean getItemDirectSalePercentHasBeenModified() {
366        return _value.getItemDirectSalePercentHasBeenModified();
367    }
368    
369    public Boolean getIsDefault() {
370        return _value.getIsDefault();
371    }
372    
373    public void setIsDefault(Boolean isDefault)
374            throws PersistenceNotNullException, PersistenceReadOnlyException {
375        checkReadWrite();
376        _value.setIsDefault(isDefault);
377    }
378    
379    public boolean getIsDefaultHasBeenModified() {
380        return _value.getIsDefaultHasBeenModified();
381    }
382    
383    public Integer getSortOrder() {
384        return _value.getSortOrder();
385    }
386    
387    public void setSortOrder(Integer sortOrder)
388            throws PersistenceNotNullException, PersistenceReadOnlyException {
389        checkReadWrite();
390        _value.setSortOrder(sortOrder);
391    }
392    
393    public boolean getSortOrderHasBeenModified() {
394        return _value.getSortOrderHasBeenModified();
395    }
396    
397    public Long getFromTime() {
398        return _value.getFromTime();
399    }
400    
401    public void setFromTime(Long fromTime)
402            throws PersistenceNotNullException, PersistenceReadOnlyException {
403        checkReadWrite();
404        _value.setFromTime(fromTime);
405    }
406    
407    public boolean getFromTimeHasBeenModified() {
408        return _value.getFromTimeHasBeenModified();
409    }
410    
411    public Long getThruTime() {
412        return _value.getThruTime();
413    }
414    
415    public void setThruTime(Long thruTime)
416            throws PersistenceNotNullException, PersistenceReadOnlyException {
417        checkReadWrite();
418        _value.setThruTime(thruTime);
419    }
420    
421    public boolean getThruTimeHasBeenModified() {
422        return _value.getThruTimeHasBeenModified();
423    }
424    
425}