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.queue.server; 018 019import com.echothree.control.user.queue.common.QueueRemote; 020import com.echothree.control.user.queue.common.form.*; 021import com.echothree.control.user.queue.common.result.*; 022import com.echothree.control.user.queue.server.command.*; 023import com.echothree.model.data.user.common.pk.UserVisitPK; 024import com.echothree.util.common.command.CommandResult; 025import com.echothree.util.common.command.VoidResult; 026import javax.ejb.Stateless; 027import javax.enterprise.inject.spi.CDI; 028 029@Stateless 030public class QueueBean 031 extends QueueFormsImpl 032 implements QueueRemote, QueueLocal { 033 034 // ------------------------------------------------------------------------- 035 // Testing 036 // ------------------------------------------------------------------------- 037 038 @Override 039 public String ping() { 040 return "QueueBean is alive!"; 041 } 042 043 // -------------------------------------------------------------------------------- 044 // Queue Types 045 // -------------------------------------------------------------------------------- 046 047 @Override 048 public CommandResult<VoidResult> createQueueType(UserVisitPK userVisitPK, CreateQueueTypeForm form) { 049 return CDI.current().select(CreateQueueTypeCommand.class).get().run(userVisitPK, form); 050 } 051 052 @Override 053 public CommandResult<GetQueueTypeChoicesResult> getQueueTypeChoices(UserVisitPK userVisitPK, GetQueueTypeChoicesForm form) { 054 return CDI.current().select(GetQueueTypeChoicesCommand.class).get().run(userVisitPK, form); 055 } 056 057 @Override 058 public CommandResult<GetQueueTypeResult> getQueueType(UserVisitPK userVisitPK, GetQueueTypeForm form) { 059 return CDI.current().select(GetQueueTypeCommand.class).get().run(userVisitPK, form); 060 } 061 062 @Override 063 public CommandResult<GetQueueTypesResult> getQueueTypes(UserVisitPK userVisitPK, GetQueueTypesForm form) { 064 return CDI.current().select(GetQueueTypesCommand.class).get().run(userVisitPK, form); 065 } 066 067 @Override 068 public CommandResult<VoidResult> setDefaultQueueType(UserVisitPK userVisitPK, SetDefaultQueueTypeForm form) { 069 return CDI.current().select(SetDefaultQueueTypeCommand.class).get().run(userVisitPK, form); 070 } 071 072 @Override 073 public CommandResult<EditQueueTypeResult> editQueueType(UserVisitPK userVisitPK, EditQueueTypeForm form) { 074 return CDI.current().select(EditQueueTypeCommand.class).get().run(userVisitPK, form); 075 } 076 077 @Override 078 public CommandResult<VoidResult> deleteQueueType(UserVisitPK userVisitPK, DeleteQueueTypeForm form) { 079 return CDI.current().select(DeleteQueueTypeCommand.class).get().run(userVisitPK, form); 080 } 081 082 // -------------------------------------------------------------------------------- 083 // Queue Type Descriptions 084 // -------------------------------------------------------------------------------- 085 086 @Override 087 public CommandResult<VoidResult> createQueueTypeDescription(UserVisitPK userVisitPK, CreateQueueTypeDescriptionForm form) { 088 return CDI.current().select(CreateQueueTypeDescriptionCommand.class).get().run(userVisitPK, form); 089 } 090 091 @Override 092 public CommandResult<GetQueueTypeDescriptionResult> getQueueTypeDescription(UserVisitPK userVisitPK, GetQueueTypeDescriptionForm form) { 093 return CDI.current().select(GetQueueTypeDescriptionCommand.class).get().run(userVisitPK, form); 094 } 095 096 @Override 097 public CommandResult<GetQueueTypeDescriptionsResult> getQueueTypeDescriptions(UserVisitPK userVisitPK, GetQueueTypeDescriptionsForm form) { 098 return CDI.current().select(GetQueueTypeDescriptionsCommand.class).get().run(userVisitPK, form); 099 } 100 101 @Override 102 public CommandResult<EditQueueTypeDescriptionResult> editQueueTypeDescription(UserVisitPK userVisitPK, EditQueueTypeDescriptionForm form) { 103 return CDI.current().select(EditQueueTypeDescriptionCommand.class).get().run(userVisitPK, form); 104 } 105 106 @Override 107 public CommandResult<VoidResult> deleteQueueTypeDescription(UserVisitPK userVisitPK, DeleteQueueTypeDescriptionForm form) { 108 return CDI.current().select(DeleteQueueTypeDescriptionCommand.class).get().run(userVisitPK, form); 109 } 110 111}