001// --------------------------------------------------------------------------------
002// Copyright 2002-2025 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.message.server;
018
019import com.echothree.control.user.message.common.MessageRemote;
020import com.echothree.control.user.message.common.form.*;
021import com.echothree.control.user.message.server.command.*;
022import com.echothree.model.data.user.common.pk.UserVisitPK;
023import com.echothree.util.common.command.CommandResult;
024import javax.ejb.Stateless;
025import javax.enterprise.inject.spi.CDI;
026
027@Stateless
028public class MessageBean
029        extends MessageFormsImpl
030        implements MessageRemote, MessageLocal {
031    
032    // -------------------------------------------------------------------------
033    //   Testing
034    // -------------------------------------------------------------------------
035    
036    @Override
037    public String ping() {
038        return "MessageBean is alive!";
039    }
040    
041    // -------------------------------------------------------------------------
042    //   Message Types
043    // -------------------------------------------------------------------------
044    
045    @Override
046    public CommandResult createMessageType(UserVisitPK userVisitPK, CreateMessageTypeForm form) {
047        return CDI.current().select(CreateMessageTypeCommand.class).get().run(userVisitPK, form);
048    }
049    
050    @Override
051    public CommandResult getMessageType(UserVisitPK userVisitPK, GetMessageTypeForm form) {
052        return CDI.current().select(GetMessageTypeCommand.class).get().run(userVisitPK, form);
053    }
054    
055    @Override
056    public CommandResult getMessageTypes(UserVisitPK userVisitPK, GetMessageTypesForm form) {
057        return CDI.current().select(GetMessageTypesCommand.class).get().run(userVisitPK, form);
058    }
059    
060    @Override
061    public CommandResult editMessageType(UserVisitPK userVisitPK, EditMessageTypeForm form) {
062        return CDI.current().select(EditMessageTypeCommand.class).get().run(userVisitPK, form);
063    }
064    
065    @Override
066    public CommandResult deleteMessageType(UserVisitPK userVisitPK, DeleteMessageTypeForm form) {
067        return CDI.current().select(DeleteMessageTypeCommand.class).get().run(userVisitPK, form);
068    }
069    
070    // -------------------------------------------------------------------------
071    //   Message Type Descriptions
072    // -------------------------------------------------------------------------
073    
074    @Override
075    public CommandResult createMessageTypeDescription(UserVisitPK userVisitPK, CreateMessageTypeDescriptionForm form) {
076        return CDI.current().select(CreateMessageTypeDescriptionCommand.class).get().run(userVisitPK, form);
077    }
078    
079    @Override
080    public CommandResult getMessageTypeDescriptions(UserVisitPK userVisitPK, GetMessageTypeDescriptionsForm form) {
081        return CDI.current().select(GetMessageTypeDescriptionsCommand.class).get().run(userVisitPK, form);
082    }
083    
084    @Override
085    public CommandResult editMessageTypeDescription(UserVisitPK userVisitPK, EditMessageTypeDescriptionForm form) {
086        return CDI.current().select(EditMessageTypeDescriptionCommand.class).get().run(userVisitPK, form);
087    }
088    
089    @Override
090    public CommandResult deleteMessageTypeDescription(UserVisitPK userVisitPK, DeleteMessageTypeDescriptionForm form) {
091        return CDI.current().select(DeleteMessageTypeDescriptionCommand.class).get().run(userVisitPK, form);
092    }
093    
094    // -------------------------------------------------------------------------
095    //   Messages
096    // -------------------------------------------------------------------------
097    
098    @Override
099    public CommandResult createMessage(UserVisitPK userVisitPK, CreateMessageForm form) {
100        return CDI.current().select(CreateMessageCommand.class).get().run(userVisitPK, form);
101    }
102    
103    @Override
104    public CommandResult getMessage(UserVisitPK userVisitPK, GetMessageForm form) {
105        return CDI.current().select(GetMessageCommand.class).get().run(userVisitPK, form);
106    }
107    
108    @Override
109    public CommandResult getMessages(UserVisitPK userVisitPK, GetMessagesForm form) {
110        return CDI.current().select(GetMessagesCommand.class).get().run(userVisitPK, form);
111    }
112    
113    @Override
114    public CommandResult deleteMessage(UserVisitPK userVisitPK, DeleteMessageForm form) {
115        return CDI.current().select(DeleteMessageCommand.class).get().run(userVisitPK, form);
116    }
117    
118    // -------------------------------------------------------------------------
119    //   Message Descriptions
120    // -------------------------------------------------------------------------
121    
122    @Override
123    public CommandResult createMessageDescription(UserVisitPK userVisitPK, CreateMessageDescriptionForm form) {
124        return CDI.current().select(CreateMessageDescriptionCommand.class).get().run(userVisitPK, form);
125    }
126    
127    @Override
128    public CommandResult getMessageDescriptions(UserVisitPK userVisitPK, GetMessageDescriptionsForm form) {
129        return CDI.current().select(GetMessageDescriptionsCommand.class).get().run(userVisitPK, form);
130    }
131    
132    @Override
133    public CommandResult editMessageDescription(UserVisitPK userVisitPK, EditMessageDescriptionForm form) {
134        return CDI.current().select(EditMessageDescriptionCommand.class).get().run(userVisitPK, form);
135    }
136    
137    @Override
138    public CommandResult deleteMessageDescription(UserVisitPK userVisitPK, DeleteMessageDescriptionForm form) {
139        return CDI.current().select(DeleteMessageDescriptionCommand.class).get().run(userVisitPK, form);
140    }
141    
142    // -------------------------------------------------------------------------
143    //   Entity Messages
144    // -------------------------------------------------------------------------
145    
146    @Override
147    public CommandResult createEntityMessage(UserVisitPK userVisitPK, CreateEntityMessageForm form) {
148        return CDI.current().select(CreateEntityMessageCommand.class).get().run(userVisitPK, form);
149    }
150    
151    @Override
152    public CommandResult getEntityMessage(UserVisitPK userVisitPK, GetEntityMessageForm form) {
153        return CDI.current().select(GetEntityMessageCommand.class).get().run(userVisitPK, form);
154    }
155    
156    @Override
157    public CommandResult getEntityMessages(UserVisitPK userVisitPK, GetEntityMessagesForm form) {
158        return CDI.current().select(GetEntityMessagesCommand.class).get().run(userVisitPK, form);
159    }
160    
161    @Override
162    public CommandResult deleteEntityMessage(UserVisitPK userVisitPK, DeleteEntityMessageForm form) {
163        return CDI.current().select(DeleteEntityMessageCommand.class).get().run(userVisitPK, form);
164    }
165    
166}