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
017package com.echothree.control.user.associate.server;
018
019import com.echothree.control.user.associate.common.AssociateRemote;
020import com.echothree.control.user.associate.common.form.*;
021import com.echothree.control.user.associate.server.command.*;
022import com.echothree.model.data.user.common.pk.UserVisitPK;
023import com.echothree.util.common.command.CommandResult;
024import javax.ejb.Stateless;
025
026@Stateless
027public class AssociateBean
028        extends AssociateFormsImpl
029        implements AssociateRemote, AssociateLocal {
030    
031    // -------------------------------------------------------------------------
032    //   Testing
033    // -------------------------------------------------------------------------
034    
035    @Override
036    public String ping() {
037        return "AssociateBean is alive!";
038    }
039    
040    // -------------------------------------------------------------------------
041    //   Associate Programs
042    // -------------------------------------------------------------------------
043    
044    @Override
045    public CommandResult createAssociateProgram(UserVisitPK userVisitPK, CreateAssociateProgramForm form) {
046        return new CreateAssociateProgramCommand(userVisitPK, form).run();
047    }
048    
049    @Override
050    public CommandResult getAssociateProgram(UserVisitPK userVisitPK, GetAssociateProgramForm form) {
051        return new GetAssociateProgramCommand(userVisitPK, form).run();
052    }
053    
054    @Override
055    public CommandResult getAssociatePrograms(UserVisitPK userVisitPK, GetAssociateProgramsForm form) {
056        return new GetAssociateProgramsCommand(userVisitPK, form).run();
057    }
058    
059    @Override
060    public CommandResult getAssociateProgramChoices(UserVisitPK userVisitPK, GetAssociateProgramChoicesForm form) {
061        return new GetAssociateProgramChoicesCommand(userVisitPK, form).run();
062    }
063    
064    @Override
065    public CommandResult setDefaultAssociateProgram(UserVisitPK userVisitPK, SetDefaultAssociateProgramForm form) {
066        return new SetDefaultAssociateProgramCommand(userVisitPK, form).run();
067    }
068    
069    @Override
070    public CommandResult editAssociateProgram(UserVisitPK userVisitPK, EditAssociateProgramForm form) {
071        return new EditAssociateProgramCommand(userVisitPK, form).run();
072    }
073    
074    @Override
075    public CommandResult deleteAssociateProgram(UserVisitPK userVisitPK, DeleteAssociateProgramForm form) {
076        return new DeleteAssociateProgramCommand(userVisitPK, form).run();
077    }
078    
079    // -------------------------------------------------------------------------
080    //   Associate Program Descriptions
081    // -------------------------------------------------------------------------
082    
083    @Override
084    public CommandResult createAssociateProgramDescription(UserVisitPK userVisitPK, CreateAssociateProgramDescriptionForm form) {
085        return new CreateAssociateProgramDescriptionCommand(userVisitPK, form).run();
086    }
087    
088    @Override
089    public CommandResult getAssociateProgramDescriptions(UserVisitPK userVisitPK, GetAssociateProgramDescriptionsForm form) {
090        return new GetAssociateProgramDescriptionsCommand(userVisitPK, form).run();
091    }
092    
093    @Override
094    public CommandResult editAssociateProgramDescription(UserVisitPK userVisitPK, EditAssociateProgramDescriptionForm form) {
095        return new EditAssociateProgramDescriptionCommand(userVisitPK, form).run();
096    }
097    
098    @Override
099    public CommandResult deleteAssociateProgramDescription(UserVisitPK userVisitPK, DeleteAssociateProgramDescriptionForm form) {
100        return new DeleteAssociateProgramDescriptionCommand(userVisitPK, form).run();
101    }
102    
103    // -------------------------------------------------------------------------
104    //   Associates
105    // -------------------------------------------------------------------------
106    
107    @Override
108    public CommandResult createAssociate(UserVisitPK userVisitPK, CreateAssociateForm form) {
109        return new CreateAssociateCommand(userVisitPK, form).run();
110    }
111    
112    @Override
113    public CommandResult getAssociate(UserVisitPK userVisitPK, GetAssociateForm form) {
114        return new GetAssociateCommand(userVisitPK, form).run();
115    }
116    
117    @Override
118    public CommandResult getAssociates(UserVisitPK userVisitPK, GetAssociatesForm form) {
119        return new GetAssociatesCommand(userVisitPK, form).run();
120    }
121    
122    @Override
123    public CommandResult getAssociateChoices(UserVisitPK userVisitPK, GetAssociateChoicesForm form) {
124        return new GetAssociateChoicesCommand(userVisitPK, form).run();
125    }
126    
127    @Override
128    public CommandResult deleteAssociate(UserVisitPK userVisitPK, DeleteAssociateForm form) {
129        return new DeleteAssociateCommand(userVisitPK, form).run();
130    }
131    
132    // -------------------------------------------------------------------------
133    //   Associate Contact Mechanisms
134    // -------------------------------------------------------------------------
135    
136    @Override
137    public CommandResult createAssociatePartyContactMechanism(UserVisitPK userVisitPK, CreateAssociatePartyContactMechanismForm form) {
138        return new CreateAssociatePartyContactMechanismCommand(userVisitPK, form).run();
139    }
140    
141    @Override
142    public CommandResult getAssociatePartyContactMechanism(UserVisitPK userVisitPK, GetAssociatePartyContactMechanismForm form) {
143        return new GetAssociatePartyContactMechanismCommand(userVisitPK, form).run();
144    }
145    
146    @Override
147    public CommandResult getAssociatePartyContactMechanisms(UserVisitPK userVisitPK, GetAssociatePartyContactMechanismsForm form) {
148        return new GetAssociatePartyContactMechanismsCommand(userVisitPK, form).run();
149    }
150    
151    @Override
152    public CommandResult getAssociatePartyContactMechanismChoices(UserVisitPK userVisitPK, GetAssociatePartyContactMechanismChoicesForm form) {
153        return new GetAssociatePartyContactMechanismChoicesCommand(userVisitPK, form).run();
154    }
155    
156    @Override
157    public CommandResult setDefaultAssociatePartyContactMechanism(UserVisitPK userVisitPK, SetDefaultAssociatePartyContactMechanismForm form) {
158        return new SetDefaultAssociatePartyContactMechanismCommand(userVisitPK, form).run();
159    }
160    
161    @Override
162    public CommandResult deleteAssociatePartyContactMechanism(UserVisitPK userVisitPK, DeleteAssociatePartyContactMechanismForm form) {
163        return new DeleteAssociatePartyContactMechanismCommand(userVisitPK, form).run();
164    }
165    
166    // -------------------------------------------------------------------------
167    //   Associate Referrals
168    // -------------------------------------------------------------------------
169    
170    @Override
171    public CommandResult getAssociateReferral(UserVisitPK userVisitPK, GetAssociateReferralForm form) {
172        return new GetAssociateReferralCommand(userVisitPK, form).run();
173    }
174    
175    @Override
176    public CommandResult getAssociateReferrals(UserVisitPK userVisitPK, GetAssociateReferralsForm form) {
177        return new GetAssociateReferralsCommand(userVisitPK, form).run();
178    }
179    
180    @Override
181    public CommandResult deleteAssociateReferral(UserVisitPK userVisitPK, DeleteAssociateReferralForm form) {
182        return new DeleteAssociateReferralCommand(userVisitPK, form).run();
183    }
184    
185}