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
017package com.echothree.control.user.carrier.common;
018
019import com.echothree.control.user.carrier.common.form.*;
020import com.echothree.control.user.carrier.common.result.*;
021import com.echothree.model.data.user.common.pk.UserVisitPK;
022import com.echothree.util.common.command.CommandResult;
023import com.echothree.util.common.command.VoidResult;
024
025public interface CarrierService
026        extends CarrierForms {
027    
028    // -------------------------------------------------------------------------
029    //   Testing
030    // -------------------------------------------------------------------------
031    
032    String ping();
033    
034    // -------------------------------------------------------------------------
035    //   Carrier Types
036    // -------------------------------------------------------------------------
037    
038    CommandResult<VoidResult> createCarrierType(UserVisitPK userVisitPK, CreateCarrierTypeForm form);
039    
040    CommandResult<GetCarrierTypesResult> getCarrierTypes(UserVisitPK userVisitPK, GetCarrierTypesForm form);
041    
042    CommandResult<GetCarrierTypeChoicesResult> getCarrierTypeChoices(UserVisitPK userVisitPK, GetCarrierTypeChoicesForm form);
043    
044    // -------------------------------------------------------------------------
045    //   Carrier Type Descriptions
046    // -------------------------------------------------------------------------
047    
048    CommandResult<VoidResult> createCarrierTypeDescription(UserVisitPK userVisitPK, CreateCarrierTypeDescriptionForm form);
049    
050    // -------------------------------------------------------------------------
051    //   Carriers
052    // -------------------------------------------------------------------------
053    
054    CommandResult<CreateCarrierResult> createCarrier(UserVisitPK userVisitPK, CreateCarrierForm form);
055    
056    CommandResult<GetCarrierResult> getCarrier(UserVisitPK userVisitPK, GetCarrierForm form);
057    
058    CommandResult<GetCarriersResult> getCarriers(UserVisitPK userVisitPK, GetCarriersForm form);
059    
060    CommandResult<GetCarrierChoicesResult> getCarrierChoices(UserVisitPK userVisitPK, GetCarrierChoicesForm form);
061
062    CommandResult<VoidResult> setDefaultCarrier(UserVisitPK userVisitPK, SetDefaultCarrierForm form);
063    
064    CommandResult<VoidResult> deleteCarrier(UserVisitPK userVisitPK, DeleteCarrierForm form);
065    
066    // -------------------------------------------------------------------------
067    //   Carrier Services
068    // -------------------------------------------------------------------------
069    
070    CommandResult<VoidResult> createCarrierService(UserVisitPK userVisitPK, CreateCarrierServiceForm form);
071    
072    CommandResult<GetCarrierServiceResult> getCarrierService(UserVisitPK userVisitPK, GetCarrierServiceForm form);
073    
074    CommandResult<GetCarrierServicesResult> getCarrierServices(UserVisitPK userVisitPK, GetCarrierServicesForm form);
075    
076    CommandResult<GetCarrierServiceChoicesResult> getCarrierServiceChoices(UserVisitPK userVisitPK, GetCarrierServiceChoicesForm form);
077    
078    CommandResult<VoidResult> setDefaultCarrierService(UserVisitPK userVisitPK, SetDefaultCarrierServiceForm form);
079    
080    CommandResult<EditCarrierServiceResult> editCarrierService(UserVisitPK userVisitPK, EditCarrierServiceForm form);
081    
082    CommandResult<VoidResult> deleteCarrierService(UserVisitPK userVisitPK, DeleteCarrierServiceForm form);
083    
084    // -------------------------------------------------------------------------
085    //   Carrier Service Descriptions
086    // -------------------------------------------------------------------------
087    
088    CommandResult<VoidResult> createCarrierServiceDescription(UserVisitPK userVisitPK, CreateCarrierServiceDescriptionForm form);
089    
090    CommandResult<GetCarrierServiceDescriptionResult> getCarrierServiceDescription(UserVisitPK userVisitPK, GetCarrierServiceDescriptionForm form);
091
092    CommandResult<GetCarrierServiceDescriptionsResult> getCarrierServiceDescriptions(UserVisitPK userVisitPK, GetCarrierServiceDescriptionsForm form);
093
094    CommandResult<EditCarrierServiceDescriptionResult> editCarrierServiceDescription(UserVisitPK userVisitPK, EditCarrierServiceDescriptionForm form);
095    
096    CommandResult<VoidResult> deleteCarrierServiceDescription(UserVisitPK userVisitPK, DeleteCarrierServiceDescriptionForm form);
097    
098    // -------------------------------------------------------------------------
099    //   Carrier Options
100    // -------------------------------------------------------------------------
101    
102    CommandResult<VoidResult> createCarrierOption(UserVisitPK userVisitPK, CreateCarrierOptionForm form);
103    
104    CommandResult<GetCarrierOptionResult> getCarrierOption(UserVisitPK userVisitPK, GetCarrierOptionForm form);
105    
106    CommandResult<GetCarrierOptionsResult> getCarrierOptions(UserVisitPK userVisitPK, GetCarrierOptionsForm form);
107    
108    CommandResult<GetCarrierOptionChoicesResult> getCarrierOptionChoices(UserVisitPK userVisitPK, GetCarrierOptionChoicesForm form);
109    
110    CommandResult<VoidResult> setDefaultCarrierOption(UserVisitPK userVisitPK, SetDefaultCarrierOptionForm form);
111    
112    CommandResult<EditCarrierOptionResult> editCarrierOption(UserVisitPK userVisitPK, EditCarrierOptionForm form);
113    
114    CommandResult<VoidResult> deleteCarrierOption(UserVisitPK userVisitPK, DeleteCarrierOptionForm form);
115    
116    // -------------------------------------------------------------------------
117    //   Carrier Option Descriptions
118    // -------------------------------------------------------------------------
119    
120    CommandResult<VoidResult> createCarrierOptionDescription(UserVisitPK userVisitPK, CreateCarrierOptionDescriptionForm form);
121    
122    CommandResult<GetCarrierOptionDescriptionResult> getCarrierOptionDescription(UserVisitPK userVisitPK, GetCarrierOptionDescriptionForm form);
123
124    CommandResult<GetCarrierOptionDescriptionsResult> getCarrierOptionDescriptions(UserVisitPK userVisitPK, GetCarrierOptionDescriptionsForm form);
125
126    CommandResult<EditCarrierOptionDescriptionResult> editCarrierOptionDescription(UserVisitPK userVisitPK, EditCarrierOptionDescriptionForm form);
127    
128    CommandResult<VoidResult> deleteCarrierOptionDescription(UserVisitPK userVisitPK, DeleteCarrierOptionDescriptionForm form);
129    
130    // -------------------------------------------------------------------------
131    //   Carrier Service Options
132    // -------------------------------------------------------------------------
133    
134    CommandResult<VoidResult> createCarrierServiceOption(UserVisitPK userVisitPK, CreateCarrierServiceOptionForm form);
135    
136    CommandResult<GetCarrierServiceOptionResult> getCarrierServiceOption(UserVisitPK userVisitPK, GetCarrierServiceOptionForm form);
137    
138    CommandResult<GetCarrierServiceOptionsResult> getCarrierServiceOptions(UserVisitPK userVisitPK, GetCarrierServiceOptionsForm form);
139    
140    CommandResult<EditCarrierServiceOptionResult> editCarrierServiceOption(UserVisitPK userVisitPK, EditCarrierServiceOptionForm form);
141    
142    CommandResult<VoidResult> deleteCarrierServiceOption(UserVisitPK userVisitPK, DeleteCarrierServiceOptionForm form);
143    
144    // --------------------------------------------------------------------------------
145    //   Party Carriers
146    // --------------------------------------------------------------------------------
147
148    CommandResult<VoidResult> createPartyCarrier(UserVisitPK userVisitPK, CreatePartyCarrierForm form);
149
150    CommandResult<GetPartyCarrierResult> getPartyCarrier(UserVisitPK userVisitPK, GetPartyCarrierForm form);
151
152    CommandResult<GetPartyCarriersResult> getPartyCarriers(UserVisitPK userVisitPK, GetPartyCarriersForm form);
153
154    CommandResult<VoidResult> deletePartyCarrier(UserVisitPK userVisitPK, DeletePartyCarrierForm form);
155
156    // --------------------------------------------------------------------------------
157    //   Party Carrier Accounts
158    // --------------------------------------------------------------------------------
159
160    CommandResult<VoidResult> createPartyCarrierAccount(UserVisitPK userVisitPK, CreatePartyCarrierAccountForm form);
161
162    CommandResult<GetPartyCarrierAccountResult> getPartyCarrierAccount(UserVisitPK userVisitPK, GetPartyCarrierAccountForm form);
163
164    CommandResult<GetPartyCarrierAccountsResult> getPartyCarrierAccounts(UserVisitPK userVisitPK, GetPartyCarrierAccountsForm form);
165
166    CommandResult<EditPartyCarrierAccountResult> editPartyCarrierAccount(UserVisitPK userVisitPK, EditPartyCarrierAccountForm form);
167
168    CommandResult<VoidResult> deletePartyCarrierAccount(UserVisitPK userVisitPK, DeletePartyCarrierAccountForm form);
169
170}