1 package com.indexdata.mkjsf.pazpar2.commands;
\r
3 import com.indexdata.mkjsf.pazpar2.commands.sp.ServiceProxyCommand;
\r
4 import com.indexdata.mkjsf.pazpar2.state.StateManager;
\r
6 public class ShowCommand extends Pazpar2Command implements ServiceProxyCommand {
\r
8 private static final long serialVersionUID = -8242768313266051307L;
\r
10 public ShowCommand(StateManager stateMgr) {
\r
11 super("show",stateMgr);
\r
12 setParameterInState(new CommandParameter("start","=","0"));
\r
16 * Sets the sort order for results, the updates the 'show' data object
\r
17 * from pazpar2. Set valid sort options in the documentation for pazpar2.
\r
19 * The parts of the UI that display 'show' data should be rendered following
\r
24 public void setSort (String sort) {
\r
25 setParameter(new CommandParameter("sort","=",sort));
\r
29 * Retrieves the current sort order for results
\r
30 * @return sort order - i.e. 'relevance'
\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 the first record to show - starting at record '0'. After setting
\r
61 * first record number, the 'show' data object will be updated from pazpar2,
\r
62 * and the parts of the UI displaying show data should be re-rendered.
\r
64 * To be used by the UI for paging.
\r
66 * @param start first record to show
\r
68 public void setStart (int start) {
\r
69 setParameter(new CommandParameter("start","=",start));
\r
73 * Retrieves the sequence number of the record that pazpaz2 will return as
\r
74 * the first record in 'show'
\r
76 * @return sequence number of the first record to be shown (numbering starting at '0')
\r
79 public int getStart() {
\r
80 return getParameter("start") != null ? Integer.parseInt(getParameter("start").value) : 0;
\r
83 public void setNum (int num) {
\r
84 setParameter(new CommandParameter("num","=",num));
\r
87 public int getNum () {
\r
88 return getParameter("num") != null ? Integer.parseInt(getParameter("num").value) : 0;
\r
91 public void setBlock(String block) {
\r
92 setParameterInState(new CommandParameter("block","=",block));
\r
95 public ShowCommand copy () {
\r
96 ShowCommand newCommand = new ShowCommand(stateMgr);
\r
97 for (String parameterName : parameters.keySet()) {
\r
98 newCommand.setParameterInState(parameters.get(parameterName).copy());
\r
104 public ServiceProxyCommand getSp() {
\r