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