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.communication.common; 018 019import com.echothree.control.user.communication.common.form.*; 020import com.echothree.model.data.user.common.pk.UserVisitPK; 021import com.echothree.util.common.command.CommandResult; 022 023public interface CommunicationService 024 extends CommunicationForms { 025 026 // ------------------------------------------------------------------------- 027 // Communication Event Role Types 028 // ------------------------------------------------------------------------- 029 030 CommandResult createCommunicationEventRoleType(UserVisitPK userVisitPK, CreateCommunicationEventRoleTypeForm form); 031 032 // ------------------------------------------------------------------------- 033 // Communication Event Role Type Descriptions 034 // ------------------------------------------------------------------------- 035 036 CommandResult createCommunicationEventRoleTypeDescription(UserVisitPK userVisitPK, CreateCommunicationEventRoleTypeDescriptionForm form); 037 038 // ------------------------------------------------------------------------- 039 // Communication Event Types 040 // ------------------------------------------------------------------------- 041 042 CommandResult createCommunicationEventType(UserVisitPK userVisitPK, CreateCommunicationEventTypeForm form); 043 044 // ------------------------------------------------------------------------- 045 // Communication Event Type Descriptions 046 // ------------------------------------------------------------------------- 047 048 CommandResult createCommunicationEventTypeDescription(UserVisitPK userVisitPK, CreateCommunicationEventTypeDescriptionForm form); 049 050 // ------------------------------------------------------------------------- 051 // Communication Event Purposes 052 // ------------------------------------------------------------------------- 053 054 CommandResult createCommunicationEventPurpose(UserVisitPK userVisitPK, CreateCommunicationEventPurposeForm form); 055 056 CommandResult getCommunicationEventPurposes(UserVisitPK userVisitPK, GetCommunicationEventPurposesForm form); 057 058 CommandResult getCommunicationEventPurpose(UserVisitPK userVisitPK, GetCommunicationEventPurposeForm form); 059 060 CommandResult getCommunicationEventPurposeChoices(UserVisitPK userVisitPK, GetCommunicationEventPurposeChoicesForm form); 061 062 CommandResult setDefaultCommunicationEventPurpose(UserVisitPK userVisitPK, SetDefaultCommunicationEventPurposeForm form); 063 064 CommandResult editCommunicationEventPurpose(UserVisitPK userVisitPK, EditCommunicationEventPurposeForm form); 065 066 CommandResult deleteCommunicationEventPurpose(UserVisitPK userVisitPK, DeleteCommunicationEventPurposeForm form); 067 068 // ------------------------------------------------------------------------- 069 // Communication Event Purpose Descriptions 070 // ------------------------------------------------------------------------- 071 072 CommandResult createCommunicationEventPurposeDescription(UserVisitPK userVisitPK, CreateCommunicationEventPurposeDescriptionForm form); 073 074 CommandResult getCommunicationEventPurposeDescriptions(UserVisitPK userVisitPK, GetCommunicationEventPurposeDescriptionsForm form); 075 076 CommandResult editCommunicationEventPurposeDescription(UserVisitPK userVisitPK, EditCommunicationEventPurposeDescriptionForm form); 077 078 CommandResult deleteCommunicationEventPurposeDescription(UserVisitPK userVisitPK, DeleteCommunicationEventPurposeDescriptionForm form); 079 080 // ------------------------------------------------------------------------- 081 // Communication Source Types 082 // ------------------------------------------------------------------------- 083 084 CommandResult createCommunicationSourceType(UserVisitPK userVisitPK, CreateCommunicationSourceTypeForm form); 085 086 // ------------------------------------------------------------------------- 087 // Communication Source Type Descriptions 088 // ------------------------------------------------------------------------- 089 090 CommandResult createCommunicationSourceTypeDescription(UserVisitPK userVisitPK, CreateCommunicationSourceTypeDescriptionForm form); 091 092 // ------------------------------------------------------------------------- 093 // Communication Sources 094 // ------------------------------------------------------------------------- 095 096 CommandResult createCommunicationSource(UserVisitPK userVisitPK, CreateCommunicationSourceForm form); 097 098 CommandResult getCommunicationSources(UserVisitPK userVisitPK, GetCommunicationSourcesForm form); 099 100 CommandResult getCommunicationSource(UserVisitPK userVisitPK, GetCommunicationSourceForm form); 101 102 CommandResult deleteCommunicationSource(UserVisitPK userVisitPK, DeleteCommunicationSourceForm form); 103 104 // ------------------------------------------------------------------------- 105 // Communication Source Descriptions 106 // ------------------------------------------------------------------------- 107 108 CommandResult createCommunicationSourceDescription(UserVisitPK userVisitPK, CreateCommunicationSourceDescriptionForm form); 109 110 CommandResult getCommunicationSourceDescriptions(UserVisitPK userVisitPK, GetCommunicationSourceDescriptionsForm form); 111 112 CommandResult editCommunicationSourceDescription(UserVisitPK userVisitPK, EditCommunicationSourceDescriptionForm form); 113 114 CommandResult deleteCommunicationSourceDescription(UserVisitPK userVisitPK, DeleteCommunicationSourceDescriptionForm form); 115 116 // ------------------------------------------------------------------------- 117 // Communication Events 118 // ------------------------------------------------------------------------- 119 120 CommandResult createCommunicationEvent(UserVisitPK userVisitPK, CreateCommunicationEventForm form); 121 122 CommandResult getCommunicationEvent(UserVisitPK userVisitPK, GetCommunicationEventForm form); 123 124 // ------------------------------------------------------------------------- 125 // Testing 126 // ------------------------------------------------------------------------- 127 128 String ping(); 129 130}