X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fcom%2Findexdata%2Fmkjsf%2Fpazpar2%2Fcommands%2FPazpar2Commands.java;h=b847e1776080ba7d09d5047027125428d0787b5d;hb=969f879c807d127cbf47c5656771fcf5adc27a02;hp=9e04d6e13ea4878249ccf41a7063b8f812be3772;hpb=ccb28ae8d5d46d29c40bd8b1637522c212b80636;p=mkjsf-moved-to-github.git diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Pazpar2Commands.java b/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Pazpar2Commands.java index 9e04d6e..b847e17 100644 --- a/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Pazpar2Commands.java +++ b/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Pazpar2Commands.java @@ -2,22 +2,40 @@ package com.indexdata.mkjsf.pazpar2.commands; import java.io.Serializable; -import javax.annotation.PostConstruct; import javax.enterprise.context.SessionScoped; -import javax.inject.Inject; import javax.inject.Named; import org.apache.log4j.Logger; -import com.indexdata.mkjsf.pazpar2.state.StateManager; +import com.indexdata.mkjsf.pazpar2.Pz2Service; +import com.indexdata.mkjsf.pazpar2.commands.sp.ServiceProxyCommands; import com.indexdata.mkjsf.utils.Utils; -@Named("pzreq") @SessionScoped +/** + * Pazpar2Commands holds references to all Pazpar2 commands. + *
+ * The Pazpar2Commands object itself is exposed to the UI as pzreq
.
+ *
+ * When the UI request a command it will be retrieved from the current state + * through the state manager, so that the command can trigger a mutation of + * the state if the user/UI modifies its parameters. + *
+ *Examples:
+ *pzreq.show
- will retrieve the show command for editing or execution
+ * pzreq.sp.auth
- will retrieve the Service Proxy extension command 'auth'
+ * pzreq.init
+ *
+ * @return init command from current state
+ */
public InitCommand getInit() {
- return (InitCommand) (stateMgr.getCommand(INIT));
+ return (InitCommand) (Pz2Service.get().getStateMgr().getCommand(INIT));
}
-
+
+ /**
+ * ping command - referenced from UI as pzreq.ping
+ *
+ * @return ping command from current state
+ */
public PingCommand getPing() {
- return (PingCommand) (stateMgr.getCommand(PING));
+ return (PingCommand) (Pz2Service.get().getStateMgr().getCommand(PING));
}
+ /**
+ * settings command - referenced from UI as pzreq.settings
+ *
+ * @return settings command from current state
+ */
public SettingsCommand getSettings() {
- return (SettingsCommand) (stateMgr.getCommand(SETTINGS));
+ return (SettingsCommand) (Pz2Service.get().getStateMgr().getCommand(SETTINGS));
}
+ /**
+ *
+ * @return search command from current state
+ */
public SearchCommand getSearch() {
- return (SearchCommand) (stateMgr.getCommand(SEARCH));
+ return (SearchCommand) (Pz2Service.get().getStateMgr().getCommand(SEARCH));
}
+ /**
+ *
+ * @return stat command from current state
+ */
public StatCommand getStat() {
- return (StatCommand) (stateMgr.getCommand(STAT));
+ return (StatCommand) (Pz2Service.get().getStateMgr().getCommand(STAT));
}
+ /**
+ *
+ * @return show command from current state
+ */
public ShowCommand getShow() {
- return (ShowCommand) (stateMgr.getCommand(SHOW));
+ return (ShowCommand) (Pz2Service.get().getStateMgr().getCommand(SHOW));
}
+ /**
+ *
+ * @return record command from current state
+ */
public RecordCommand getRecord() {
- return (RecordCommand) (stateMgr.getCommand(RECORD));
+ return (RecordCommand) (Pz2Service.get().getStateMgr().getCommand(RECORD));
}
+ /**
+ *
+ * @return termlist command from current state
+ */
public TermlistCommand getTermlist() {
- return (TermlistCommand) (stateMgr.getCommand(TERMLIST));
+ return (TermlistCommand) (Pz2Service.get().getStateMgr().getCommand(TERMLIST));
}
+ /**
+ *
+ * @return bytarget command from current state
+ */
public BytargetCommand getBytarget() {
- return (BytargetCommand) (stateMgr.getCommand(BYTARGET));
+ return (BytargetCommand) (Pz2Service.get().getStateMgr().getCommand(BYTARGET));
+ }
+
+ /**
+ * Generically retrieves any command
+ *
+ * @param name name of command to retrieve
+ * @return command of the given type
+ */
+ public Pazpar2Command getCommand(String name) {
+ return Pz2Service.get().getStateMgr().getCommand(name);
}
- public Pazpar2Command getCommand(String name) {
- return stateMgr.getCommand(name);
+ /**
+ * Gets the object holding references to Service Proxy-only commands.
+ * @return
+ */
+ public ServiceProxyCommands getSp() {
+ if (sp == null) {
+ sp = new ServiceProxyCommands(Pz2Service.get().getStateMgr());
+ }
+ return sp;
}
}