1 package com.indexdata.mkjsf.pazpar2.commands;
\r
3 import com.indexdata.mkjsf.pazpar2.commands.sp.ServiceProxyCommand;
\r
4 import com.indexdata.mkjsf.pazpar2.commands.sp.ShowCommandSp;
\r
8 * <b><code>show</code></b> Pazpar2 command, referenced as: <code>pzreq.show</code>
\r
10 * @author Niels Erik
\r
13 public class ShowCommand extends Pazpar2Command implements ServiceProxyCommand {
\r
15 private static final long serialVersionUID = -8242768313266051307L;
\r
17 public ShowCommand() {
\r
19 setParameterInState(new CommandParameter("start","=","0"));
\r
23 * Sets Pazpar2 parameter <code>sort</code>. See Pazpar2 documentation for details.
\r
25 public void setSort (String sort) {
\r
26 setParameter(new CommandParameter("sort","=",sort));
\r
30 * Gets parameter value for <code>sort</cod>
\r
32 public String getSort () {
\r
33 return getParameter("sort") != null ? getParameter("sort").value : "relevance";
\r
37 * Sets the number of records that pazpar2 should show at a time. Is
\r
38 * followed by an update of the show data object from pazpar2.
\r
40 * To be used by the UI for paging. After setting page size the parts
\r
41 * of the UI that displays 'show' data should be rendered.
\r
43 * @param perPageOption i.e. 10, default is 20.
\r
45 public void setPageSize (String perPageOption) {
\r
46 setParameters(new CommandParameter("num","=",perPageOption),
\r
47 new CommandParameter("start","=",0));
\r
51 * Retrieves the currently defined number of items to show at a time
\r
53 * @return number of result records that will be shown from pazpar2
\r
55 public String getPageSize () {
\r
56 return getParameter("num") != null ? getParameter("num").value : "20";
\r
60 * Sets Pazpar2 parameter <code>start</code>. See Pazpar2 documentation for details.
\r
62 public void setStart (int start) {
\r
63 setParameter(new CommandParameter("start","=",start));
\r
67 * Retrieves the sequence number of the record that pazpaz2 will return as
\r
68 * the first record in 'show'
\r
70 * @return sequence number of the first record to be shown (numbering starting at '0')
\r
73 public int getStart() {
\r
74 return getParameter("start") != null ? Integer.parseInt(getParameter("start").value) : 0;
\r
78 * Sets Pazpar2 parameter <code>num</code>. See Pazpar2 documentation for details.
\r
80 public void setNum (int num) {
\r
81 setParameter(new CommandParameter("num","=",num));
\r
85 * Get the parameter value for <code>num</code>
\r
87 public int getNum () {
\r
88 return getParameter("num") != null ? Integer.parseInt(getParameter("num").value) : 0;
\r
92 * Sets Pazpar2 parameter <code>block</code>. See Pazpar2 documentation for details.
\r
94 public void setBlock(String block) {
\r
95 setParameterInState(new CommandParameter("block","=",block));
\r
99 * Get the parameter value for <code>block</code>
\r
101 public String getBlock() {
\r
102 return getParameterValue("block");
\r
106 * Sets Pazpar2 parameter <code>mergekey</code>. See Pazpar2 documentation for details.
\r
108 public void setMergekey (String mergekey) {
\r
109 setParameter(new CommandParameter("mergekey","=",mergekey));
\r
113 * Get the parameter value for <code>mergekey</code>
\r
115 public String getMergekey () {
\r
116 return getParameterValue("mergekey");
\r
120 * Sets Pazpar2 parameter <code>rank</code>. See Pazpar2 documentation for details.
\r
122 public void setRank (String rank) {
\r
123 setParameter(new CommandParameter("rank","=",rank));
\r
127 * Get the parameter value for <code>rank</code>
\r
129 public String getRank () {
\r
130 return getParameterValue("rank");
\r
134 public ShowCommand copy () {
\r
135 ShowCommand newCommand = new ShowCommand();
\r
136 for (String parameterName : parameters.keySet()) {
\r
137 newCommand.setParameterInState(parameters.get(parameterName).copy());
\r
143 public ServiceProxyCommand getSp() {
\r
144 return new ShowCommandSp(this);
\r
148 public boolean spOnly() {
\r