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.term.server;
018
019import com.echothree.control.user.term.common.TermRemote;
020import com.echothree.control.user.term.common.form.*;
021import com.echothree.control.user.term.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 TermBean
028        extends TermFormsImpl
029        implements TermRemote, TermLocal {
030    
031    // -------------------------------------------------------------------------
032    //   Testing
033    // -------------------------------------------------------------------------
034    
035    @Override
036    public String ping() {
037        return "TermBean is alive!";
038    }
039    
040    // -------------------------------------------------------------------------
041    //   Term Types
042    // -------------------------------------------------------------------------
043    
044    @Override
045    public CommandResult createTermType(UserVisitPK userVisitPK, CreateTermTypeForm form) {
046        return new CreateTermTypeCommand(userVisitPK, form).run();
047    }
048    
049    @Override
050    public CommandResult getTermTypes(UserVisitPK userVisitPK, GetTermTypesForm form) {
051        return new GetTermTypesCommand(userVisitPK, form).run();
052    }
053    
054    @Override
055    public CommandResult getTermType(UserVisitPK userVisitPK, GetTermTypeForm form) {
056        return new GetTermTypeCommand(userVisitPK, form).run();
057    }
058    
059    @Override
060    public CommandResult getTermTypeChoices(UserVisitPK userVisitPK, GetTermTypeChoicesForm form) {
061        return new GetTermTypeChoicesCommand(userVisitPK, form).run();
062    }
063    
064    // -------------------------------------------------------------------------
065    //   Term Type Descriptions
066    // -------------------------------------------------------------------------
067    
068    @Override
069    public CommandResult createTermTypeDescription(UserVisitPK userVisitPK, CreateTermTypeDescriptionForm form) {
070        return new CreateTermTypeDescriptionCommand(userVisitPK, form).run();
071    }
072    
073    // -------------------------------------------------------------------------
074    //   Terms
075    // -------------------------------------------------------------------------
076    
077    @Override
078    public CommandResult createTerm(UserVisitPK userVisitPK, CreateTermForm form) {
079        return new CreateTermCommand(userVisitPK, form).run();
080    }
081    
082    @Override
083    public CommandResult getTerms(UserVisitPK userVisitPK, GetTermsForm form) {
084        return new GetTermsCommand(userVisitPK, form).run();
085    }
086    
087    @Override
088    public CommandResult getTerm(UserVisitPK userVisitPK, GetTermForm form) {
089        return new GetTermCommand(userVisitPK, form).run();
090    }
091    
092    @Override
093    public CommandResult getTermChoices(UserVisitPK userVisitPK, GetTermChoicesForm form) {
094        return new GetTermChoicesCommand(userVisitPK, form).run();
095    }
096    
097    @Override
098    public CommandResult setDefaultTerm(UserVisitPK userVisitPK, SetDefaultTermForm form) {
099        return new SetDefaultTermCommand(userVisitPK, form).run();
100    }
101    
102    @Override
103    public CommandResult deleteTerm(UserVisitPK userVisitPK, DeleteTermForm form) {
104        return new DeleteTermCommand(userVisitPK, form).run();
105    }
106    
107    // -------------------------------------------------------------------------
108    //   Term Descriptions
109    // -------------------------------------------------------------------------
110    
111    @Override
112    public CommandResult createTermDescription(UserVisitPK userVisitPK, CreateTermDescriptionForm form) {
113        return new CreateTermDescriptionCommand(userVisitPK, form).run();
114    }
115    
116    @Override
117    public CommandResult getTermDescriptions(UserVisitPK userVisitPK, GetTermDescriptionsForm form) {
118        return new GetTermDescriptionsCommand(userVisitPK, form).run();
119    }
120    
121    @Override
122    public CommandResult editTermDescription(UserVisitPK userVisitPK, EditTermDescriptionForm form) {
123        return new EditTermDescriptionCommand(userVisitPK, form).run();
124    }
125    
126    @Override
127    public CommandResult deleteTermDescription(UserVisitPK userVisitPK, DeleteTermDescriptionForm form) {
128        return new DeleteTermDescriptionCommand(userVisitPK, form).run();
129    }
130    
131    // -------------------------------------------------------------------------
132    //   Customer Type Credit Limits
133    // -------------------------------------------------------------------------
134    
135    @Override
136    public CommandResult createCustomerTypeCreditLimit(UserVisitPK userVisitPK, CreateCustomerTypeCreditLimitForm form) {
137        return new CreateCustomerTypeCreditLimitCommand(userVisitPK, form).run();
138    }
139    
140    @Override
141    public CommandResult editCustomerTypeCreditLimit(UserVisitPK userVisitPK, EditCustomerTypeCreditLimitForm form) {
142        return new EditCustomerTypeCreditLimitCommand(userVisitPK, form).run();
143    }
144    
145    @Override
146    public CommandResult getCustomerTypeCreditLimits(UserVisitPK userVisitPK, GetCustomerTypeCreditLimitsForm form) {
147        return new GetCustomerTypeCreditLimitsCommand(userVisitPK, form).run();
148    }
149    
150    @Override
151    public CommandResult deleteCustomerTypeCreditLimit(UserVisitPK userVisitPK, DeleteCustomerTypeCreditLimitForm form) {
152        return new DeleteCustomerTypeCreditLimitCommand(userVisitPK, form).run();
153    }
154    
155    // -------------------------------------------------------------------------
156    //   Party Credit Limits
157    // -------------------------------------------------------------------------
158    
159    @Override
160    public CommandResult createPartyCreditLimit(UserVisitPK userVisitPK, CreatePartyCreditLimitForm form) {
161        return new CreatePartyCreditLimitCommand(userVisitPK, form).run();
162    }
163    
164    @Override
165    public CommandResult editPartyCreditLimit(UserVisitPK userVisitPK, EditPartyCreditLimitForm form) {
166        return new EditPartyCreditLimitCommand(userVisitPK, form).run();
167    }
168    
169    @Override
170    public CommandResult getPartyCreditLimits(UserVisitPK userVisitPK, GetPartyCreditLimitsForm form) {
171        return new GetPartyCreditLimitsCommand(userVisitPK, form).run();
172    }
173    
174    @Override
175    public CommandResult deletePartyCreditLimit(UserVisitPK userVisitPK, DeletePartyCreditLimitForm form) {
176        return new DeletePartyCreditLimitCommand(userVisitPK, form).run();
177    }
178    
179    // -------------------------------------------------------------------------
180    //   Party Terms
181    // -------------------------------------------------------------------------
182    
183    @Override
184    public CommandResult editPartyTerm(UserVisitPK userVisitPK, EditPartyTermForm form) {
185        return new EditPartyTermCommand(userVisitPK, form).run();
186    }
187    
188}