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.selector.common;
018
019import com.echothree.control.user.selector.common.form.*;
020import com.echothree.model.data.user.common.pk.UserVisitPK;
021import com.echothree.util.common.command.CommandResult;
022
023public interface SelectorService
024        extends SelectorForms {
025    
026    // --------------------------------------------------------------------------------
027    //   Testing
028    // --------------------------------------------------------------------------------
029    
030    String ping();
031    
032    // --------------------------------------------------------------------------------
033    //   Selector Kinds
034    // --------------------------------------------------------------------------------
035
036    CommandResult createSelectorKind(UserVisitPK userVisitPK, CreateSelectorKindForm form);
037
038    CommandResult getSelectorKinds(UserVisitPK userVisitPK, GetSelectorKindsForm form);
039
040    CommandResult getSelectorKind(UserVisitPK userVisitPK, GetSelectorKindForm form);
041
042    CommandResult getSelectorKindChoices(UserVisitPK userVisitPK, GetSelectorKindChoicesForm form);
043
044    CommandResult setDefaultSelectorKind(UserVisitPK userVisitPK, SetDefaultSelectorKindForm form);
045
046    CommandResult editSelectorKind(UserVisitPK userVisitPK, EditSelectorKindForm form);
047
048    CommandResult deleteSelectorKind(UserVisitPK userVisitPK, DeleteSelectorKindForm form);
049
050    // --------------------------------------------------------------------------------
051    //   Selector Kind Descriptions
052    // --------------------------------------------------------------------------------
053
054    CommandResult createSelectorKindDescription(UserVisitPK userVisitPK, CreateSelectorKindDescriptionForm form);
055
056    CommandResult getSelectorKindDescriptions(UserVisitPK userVisitPK, GetSelectorKindDescriptionsForm form);
057
058    CommandResult getSelectorKindDescription(UserVisitPK userVisitPK, GetSelectorKindDescriptionForm form);
059
060    CommandResult editSelectorKindDescription(UserVisitPK userVisitPK, EditSelectorKindDescriptionForm form);
061
062    CommandResult deleteSelectorKindDescription(UserVisitPK userVisitPK, DeleteSelectorKindDescriptionForm form);
063
064    // --------------------------------------------------------------------------------
065    //   Selector Types
066    // --------------------------------------------------------------------------------
067
068    CommandResult createSelectorType(UserVisitPK userVisitPK, CreateSelectorTypeForm form);
069
070    CommandResult getSelectorTypes(UserVisitPK userVisitPK, GetSelectorTypesForm form);
071
072    CommandResult getSelectorType(UserVisitPK userVisitPK, GetSelectorTypeForm form);
073
074    CommandResult getSelectorTypeChoices(UserVisitPK userVisitPK, GetSelectorTypeChoicesForm form);
075
076    CommandResult setDefaultSelectorType(UserVisitPK userVisitPK, SetDefaultSelectorTypeForm form);
077
078    CommandResult editSelectorType(UserVisitPK userVisitPK, EditSelectorTypeForm form);
079
080    CommandResult deleteSelectorType(UserVisitPK userVisitPK, DeleteSelectorTypeForm form);
081
082    // --------------------------------------------------------------------------------
083    //   Selector Type Descriptions
084    // --------------------------------------------------------------------------------
085
086    CommandResult createSelectorTypeDescription(UserVisitPK userVisitPK, CreateSelectorTypeDescriptionForm form);
087
088    CommandResult getSelectorTypeDescriptions(UserVisitPK userVisitPK, GetSelectorTypeDescriptionsForm form);
089
090    CommandResult getSelectorTypeDescription(UserVisitPK userVisitPK, GetSelectorTypeDescriptionForm form);
091
092    CommandResult editSelectorTypeDescription(UserVisitPK userVisitPK, EditSelectorTypeDescriptionForm form);
093
094    CommandResult deleteSelectorTypeDescription(UserVisitPK userVisitPK, DeleteSelectorTypeDescriptionForm form);
095
096    // --------------------------------------------------------------------------------
097    //   Selector Boolean Types
098    // --------------------------------------------------------------------------------
099    
100    CommandResult createSelectorBooleanType(UserVisitPK userVisitPK, CreateSelectorBooleanTypeForm form);
101    
102    CommandResult getSelectorBooleanTypeChoices(UserVisitPK userVisitPK, GetSelectorBooleanTypeChoicesForm form);
103    
104    // --------------------------------------------------------------------------------
105    //   Selector Boolean Type Descriptions
106    // --------------------------------------------------------------------------------
107    
108    CommandResult createSelectorBooleanTypeDescription(UserVisitPK userVisitPK, CreateSelectorBooleanTypeDescriptionForm form);
109    
110    // --------------------------------------------------------------------------------
111    //   Selector Comparison Types
112    // --------------------------------------------------------------------------------
113    
114    CommandResult createSelectorComparisonType(UserVisitPK userVisitPK, CreateSelectorComparisonTypeForm form);
115    
116    CommandResult getSelectorComparisonTypeChoices(UserVisitPK userVisitPK, GetSelectorComparisonTypeChoicesForm form);
117    
118    // --------------------------------------------------------------------------------
119    //   Selector Comparison Type Descriptions
120    // --------------------------------------------------------------------------------
121    
122    CommandResult createSelectorComparisonTypeDescription(UserVisitPK userVisitPK, CreateSelectorComparisonTypeDescriptionForm form);
123    
124    // --------------------------------------------------------------------------------
125    //   Selector Node Types
126    // --------------------------------------------------------------------------------
127    
128    CommandResult createSelectorNodeType(UserVisitPK userVisitPK, CreateSelectorNodeTypeForm form);
129    
130    CommandResult getSelectorNodeType(UserVisitPK userVisitPK, GetSelectorNodeTypeForm form);
131    
132    CommandResult getSelectorNodeTypes(UserVisitPK userVisitPK, GetSelectorNodeTypesForm form);
133    
134    // --------------------------------------------------------------------------------
135    //   Selector Node Type Descriptions
136    // --------------------------------------------------------------------------------
137    
138    CommandResult createSelectorNodeTypeDescription(UserVisitPK userVisitPK, CreateSelectorNodeTypeDescriptionForm form);
139    
140    // --------------------------------------------------------------------------------
141    //   Selector Node Type Uses
142    // --------------------------------------------------------------------------------
143    
144    CommandResult createSelectorNodeTypeUse(UserVisitPK userVisitPK, CreateSelectorNodeTypeUseForm form);
145    
146    // --------------------------------------------------------------------------------
147    //   Selector Text Search Types
148    // --------------------------------------------------------------------------------
149    
150    CommandResult createSelectorTextSearchType(UserVisitPK userVisitPK, CreateSelectorTextSearchTypeForm form);
151    
152    CommandResult getSelectorTextSearchTypeChoices(UserVisitPK userVisitPK, GetSelectorTextSearchTypeChoicesForm form);
153    
154    // --------------------------------------------------------------------------------
155    //   Selector Text Search Type Descriptions
156    // --------------------------------------------------------------------------------
157    
158    CommandResult createSelectorTextSearchTypeDescription(UserVisitPK userVisitPK, CreateSelectorTextSearchTypeDescriptionForm form);
159    
160    // --------------------------------------------------------------------------------
161    //   Selectors
162    // --------------------------------------------------------------------------------
163    
164    CommandResult createSelector(UserVisitPK userVisitPK, CreateSelectorForm form);
165    
166    CommandResult getSelectorChoices(UserVisitPK userVisitPK, GetSelectorChoicesForm form);
167    
168    CommandResult getSelectors(UserVisitPK userVisitPK, GetSelectorsForm form);
169    
170    CommandResult getSelector(UserVisitPK userVisitPK, GetSelectorForm form);
171    
172    CommandResult setDefaultSelector(UserVisitPK userVisitPK, SetDefaultSelectorForm form);
173    
174    CommandResult editSelector(UserVisitPK userVisitPK, EditSelectorForm form);
175    
176    CommandResult deleteSelector(UserVisitPK userVisitPK, DeleteSelectorForm form);
177    
178    // --------------------------------------------------------------------------------
179    //   Selector Descriptions
180    // --------------------------------------------------------------------------------
181    
182    CommandResult createSelectorDescription(UserVisitPK userVisitPK, CreateSelectorDescriptionForm form);
183    
184    CommandResult getSelectorDescriptions(UserVisitPK userVisitPK, GetSelectorDescriptionsForm form);
185    
186    CommandResult editSelectorDescription(UserVisitPK userVisitPK, EditSelectorDescriptionForm form);
187    
188    CommandResult deleteSelectorDescription(UserVisitPK userVisitPK, DeleteSelectorDescriptionForm form);
189    
190    // --------------------------------------------------------------------------------
191    //   Selector Nodes
192    // --------------------------------------------------------------------------------
193    
194    CommandResult createSelectorNode(UserVisitPK userVisitPK, CreateSelectorNodeForm form);
195    
196    CommandResult getSelectorNodeChoices(UserVisitPK userVisitPK, GetSelectorNodeChoicesForm form);
197    
198    CommandResult getSelectorNode(UserVisitPK userVisitPK, GetSelectorNodeForm form);
199    
200    CommandResult getSelectorNodes(UserVisitPK userVisitPK, GetSelectorNodesForm form);
201    
202    CommandResult setRootSelectorNode(UserVisitPK userVisitPK, SetRootSelectorNodeForm form);
203    
204    CommandResult deleteSelectorNode(UserVisitPK userVisitPK, DeleteSelectorNodeForm form);
205    
206    // --------------------------------------------------------------------------------
207    //   Selector Node Descriptions
208    // --------------------------------------------------------------------------------
209    
210    CommandResult createSelectorNodeDescription(UserVisitPK userVisitPK, CreateSelectorNodeDescriptionForm form);
211    
212    CommandResult getSelectorNodeDescriptions(UserVisitPK userVisitPK, GetSelectorNodeDescriptionsForm form);
213    
214    CommandResult editSelectorNodeDescription(UserVisitPK userVisitPK, EditSelectorNodeDescriptionForm form);
215    
216    CommandResult deleteSelectorNodeDescription(UserVisitPK userVisitPK, DeleteSelectorNodeDescriptionForm form);
217    
218    // --------------------------------------------------------------------------------
219    //   Selector Parties
220    // --------------------------------------------------------------------------------
221    
222    CommandResult getSelectorParties(UserVisitPK userVisitPK, GetSelectorPartiesForm form);
223    
224    // -------------------------------------------------------------------------
225    //   Utilities
226    // -------------------------------------------------------------------------
227    
228    CommandResult evaluateSelectors(UserVisitPK userVisitPK, EvaluateSelectorsForm form);
229    
230}