Packaging pazpar2/io error messages in response objects
[mkjsf-moved-to-github.git] / src / main / java / com / indexdata / pz2utils4jsf / pazpar2 / Pz2Bean.java
1 package com.indexdata.pz2utils4jsf.pazpar2;\r
2 \r
3 import java.io.Serializable;\r
4 import java.util.List;\r
5 \r
6 import javax.annotation.PostConstruct;\r
7 import javax.enterprise.context.SessionScoped;\r
8 import javax.inject.Inject;\r
9 import javax.inject.Named;\r
10 \r
11 import org.apache.log4j.Logger;\r
12 \r
13 import com.indexdata.pz2utils4jsf.config.Pz2Configurator;\r
14 import com.indexdata.pz2utils4jsf.controls.ResultsPager;\r
15 import com.indexdata.pz2utils4jsf.pazpar2.data.ByTarget;\r
16 import com.indexdata.pz2utils4jsf.pazpar2.data.RecordResponse;\r
17 import com.indexdata.pz2utils4jsf.pazpar2.data.ShowResponse;\r
18 import com.indexdata.pz2utils4jsf.pazpar2.data.StatResponse;\r
19 import com.indexdata.pz2utils4jsf.pazpar2.data.TermListsResponse;\r
20 import com.indexdata.pz2utils4jsf.pazpar2.data.TermResponse;\r
21 import com.indexdata.pz2utils4jsf.utils.Utils;\r
22 \r
23 @Named("pz2") @SessionScoped\r
24 public class Pz2Bean implements Pz2Interface, Serializable {\r
25 \r
26   private static final long serialVersionUID = 3440277287081557861L;\r
27   private static Logger logger = Logger.getLogger(Pz2Bean.class);\r
28   \r
29   Pz2Session pz2;  \r
30   @Inject Pz2Configurator pz2conf;\r
31   \r
32   public Pz2Bean () {\r
33     logger.info("Instantiating pz2 bean [" + Utils.objectId(this) + "]");\r
34   }\r
35   \r
36   @PostConstruct\r
37   public void initiatePz2Session() {\r
38     logger.debug(Utils.objectId(this) + " will instantiate a Pz2Session next.");\r
39     pz2 = new Pz2Session();\r
40     logger.debug(Utils.objectId(this) + " will forward configuration to the new Pz2Session [" + Utils.objectId(pz2) + "]");\r
41     pz2.init(pz2conf);\r
42   }\r
43   \r
44   /* (non-Javadoc)\r
45    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#doSearch(java.lang.String)\r
46    */\r
47   public void doSearch(String query) {    \r
48     pz2.doSearch(query);\r
49   }\r
50 \r
51   /* (non-Javadoc)\r
52    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#doSearch()\r
53    */\r
54   public void doSearch() {\r
55     logger.info(Utils.objectId(this) + " doing search for "+this.getQuery());\r
56     pz2.doSearch();\r
57   }\r
58 \r
59   /* (non-Javadoc)\r
60    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#update()\r
61    */\r
62   public String update() {\r
63     return pz2.update();\r
64   }\r
65 \r
66   /* (non-Javadoc)\r
67    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#update(java.lang.String)\r
68    */\r
69   public String update(String commands) {\r
70     return pz2.update(commands);\r
71   }\r
72 \r
73   /* (non-Javadoc)\r
74    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setQuery(java.lang.String)\r
75    */\r
76   public void setQuery(String query) {\r
77     pz2.setQuery(query);\r
78   }\r
79 \r
80   /* (non-Javadoc)\r
81    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getQuery()\r
82    */\r
83   public String getQuery() {\r
84     return pz2.getQuery();\r
85   }\r
86 \r
87   /* (non-Javadoc)\r
88    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setFacet(java.lang.String, java.lang.String)\r
89    */\r
90   public void setFacet(String facetKey, String term) {\r
91     pz2.setFacet(facetKey, term);\r
92   }\r
93 \r
94   /* (non-Javadoc)\r
95    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#removeFacet(java.lang.String, java.lang.String)\r
96    */\r
97   public void removeFacet(String facetKey, String term) {\r
98     pz2.removeFacet(facetKey, term);\r
99   }\r
100 \r
101   /* (non-Javadoc)\r
102    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setFacetOnQuery(java.lang.String, java.lang.String)\r
103    */\r
104   public void setFacetOnQuery(String facetKey, String term) {\r
105     pz2.setFacetOnQuery(facetKey, term);\r
106   }\r
107 \r
108   /* (non-Javadoc)\r
109    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setTargetFilter(java.lang.String, java.lang.String)\r
110    */\r
111   public void setTargetFilter(String targetId, String targetName) {\r
112     pz2.setTargetFilter(targetId, targetName);\r
113   }\r
114   \r
115   /* (non-Javadoc)\r
116    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#removeTargetFilter()\r
117    */\r
118   public void removeTargetFilter () {\r
119     pz2.removeTargetFilter();\r
120   }\r
121 \r
122   /* (non-Javadoc)\r
123    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getTargetFilter()\r
124    */\r
125   public TargetFilter getTargetFilter() {\r
126     return pz2.getTargetFilter();\r
127   }\r
128 \r
129   /* (non-Javadoc)\r
130    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#hasTargetFilter()\r
131    */\r
132   public boolean hasTargetFilter() {\r
133     return pz2.hasTargetFilter();\r
134   }\r
135 \r
136   /* (non-Javadoc)\r
137    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setSort(java.lang.String)\r
138    */\r
139   public void setSort(String sortOption) {\r
140     pz2.setSort(sortOption);\r
141   }\r
142 \r
143   /* (non-Javadoc)\r
144    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getSort()\r
145    */\r
146   public String getSort() {\r
147     return pz2.getSort();\r
148   }\r
149 \r
150   /* (non-Javadoc)\r
151    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setPageSize(int)\r
152    */\r
153   public void setPageSize(int perPageOption) {\r
154     pz2.setPageSize(perPageOption);\r
155   }\r
156 \r
157   /* (non-Javadoc)\r
158    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getPageSize()\r
159    */\r
160   public int getPageSize() {\r
161     return pz2.getPageSize();\r
162   }\r
163 \r
164   /* (non-Javadoc)\r
165    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setStart(int)\r
166    */\r
167   public void setStart(int start) {\r
168     pz2.setStart(start);\r
169   }\r
170   \r
171   /* (non-Javadoc)\r
172    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getStart()\r
173    */\r
174   public int getStart() {\r
175     return pz2.getStart();\r
176   }\r
177 \r
178   /* (non-Javadoc)\r
179    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#toggleRecord(java.lang.String)\r
180    */\r
181   public String toggleRecord(String recid) {\r
182     return pz2.toggleRecord(recid);\r
183   }\r
184   \r
185   /* (non-Javadoc)\r
186    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getShow()\r
187    */\r
188   public ShowResponse getShow() {\r
189     return pz2.getShow();\r
190   }\r
191   \r
192   /* (non-Javadoc)\r
193    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getStat()\r
194    */\r
195   public StatResponse getStat() {\r
196     return pz2.getStat();\r
197   }\r
198     \r
199   /* (non-Javadoc)\r
200    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#hasRecord(java.lang.String)\r
201    */\r
202   public boolean hasRecord(String recId) {    \r
203     return pz2.hasRecord(recId);\r
204   }\r
205   \r
206   /* (non-Javadoc)\r
207    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getRecord()\r
208    */\r
209   public RecordResponse getRecord() {\r
210     return pz2.getRecord();\r
211   }\r
212   \r
213   /* (non-Javadoc)\r
214    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getTermLists()\r
215    */\r
216   public TermListsResponse getTermLists() {\r
217     return pz2.getTermLists();\r
218   }\r
219   \r
220   /* (non-Javadoc)\r
221    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getFacetTerms(java.lang.String, int)\r
222    */\r
223   public List<TermResponse> getFacetTerms(String facet, int count) {\r
224     return pz2.getFacetTerms(facet, count);\r
225   }\r
226   \r
227   /* (non-Javadoc)\r
228    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getFacetTerms(java.lang.String)\r
229    */\r
230   public List<TermResponse> getFacetTerms(String facet) {  \r
231     return pz2.getFacetTerms(facet);\r
232   }  \r
233   \r
234   /* (non-Javadoc)\r
235    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getByTarget()\r
236    */\r
237   public ByTarget getByTarget() {  \r
238     return pz2.getByTarget();\r
239   }\r
240   \r
241   /* (non-Javadoc)\r
242    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#hasRecords()\r
243    */\r
244   public boolean hasRecords() {\r
245     return pz2.hasRecords();\r
246   }\r
247   \r
248   /* (non-Javadoc)\r
249    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setPager(int)\r
250    */\r
251   public ResultsPager setPager(int pageRange) {\r
252     return pz2.setPager(pageRange);\r
253   }\r
254 \r
255   /* (non-Javadoc)\r
256    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getPager()\r
257    */\r
258   public ResultsPager getPager() {\r
259     return pz2.getPager();\r
260   }\r
261   \r
262   /* (non-Javadoc)\r
263    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getCurrentStateKey()\r
264    */\r
265   public String getCurrentStateKey() {\r
266     return pz2.getCurrentStateKey();\r
267   }\r
268     \r
269   /* (non-Javadoc)\r
270    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setCurrentStateKey(java.lang.String)\r
271    */\r
272   public void setCurrentStateKey(String key) {\r
273     pz2.setCurrentStateKey(key);    \r
274   }\r
275   \r
276   public boolean hasErrors() {\r
277     return pz2.hasErrors();\r
278   }\r
279   \r
280   public String getErrorMessages() {\r
281     return pz2.getErrorMessages();\r
282   }\r
283   \r
284   public String getFirstErrorMessage() {\r
285     return pz2.getFirstErrorMessage();\r
286   }\r
287   \r
288 \r
289 }\r