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.track.server; 018 019import com.echothree.control.user.track.common.TrackRemote; 020import com.echothree.control.user.track.common.form.*; 021import com.echothree.control.user.track.common.result.*; 022import com.echothree.control.user.track.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 TrackBean 031 extends TrackFormsImpl 032 implements TrackRemote, TrackLocal { 033 034 // ------------------------------------------------------------------------- 035 // Testing 036 // ------------------------------------------------------------------------- 037 038 @Override 039 public String ping() { 040 return "TrackBean is alive!"; 041 } 042 043 // -------------------------------------------------------------------------------- 044 // Tracks 045 // -------------------------------------------------------------------------------- 046 047 @Override 048 public CommandResult<CreateTrackResult> createTrack(UserVisitPK userVisitPK, CreateTrackForm form) { 049 return CDI.current().select(CreateTrackCommand.class).get().run(userVisitPK, form); 050 } 051 052 @Override 053 public CommandResult<GetTrackChoicesResult> getTrackChoices(UserVisitPK userVisitPK, GetTrackChoicesForm form) { 054 return CDI.current().select(GetTrackChoicesCommand.class).get().run(userVisitPK, form); 055 } 056 057 @Override 058 public CommandResult<GetTrackResult> getTrack(UserVisitPK userVisitPK, GetTrackForm form) { 059 return CDI.current().select(GetTrackCommand.class).get().run(userVisitPK, form); 060 } 061 062 @Override 063 public CommandResult<GetTracksResult> getTracks(UserVisitPK userVisitPK, GetTracksForm form) { 064 return CDI.current().select(GetTracksCommand.class).get().run(userVisitPK, form); 065 } 066 067 @Override 068 public CommandResult<VoidResult> setDefaultTrack(UserVisitPK userVisitPK, SetDefaultTrackForm form) { 069 return CDI.current().select(SetDefaultTrackCommand.class).get().run(userVisitPK, form); 070 } 071 072 @Override 073 public CommandResult<GetTrackStatusChoicesResult> getTrackStatusChoices(UserVisitPK userVisitPK, GetTrackStatusChoicesForm form) { 074 return CDI.current().select(GetTrackStatusChoicesCommand.class).get().run(userVisitPK, form); 075 } 076 077 @Override 078 public CommandResult<VoidResult> setTrackStatus(UserVisitPK userVisitPK, SetTrackStatusForm form) { 079 return CDI.current().select(SetTrackStatusCommand.class).get().run(userVisitPK, form); 080 } 081 082 @Override 083 public CommandResult<EditTrackResult> editTrack(UserVisitPK userVisitPK, EditTrackForm form) { 084 return CDI.current().select(EditTrackCommand.class).get().run(userVisitPK, form); 085 } 086 087 @Override 088 public CommandResult<VoidResult> deleteTrack(UserVisitPK userVisitPK, DeleteTrackForm form) { 089 return CDI.current().select(DeleteTrackCommand.class).get().run(userVisitPK, form); 090 } 091 092 // -------------------------------------------------------------------------------- 093 // Track Descriptions 094 // -------------------------------------------------------------------------------- 095 096 @Override 097 public CommandResult<VoidResult> createTrackDescription(UserVisitPK userVisitPK, CreateTrackDescriptionForm form) { 098 return CDI.current().select(CreateTrackDescriptionCommand.class).get().run(userVisitPK, form); 099 } 100 101 @Override 102 public CommandResult<GetTrackDescriptionResult> getTrackDescription(UserVisitPK userVisitPK, GetTrackDescriptionForm form) { 103 return CDI.current().select(GetTrackDescriptionCommand.class).get().run(userVisitPK, form); 104 } 105 106 @Override 107 public CommandResult<GetTrackDescriptionsResult> getTrackDescriptions(UserVisitPK userVisitPK, GetTrackDescriptionsForm form) { 108 return CDI.current().select(GetTrackDescriptionsCommand.class).get().run(userVisitPK, form); 109 } 110 111 @Override 112 public CommandResult<EditTrackDescriptionResult> editTrackDescription(UserVisitPK userVisitPK, EditTrackDescriptionForm form) { 113 return CDI.current().select(EditTrackDescriptionCommand.class).get().run(userVisitPK, form); 114 } 115 116 @Override 117 public CommandResult<VoidResult> deleteTrackDescription(UserVisitPK userVisitPK, DeleteTrackDescriptionForm form) { 118 return CDI.current().select(DeleteTrackDescriptionCommand.class).get().run(userVisitPK, form); 119 } 120 121 // -------------------------------------------------------------------------------- 122 // User Visit Tracks 123 // -------------------------------------------------------------------------------- 124 125 @Override 126 public CommandResult<VoidResult> createUserVisitTrack(UserVisitPK userVisitPK, CreateUserVisitTrackForm form) { 127 return CDI.current().select(CreateUserVisitTrackCommand.class).get().run(userVisitPK, form); 128 } 129 130}