82f71ed08e7688abc7e39428552820c8ef5c39bb
[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.enterprise.inject.Alternative;\r
9 import javax.inject.Inject;\r
10 import javax.inject.Named;\r
11 \r
12 import org.apache.log4j.Logger;\r
13 \r
14 import com.indexdata.pz2utils4jsf.config.ConfigurationReader;\r
15 import com.indexdata.pz2utils4jsf.controls.ResultsPager;\r
16 import com.indexdata.pz2utils4jsf.errors.ErrorInterface;\r
17 import com.indexdata.pz2utils4jsf.pazpar2.data.ByTarget;\r
18 import com.indexdata.pz2utils4jsf.pazpar2.data.RecordResponse;\r
19 import com.indexdata.pz2utils4jsf.pazpar2.data.ShowResponse;\r
20 import com.indexdata.pz2utils4jsf.pazpar2.data.StatResponse;\r
21 import com.indexdata.pz2utils4jsf.pazpar2.data.TermListsResponse;\r
22 import com.indexdata.pz2utils4jsf.pazpar2.data.TermResponse;\r
23 import com.indexdata.pz2utils4jsf.utils.Utils;\r
24 \r
25 @Named("pz2") @SessionScoped @Alternative\r
26 public class Pz2Bean implements Pz2Interface, Serializable {\r
27 \r
28   private static final long serialVersionUID = 3440277287081557861L;\r
29   private static Logger logger = Logger.getLogger(Pz2Bean.class);\r
30   \r
31   @Inject ConfigurationReader configurator;\r
32   \r
33   @Inject @ForStraightPz2 Pz2Session pz2;  \r
34   \r
35   protected SearchClient searchClient;  \r
36     \r
37   public Pz2Bean () {\r
38     logger.info("Instantiating pz2 bean [" + Utils.objectId(this) + "]");\r
39   }\r
40   \r
41   @PostConstruct\r
42   public void instantiatePz2SessionObject() {    \r
43     logger.debug("in start of Pz2Bean post-construct configurator is " + configurator);\r
44     logger.debug(Utils.objectId(this) + " will instantiate a Pz2Client next.");\r
45     searchClient = new Pz2Client();\r
46     logger.info("Using [" + Utils.objectId(searchClient) + "] configured by [" \r
47                           + Utils.objectId(configurator) + "] on session [" \r
48                           + Utils.objectId(pz2) + "]" );    \r
49     pz2.configureClient(searchClient,configurator);    \r
50   }  \r
51   \r
52   /* (non-Javadoc)\r
53    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#doSearch(java.lang.String)\r
54    */\r
55   public void doSearch(String query) {    \r
56     pz2.doSearch(query);\r
57   }\r
58 \r
59   /* (non-Javadoc)\r
60    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#doSearch()\r
61    */\r
62   public void doSearch() {\r
63     logger.info(Utils.objectId(this) + " doing search for "+pz2.getCommandReadOnly("search").getParameterValue("query"));\r
64     pz2.doSearch();\r
65   }\r
66 \r
67   /* (non-Javadoc)\r
68    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#update()\r
69    */\r
70   public String update() {\r
71     return pz2.update();\r
72   }\r
73 \r
74   /* (non-Javadoc)\r
75    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#update(java.lang.String)\r
76    */\r
77   public String update(String commands) {\r
78     return pz2.update(commands);\r
79   }\r
80 \r
81   /* (non-Javadoc)\r
82    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setQuery(java.lang.String)\r
83    */\r
84   public void setQuery(String query) {\r
85     pz2.req.getSearch().setQuery(query);\r
86   }\r
87     \r
88   /* (non-Javadoc)\r
89    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getQuery()\r
90    */\r
91   /*\r
92   public String getQuery() {\r
93     return pz2.getQuery();\r
94   }\r
95   */\r
96 \r
97   /* (non-Javadoc)\r
98    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setFacet(java.lang.String, java.lang.String)\r
99    */\r
100   public void setFacet(String facetKey, String term) {\r
101     pz2.setFacet(facetKey, term);\r
102   }\r
103 \r
104   /* (non-Javadoc)\r
105    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#removeFacet(java.lang.String, java.lang.String)\r
106    */\r
107   public void removeFacet(String facetKey, String term) {\r
108     pz2.removeFacet(facetKey, term);\r
109   }\r
110 \r
111   /* (non-Javadoc)\r
112    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setFacetOnQuery(java.lang.String, java.lang.String)\r
113    */\r
114   public void setFacetOnQuery(String facetKey, String term) {\r
115     pz2.setFacetOnQuery(facetKey, term);\r
116   }\r
117 \r
118   /* (non-Javadoc)\r
119    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setTargetFilter(java.lang.String, java.lang.String)\r
120    */\r
121   public void setSingleTargetFilter(String targetId, String targetName) {\r
122     pz2.setSingleTargetFilter(targetId, targetName);\r
123   }\r
124   \r
125   /* (non-Javadoc)\r
126    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getTargetFilter()\r
127    */\r
128   public SingleTargetFilter getSingleTargetFilter() {\r
129     return pz2.getSingleTargetFilter();\r
130   }\r
131   \r
132   /* (non-Javadoc)\r
133    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#removeTargetFilter()\r
134    */\r
135   public void removeSingleTargetFilter () {\r
136     pz2.removeSingleTargetFilter();\r
137   }\r
138   \r
139   /* (non-Javadoc)\r
140    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#hasTargetFilter()\r
141    */\r
142   public boolean hasSingleTargetFilter() {\r
143     return pz2.hasSingleTargetFilter();\r
144   }\r
145 \r
146   \r
147   public String getFilter () {\r
148     return pz2.getFilter();\r
149   }\r
150   \r
151   public void setFilter (String filterExpression) {\r
152     pz2.setFilter(filterExpression);\r
153   }\r
154 \r
155 \r
156   /* (non-Javadoc)\r
157    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setSort(java.lang.String)\r
158    */\r
159   public void setSort(String sortOption) {\r
160     pz2.setSort(sortOption);\r
161   }\r
162 \r
163   /* (non-Javadoc)\r
164    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getSort()\r
165    */\r
166   public String getSort() {\r
167     return pz2.getSort();\r
168   }\r
169 \r
170   /* (non-Javadoc)\r
171    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setPageSize(int)\r
172    */\r
173   public void setPageSize(int perPageOption) {\r
174     pz2.setPageSize(perPageOption);\r
175   }\r
176 \r
177   /* (non-Javadoc)\r
178    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getPageSize()\r
179    */\r
180   public int getPageSize() {\r
181     return pz2.getPageSize();\r
182   }\r
183 \r
184   /* (non-Javadoc)\r
185    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setStart(int)\r
186    */\r
187   public void setStart(int start) {\r
188     pz2.setStart(start);\r
189   }\r
190   \r
191   /* (non-Javadoc)\r
192    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getStart()\r
193    */\r
194   public int getStart() {\r
195     return pz2.getStart();\r
196   }\r
197   \r
198   /* (non-Javadoc)\r
199    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#toggleRecord(java.lang.String)\r
200    */\r
201   public String toggleRecord(String recid) {\r
202     return pz2.toggleRecord(recid);\r
203   }\r
204   \r
205   /* (non-Javadoc)\r
206    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getShow()\r
207    */\r
208   public ShowResponse getShow() {\r
209     return pz2.getShow();\r
210   }\r
211   \r
212   /* (non-Javadoc)\r
213    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getStat()\r
214    */\r
215   public StatResponse getStat() {\r
216     return pz2.getStat();\r
217   }\r
218     \r
219   /* (non-Javadoc)\r
220    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#hasRecord(java.lang.String)\r
221    */\r
222   public boolean hasRecord(String recId) {    \r
223     return pz2.hasRecord(recId);\r
224   }\r
225   \r
226   /* (non-Javadoc)\r
227    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getRecord()\r
228    */\r
229   public RecordResponse getRecord() {\r
230     return pz2.getRecord();\r
231   }\r
232   \r
233   /* (non-Javadoc)\r
234    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getTermLists()\r
235    */\r
236   public TermListsResponse getTermLists() {\r
237     return pz2.getTermLists();\r
238   }\r
239   \r
240   /* (non-Javadoc)\r
241    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getFacetTerms(java.lang.String, int)\r
242    */\r
243   public List<TermResponse> getFacetTerms(String facet, int count) {\r
244     return pz2.getFacetTerms(facet, count);\r
245   }\r
246   \r
247   /* (non-Javadoc)\r
248    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getFacetTerms(java.lang.String)\r
249    */\r
250   public List<TermResponse> getFacetTerms(String facet) {  \r
251     return pz2.getFacetTerms(facet);\r
252   }  \r
253   \r
254   /* (non-Javadoc)\r
255    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getByTarget()\r
256    */\r
257   public ByTarget getByTarget() {  \r
258     return pz2.getByTarget();\r
259   }\r
260   \r
261   /* (non-Javadoc)\r
262    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#hasRecords()\r
263    */\r
264   public boolean hasRecords() {\r
265     return pz2.hasRecords();\r
266   }\r
267   \r
268   /* (non-Javadoc)\r
269    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setPager(int)\r
270    */\r
271   public ResultsPager setPager(int pageRange) {\r
272     return pz2.setPager(pageRange);\r
273   }\r
274 \r
275   /* (non-Javadoc)\r
276    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getPager()\r
277    */\r
278   public ResultsPager getPager() {\r
279     return pz2.getPager();\r
280   }\r
281   \r
282   /* (non-Javadoc)\r
283    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getCurrentStateKey()\r
284    */\r
285   public String getCurrentStateKey() {\r
286     return pz2.getCurrentStateKey();\r
287   }\r
288     \r
289   /* (non-Javadoc)\r
290    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setCurrentStateKey(java.lang.String)\r
291    */\r
292   public void setCurrentStateKey(String key) {\r
293     pz2.setCurrentStateKey(key);    \r
294   }\r
295   \r
296   public boolean hasErrors() {\r
297     return pz2.hasErrors();\r
298   }\r
299     \r
300   public ErrorInterface getCommandError() {\r
301     return pz2.getCommandError();\r
302   }\r
303   \r
304   public List<ErrorInterface> getConfigurationErrors () {\r
305     return pz2.getConfigurationErrors();\r
306   }\r
307 \r
308   @Override\r
309   public boolean hasCommandErrors() {\r
310     return pz2.hasCommandErrors();\r
311   }\r
312 \r
313   @Override\r
314   public boolean hasConfigurationErrors() {\r
315     return pz2.hasConfigurationErrors();\r
316   }\r
317 \r
318   @Override\r
319   public void setRecordId(String recId) {\r
320     pz2.setRecordId(recId);    \r
321   }\r
322 \r
323   @Override\r
324   public String getRecordId() {\r
325     return pz2.getRecordId();\r
326   }\r
327   \r
328 }\r