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.edit;
018
019import com.echothree.control.user.accounting.common.spec.ItemAccountingCategorySpec;
020import com.echothree.control.user.core.common.spec.EntityListItemSpec;
021import com.echothree.control.user.employee.common.spec.ResponsibilityTypeSpec;
022import com.echothree.control.user.employee.common.spec.SkillTypeSpec;
023import com.echothree.control.user.geo.common.spec.CountrySpec;
024import com.echothree.control.user.geo.common.spec.GeoCodeSpec;
025import com.echothree.control.user.item.common.spec.ItemCategorySpec;
026import com.echothree.control.user.payment.common.spec.PaymentMethodSpec;
027import com.echothree.control.user.payment.common.spec.PaymentProcessorSpec;
028import com.echothree.control.user.training.common.spec.TrainingClassSpec;
029import com.echothree.control.user.vendor.common.spec.ItemPurchasingCategorySpec;
030import com.echothree.control.user.workflow.common.spec.WorkflowStepSpec;
031
032public interface SelectorNodeEdit
033        extends EntityListItemSpec, ResponsibilityTypeSpec, SkillTypeSpec, TrainingClassSpec,
034        WorkflowStepSpec, ItemCategorySpec, ItemAccountingCategorySpec, ItemPurchasingCategorySpec, PaymentMethodSpec,
035        PaymentProcessorSpec, GeoCodeSpec, CountrySpec {
036    
037    String getSelectorNodeName();
038    void setSelectorNodeName(String selectorNodeName);
039    
040    String getIsRootSelectorNode();
041    void setIsRootSelectorNode(String isRootSelectorNode);
042    
043    String getNegate();
044    void setNegate(String negate);
045    
046    String getDescription();
047    void setDescription(String description);
048    
049    // For Boolean nodes:
050    String getSelectorBooleanTypeName();
051    void setSelectorBooleanTypeName(String selectorBooleanTypeName);
052    
053    String getLeftSelectorNodeName();
054    void setLeftSelectorNodeName(String leftSelectorNodeName);
055    
056    String getRightSelectorNodeName();
057    void setRightSelectorNodeName(String rightSelectorNodeName);
058    
059    // For Item*Category nodes:
060    String getCheckParents();
061    void setCheckParents(String checkParents);
062    
063}