845f3d959968f8fe715a7e67d71f17f3f357f5fa
[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#toggleRecord(java.lang.String)\r
83    */\r
84   public String toggleRecord(String recid) {\r
85     return pz2.toggleRecord(recid);\r
86   }\r
87   \r
88   /* (non-Javadoc)\r
89    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getShow()\r
90    */\r
91   public ShowResponse getShow() {\r
92     return pz2.getShow();\r
93   }\r
94   \r
95   /* (non-Javadoc)\r
96    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getStat()\r
97    */\r
98   public StatResponse getStat() {\r
99     return pz2.getStat();\r
100   }\r
101     \r
102   /* (non-Javadoc)\r
103    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#hasRecord(java.lang.String)\r
104    */\r
105   public boolean hasRecord(String recId) {    \r
106     return pz2.hasRecord(recId);\r
107   }\r
108   \r
109   /* (non-Javadoc)\r
110    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getRecord()\r
111    */\r
112   public RecordResponse getRecord() {\r
113     return pz2.getRecord();\r
114   }\r
115   \r
116   /* (non-Javadoc)\r
117    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getTermLists()\r
118    */\r
119   public TermListsResponse getTermLists() {\r
120     return pz2.getTermLists();\r
121   }\r
122   \r
123   /* (non-Javadoc)\r
124    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getFacetTerms(java.lang.String, int)\r
125    */\r
126   public List<TermResponse> getFacetTerms(String facet, int count) {\r
127     return pz2.getFacetTerms(facet, count);\r
128   }\r
129   \r
130   /* (non-Javadoc)\r
131    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getFacetTerms(java.lang.String)\r
132    */\r
133   public List<TermResponse> getFacetTerms(String facet) {  \r
134     return pz2.getFacetTerms(facet);\r
135   }  \r
136   \r
137   /* (non-Javadoc)\r
138    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getByTarget()\r
139    */\r
140   public ByTarget getByTarget() {  \r
141     return pz2.getByTarget();\r
142   }\r
143   \r
144   /* (non-Javadoc)\r
145    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#hasRecords()\r
146    */\r
147   public boolean hasRecords() {\r
148     return pz2.hasRecords();\r
149   }\r
150   \r
151   /* (non-Javadoc)\r
152    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setPager(int)\r
153    */\r
154   public ResultsPager setPager(int pageRange) {\r
155     return pz2.setPager(pageRange);\r
156   }\r
157 \r
158   /* (non-Javadoc)\r
159    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getPager()\r
160    */\r
161   public ResultsPager getPager() {\r
162     return pz2.getPager();\r
163   }\r
164   \r
165   /* (non-Javadoc)\r
166    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#getCurrentStateKey()\r
167    */\r
168   public String getCurrentStateKey() {\r
169     return pz2.getCurrentStateKey();\r
170   }\r
171     \r
172   /* (non-Javadoc)\r
173    * @see com.indexdata.pz2utils4jsf.pazpar2.Pz2Interface#setCurrentStateKey(java.lang.String)\r
174    */\r
175   public void setCurrentStateKey(String key) {\r
176     pz2.setCurrentStateKey(key);    \r
177   }\r
178   \r
179   public boolean hasErrors() {\r
180     return pz2.hasErrors();\r
181   }\r
182     \r
183   public ErrorInterface getCommandError() {\r
184     return pz2.getCommandError();\r
185   }\r
186   \r
187   public List<ErrorInterface> getConfigurationErrors () {\r
188     return pz2.getConfigurationErrors();\r
189   }\r
190 \r
191   @Override\r
192   public boolean hasCommandErrors() {\r
193     return pz2.hasCommandErrors();\r
194   }\r
195 \r
196   @Override\r
197   public boolean hasConfigurationErrors() {\r
198     return pz2.hasConfigurationErrors();\r
199   }\r
200   \r
201 }\r