1 package com.indexdata.mkjsf.pazpar2.commands;
\r
3 import java.io.Serializable;
\r
5 import javax.enterprise.context.SessionScoped;
\r
6 import javax.inject.Named;
\r
8 import org.apache.log4j.Logger;
\r
10 import com.indexdata.mkjsf.pazpar2.Pz2Service;
\r
11 import com.indexdata.mkjsf.pazpar2.commands.sp.ServiceProxyCommands;
\r
12 import com.indexdata.mkjsf.utils.Utils;
\r
15 * Pazpar2Commands holds references to all Pazpar2 commands.
\r
17 * The Pazpar2Commands object itself is exposed to the UI as 'pzreq'.
\r
20 * When the UI request a command it will be retrieved from the current state
\r
21 * through the state manager, so that the command can trigger a mutation of
\r
22 * the state if the user/UI modifies its parameters.
\r
26 * <li>pzreq.show - will retrieve the show command for editing or execution
\r
27 * <li>pzreq.sp.auth - will retrieve the Service Proxy extension command 'auth'
\r
30 * @author Niels Erik
\r
33 @SessionScoped @Named
\r
34 public class Pazpar2Commands implements Serializable {
\r
36 private static final long serialVersionUID = -5172466320351302413L;
\r
37 private static Logger logger = Logger.getLogger(Pazpar2Commands.class);
\r
39 public static final String INIT = "init";
\r
40 public static final String PING = "ping";
\r
41 public static final String SETTINGS = "settings";
\r
42 public static final String SEARCH = "search";
\r
43 public static final String STAT = "stat";
\r
44 public static final String SHOW = "show";
\r
45 public static final String RECORD = "record";
\r
46 public static final String TERMLIST = "termlist";
\r
47 public static final String BYTARGET = "bytarget";
\r
48 private ServiceProxyCommands sp = null;
\r
50 public Pazpar2Commands() {
\r
51 logger.info("Initializing Pazpar2Commands [" + Utils.objectId(this) + "]");
\r
56 * @return init command from current state
\r
58 public InitCommand getInit() {
\r
59 return (InitCommand) (Pz2Service.get().getStateMgr().getCommand(INIT));
\r
64 * @return ping command from current state
\r
66 public PingCommand getPing() {
\r
67 return (PingCommand) (Pz2Service.get().getStateMgr().getCommand(PING));
\r
72 * @return settings command from current state
\r
74 public SettingsCommand getSettings() {
\r
75 return (SettingsCommand) (Pz2Service.get().getStateMgr().getCommand(SETTINGS));
\r
80 * @return search command from current state
\r
82 public SearchCommand getSearch() {
\r
83 return (SearchCommand) (Pz2Service.get().getStateMgr().getCommand(SEARCH));
\r
88 * @return stat command from current state
\r
90 public StatCommand getStat() {
\r
91 return (StatCommand) (Pz2Service.get().getStateMgr().getCommand(STAT));
\r
96 * @return show command from current state
\r
98 public ShowCommand getShow() {
\r
99 return (ShowCommand) (Pz2Service.get().getStateMgr().getCommand(SHOW));
\r
104 * @return record command from current state
\r
106 public RecordCommand getRecord() {
\r
107 return (RecordCommand) (Pz2Service.get().getStateMgr().getCommand(RECORD));
\r
112 * @return termlist command from current state
\r
114 public TermlistCommand getTermlist() {
\r
115 return (TermlistCommand) (Pz2Service.get().getStateMgr().getCommand(TERMLIST));
\r
120 * @return bytarget command from current state
\r
122 public BytargetCommand getBytarget() {
\r
123 return (BytargetCommand) (Pz2Service.get().getStateMgr().getCommand(BYTARGET));
\r
127 * Generically retrieves any command
\r
129 * @param name name of command to retrieve
\r
130 * @return command of the given type
\r
132 public Pazpar2Command getCommand(String name) {
\r
133 return Pz2Service.get().getStateMgr().getCommand(name);
\r
137 * Gets the object holding references to Service Proxy-only commands.
\r
140 public ServiceProxyCommands getSp() {
\r
142 sp = new ServiceProxyCommands(Pz2Service.get().getStateMgr());
\r