1 /*
2 +----------------------------------------------------------------------+
3 | Copyright (c) The PHP Group |
4 +----------------------------------------------------------------------+
5 | This source file is subject to version 3.01 of the PHP license, |
6 | that is bundled with this package in the file LICENSE, and is |
7 | available through the world-wide-web at the following url: |
8 | http://www.php.net/license/3_01.txt |
9 | If you did not receive a copy of the PHP license and are unable to |
10 | obtain it through the world-wide-web, please send a note to |
11 | license@php.net so we can mail you a copy immediately. |
12 +----------------------------------------------------------------------+
13 | Authors: |
14 | Israel Ekpo <iekpo@php.net> |
15 | Omar Shaban <omars@php.net> |
16 +----------------------------------------------------------------------+
17 */
18
19 #include "php_solr.h"
20
21 #ifdef HAVE_SOLR
22
23 #if LIBCURL_VERSION_NUM < 0x070F00
24 #error libcurl 7.15.0 or later is required. Please upgrade your libcurl version.
25 #endif
26
27 #if LIBXML_VERSION < 20616
28 #error libxml2 2.6.16 or later is required. Please upgrade your libxml2 version.
29 #endif
30
31 /******************************************************************************/
32 /** GLOBAL VARIABLE FOR THE EXTENSION **/
33 /******************************************************************************/
34
35 /* {{{ ZEND_DECLARE_MODULE_GLOBALS(solr) */
36 ZEND_DECLARE_MODULE_GLOBALS(solr)
37 /* }}} */
38
39 /******************************************************************************/
40 /** OBJECT HANDLERS AND DECLARATIONS FOR CLASS ENTRIES **/
41 /******************************************************************************/
42
43 /* {{{ zend_class_entry declarations of the classes */
44 zend_class_entry *solr_ce_SolrObject;
45 zend_class_entry *solr_ce_SolrInputDocument;
46 zend_class_entry *solr_ce_SolrDocument;
47 zend_class_entry *solr_ce_SolrDocumentField;
48 zend_class_entry *solr_ce_SolrExtractRequest;
49 zend_class_entry *solr_ce_SolrClient;
50 zend_class_entry *solr_ce_SolrParams;
51 zend_class_entry *solr_ce_SolrModifiableParams;
52 zend_class_entry *solr_ce_SolrCollapseFunction;
53 zend_class_entry *solr_ce_SolrQuery;
54 zend_class_entry *solr_ce_SolrResponse;
55 zend_class_entry *solr_ce_SolrQueryResponse;
56 zend_class_entry *solr_ce_SolrUpdateResponse;
57 zend_class_entry *solr_ce_SolrPingResponse;
58 zend_class_entry *solr_ce_SolrGenericResponse;
59 zend_class_entry *solr_ce_SolrUtils;
60 zend_class_entry *solr_ce_SolrException;
61 zend_class_entry *solr_ce_SolrIllegalOperationException;
62 zend_class_entry *solr_ce_SolrIllegalArgumentException;
63 zend_class_entry *solr_ce_SolrClientException;
64 zend_class_entry *solr_ce_SolrServerException;
65 zend_class_entry *solr_ce_SolrMissingMandatoryParameterException;
66 /* }}} */
67
68 /* {{{ zend_object_handlers */
69 zend_object_handlers solr_object_handlers;
70 zend_object_handlers solr_document_field_handlers;
71 zend_object_handlers solr_input_document_object_handlers;
72 zend_object_handlers solr_client_object_handlers;
73 zend_object_handlers solr_response_object_handlers;
74 zend_object_handlers solr_collapse_function_object_handlers;
75 zend_object_handlers solr_extract_request_object_handlers;
76 /* }}} */
77
78 /* {{{ static void php_solr_globals_ctor(zend_solr_globals *solr_globals_arg)
79 Global variable initializer. In ZTS mode, called once for each thread spawned. */
php_solr_globals_ctor(zend_solr_globals * solr_globals_arg)80 static void php_solr_globals_ctor(zend_solr_globals *solr_globals_arg)
81 {
82 /* Initializing the counters to Zero */
83 solr_globals_arg->request_count = 0U;
84 solr_globals_arg->document_count = 0U;
85 solr_globals_arg->client_count = 0U;
86 solr_globals_arg->functions_count = 0U;
87
88 solr_globals_arg->documents = NULL;
89 solr_globals_arg->clients = NULL;
90 solr_globals_arg->params = NULL;
91 solr_globals_arg->functions = NULL;
92 solr_globals_arg->ustreams = NULL;
93 }
94 /* }}} */
95
96 /******************************************************************************/
97 /** DECLARING STRUCTURES FOR METHOD ARGUMENTS TYPE HINTING **/
98 /******************************************************************************/
99
100 /* {{{ arg_info vectors for functions and methods */
101
102 ZEND_BEGIN_ARG_INFO_EX(SolrObject__get_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
103 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, property_name)
104 ZEND_END_ARG_INFO()
105
106 ZEND_BEGIN_ARG_INFO_EX(SolrObject__set_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
107 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, property_name)
108 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, property_value)
109 ZEND_END_ARG_INFO()
110
111 ZEND_BEGIN_ARG_INFO_EX(SolrObject_one_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
112 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, property_name)
113 ZEND_END_ARG_INFO()
114
115 /* {{{ SolrDocument arguments */
116 ZEND_BEGIN_ARG_INFO_EX(SolrDocument__construct_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
117 ZEND_END_ARG_INFO()
118
119 ZEND_BEGIN_ARG_INFO_EX(SolrDocument_addField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
120 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
121 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldValue)
122 ZEND_END_ARG_INFO()
123
124 ZEND_BEGIN_ARG_INFO_EX(SolrDocument_getField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
125 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
126 ZEND_END_ARG_INFO()
127
128 ZEND_BEGIN_ARG_INFO_EX(SolrDocument_fieldExists_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
129 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
130 ZEND_END_ARG_INFO()
131
132 ZEND_BEGIN_ARG_INFO_EX(SolrDocument_deleteField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
133 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
134 ZEND_END_ARG_INFO()
135
136 ZEND_BEGIN_ARG_INFO_EX(SolrDocument_sort_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
137 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, sortOrderBy)
138 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, sortDirection)
139 ZEND_END_ARG_INFO()
140
141 ZEND_BEGIN_ARG_INFO_EX(SolrDocument_merge_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
142 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, sourceDoc, SolrDocument, SOLR_ARG_ALLOW_NULL_FALSE)
143 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, overwrite)
144 ZEND_END_ARG_INFO()
145
146 ZEND_BEGIN_ARG_INFO_EX(SolrDocument_current_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
147 ZEND_END_ARG_INFO()
148
149 ZEND_BEGIN_ARG_INFO_EX(SolrDocument_getInputDocument_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
150 ZEND_END_ARG_INFO()
151
152 ZEND_BEGIN_ARG_INFO(SolrDocument_unserialize_args, 0)
153 ZEND_ARG_INFO(0, serialized)
154 ZEND_END_ARG_INFO()
155 /* }}} */
156
157 /* {{{ SolrInputDocument arguments */
158 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument__construct_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
159 ZEND_END_ARG_INFO()
160
161 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_setBoost_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
162 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, documentBoostValue)
163 ZEND_END_ARG_INFO()
164
165 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_addField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
166 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
167 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldValue)
168 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldBoostValue)
169 ZEND_END_ARG_INFO()
170
171 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_getFieldBoost_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
172 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
173 ZEND_END_ARG_INFO()
174
175 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_getField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
176 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
177 ZEND_END_ARG_INFO()
178
179 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_setFieldBoost_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
180 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
181 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldBoostValue)
182 ZEND_END_ARG_INFO()
183
184 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_fieldExists_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
185 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
186 ZEND_END_ARG_INFO()
187
188 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_deleteField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
189 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
190 ZEND_END_ARG_INFO()
191
192 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_sort_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
193 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, sortOrderBy)
194 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, sortDirection)
195 ZEND_END_ARG_INFO()
196
197 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_merge_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
198 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, sourceDoc, SolrInputDocument, SOLR_ARG_ALLOW_NULL_FALSE)
199 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, overwrite)
200 ZEND_END_ARG_INFO()
201
202 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_addChildDocument_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
203 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, child, SolrInputDocument, SOLR_ARG_ALLOW_NULL_FALSE)
204 ZEND_END_ARG_INFO()
205
206 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_addChildDocuments_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
207 ZEND_ARG_ARRAY_INFO(SOLR_ARG_PASS_BY_REF_TRUE, docs, SOLR_ARG_ALLOW_NULL_FALSE)
208 ZEND_END_ARG_INFO()
209
210 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_updateField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 3)
211 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
212 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, modifier)
213 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
214 ZEND_END_ARG_INFO()
215
216 ZEND_BEGIN_ARG_INFO_EX(SolrInputDocument_setVersion_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
217 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, version)
218 ZEND_END_ARG_INFO()
219 /* }}} */
220
221 /* {{{ SolrClient arguments */
222 ZEND_BEGIN_ARG_INFO_EX(SolrClient_constructor_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
223 ZEND_ARG_ARRAY_INFO(SOLR_ARG_PASS_BY_REF_FALSE, clientOptions, SOLR_ARG_ALLOW_NULL_FALSE)
224 ZEND_END_ARG_INFO()
225
226 ZEND_BEGIN_ARG_INFO_EX(SolrClient_query_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
227 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, query, SolrParams, SOLR_ARG_ALLOW_NULL_FALSE)
228 ZEND_END_ARG_INFO()
229
230 ZEND_BEGIN_ARG_INFO_EX(SolrClient_addDocument_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
231 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, doc, SolrInputDocument, SOLR_ARG_ALLOW_NULL_FALSE)
232 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, overwrite)
233 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, commitWithin)
234 ZEND_END_ARG_INFO()
235
236 ZEND_BEGIN_ARG_INFO_EX(SolrClient_addDocuments_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
237 ZEND_ARG_ARRAY_INFO(SOLR_ARG_PASS_BY_REF_TRUE, docs, SOLR_ARG_ALLOW_NULL_FALSE)
238 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, overwrite)
239 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, commitWithin)
240 ZEND_END_ARG_INFO()
241
242 ZEND_BEGIN_ARG_INFO_EX(SolrClient_sendUpdateStream_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
243 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, request, SolrExtractRequest, SOLR_ARG_ALLOW_NULL_FALSE)
244 ZEND_END_ARG_INFO()
245
246 ZEND_BEGIN_ARG_INFO_EX(SolrClient_request_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
247 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, raw_request)
248 ZEND_END_ARG_INFO()
249
250 ZEND_BEGIN_ARG_INFO_EX(SolrClient_setResponseWriter_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
251 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, responseWriter)
252 ZEND_END_ARG_INFO()
253
254 ZEND_BEGIN_ARG_INFO_EX(SolrClient_commit_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
255 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, softCommit)
256 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, waitSearcher)
257 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, expungeDeletes)
258 ZEND_END_ARG_INFO()
259
260 ZEND_BEGIN_ARG_INFO_EX(SolrClient_optimize_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
261 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, maxSegments)
262 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, softCommit)
263 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, waitSearcher)
264 ZEND_END_ARG_INFO()
265
266 ZEND_BEGIN_ARG_INFO_EX(SolrClient_rollback_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
267 ZEND_END_ARG_INFO()
268
269 ZEND_BEGIN_ARG_INFO_EX(SolrClient_deleteById_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
270 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, id)
271 ZEND_END_ARG_INFO()
272
273 ZEND_BEGIN_ARG_INFO_EX(SolrClient_deleteByIds_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
274 ZEND_ARG_ARRAY_INFO(SOLR_ARG_PASS_BY_REF_FALSE, ids, SOLR_ARG_ALLOW_NULL_FALSE)
275 ZEND_END_ARG_INFO()
276
277 ZEND_BEGIN_ARG_INFO_EX(SolrClient_deleteByQuery_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
278 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, query)
279 ZEND_END_ARG_INFO()
280
281 ZEND_BEGIN_ARG_INFO_EX(SolrClient_deleteByQueries_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
282 ZEND_ARG_ARRAY_INFO(SOLR_ARG_PASS_BY_REF_FALSE, queries, SOLR_ARG_ALLOW_NULL_FALSE)
283 ZEND_END_ARG_INFO()
284
285 ZEND_BEGIN_ARG_INFO_EX(SolrClient_ping_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
286 ZEND_END_ARG_INFO()
287
288 ZEND_BEGIN_ARG_INFO_EX(SolrClient_threads_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
289 ZEND_END_ARG_INFO()
290
291 ZEND_BEGIN_ARG_INFO_EX(SolrClient_info_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
292 ZEND_END_ARG_INFO()
293
294 ZEND_BEGIN_ARG_INFO_EX(SolrClient_setServlet_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
295 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, type)
296 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
297 ZEND_END_ARG_INFO()
298 /* }}} */
299
300 /* {{{ SolrParams arguments */
301 ZEND_BEGIN_ARG_INFO_EX(SolrParams_setParam_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
302 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, name)
303 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
304 ZEND_END_ARG_INFO()
305
306 ZEND_BEGIN_ARG_INFO_EX(SolrParams_addParam_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
307 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, name)
308 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
309 ZEND_END_ARG_INFO()
310
311 ZEND_BEGIN_ARG_INFO_EX(SolrParams_toString_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
312 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, url_encode)
313 ZEND_END_ARG_INFO()
314
315 ZEND_BEGIN_ARG_INFO_EX(SolrParams_getParam_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
316 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, param_name)
317 ZEND_END_ARG_INFO()
318
319 ZEND_BEGIN_ARG_INFO(SolrParams_unserialize_args, 0)
320 ZEND_ARG_INFO(0, serialized)
321 ZEND_END_ARG_INFO()
322 /* }}} */
323
324 /* {{{ SolrQuery arguments */
325 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_constructor_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
326 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, q)
327 ZEND_END_ARG_INFO()
328
329 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setQuery_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
330 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, q)
331 ZEND_END_ARG_INFO()
332
333 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setStart_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
334 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, start)
335 ZEND_END_ARG_INFO()
336
337 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setRows_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
338 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, rows)
339 ZEND_END_ARG_INFO()
340
341 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_addField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
342 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, field)
343 ZEND_END_ARG_INFO()
344
345 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_addSortField_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
346 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, field)
347 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, order)
348 ZEND_END_ARG_INFO()
349
350 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_addFilterQuery_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
351 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fq)
352 ZEND_END_ARG_INFO()
353
354 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setShowDebugInfo_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
355 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, flag)
356 ZEND_END_ARG_INFO()
357
358 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setExplainOther_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
359 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, flag)
360 ZEND_END_ARG_INFO()
361
362 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setTimeAllowed_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
363 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, timeAllowed)
364 ZEND_END_ARG_INFO()
365
366 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setOmitHeader_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
367 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, flag)
368 ZEND_END_ARG_INFO()
369
370 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setEchoHandler_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
371 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, flag)
372 ZEND_END_ARG_INFO()
373
374 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setEchoParams_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
375 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, type)
376 ZEND_END_ARG_INFO()
377
378 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_facet_get_1_0_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
379 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, field_override)
380 ZEND_END_ARG_INFO()
381
382 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_facet_1_1_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
383 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
384 ZEND_END_ARG_INFO()
385
386 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_facet_2_1_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
387 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
388 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, field_override)
389 ZEND_END_ARG_INFO()
390
391 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_group_1_1_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
392 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
393 ZEND_END_ARG_INFO()
394
395 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_hl_get_1_0_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
396 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, field_override)
397 ZEND_END_ARG_INFO()
398
399 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_hl_1_1_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
400 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
401 ZEND_END_ARG_INFO()
402
403 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_hl_2_1_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
404 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
405 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, field_override)
406 ZEND_END_ARG_INFO()
407
408 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_stats_1_1_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
409 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
410 ZEND_END_ARG_INFO()
411
412 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_mlt_1_1_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
413 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
414 ZEND_END_ARG_INFO()
415
416 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_mlt_2_2_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
417 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, field)
418 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, boost)
419 ZEND_END_ARG_INFO()
420
421 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_terms_1_1_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
422 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, value)
423 ZEND_END_ARG_INFO()
424
425 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_setGroupCachePct_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
426 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, percent)
427 ZEND_END_ARG_INFO()
428
429 ZEND_BEGIN_ARG_INFO_EX(SolrQuery_collapse_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
430 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, collapseFunction, SolrCollapseFunction, SOLR_ARG_ALLOW_NULL_FALSE)
431 ZEND_END_ARG_INFO()
432
433 /* }}} */
434
435 /* {{{ Solr Generic arguments */
436 ZEND_BEGIN_ARG_INFO_EX(Solr_no_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
437 ZEND_END_ARG_INFO()
438 /* }}} */
439
440 /* {{{ */
441 ZEND_BEGIN_ARG_INFO_EX(SolrResponse_setParseMode_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
442 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, parser_mode)
443 ZEND_END_ARG_INFO()
444 /* }}} */
445
446 /* {{{ SolrUtils */
447 ZEND_BEGIN_ARG_INFO_EX(SolrUtils_escapeQueryChars_arg, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
448 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, str)
449 ZEND_END_ARG_INFO()
450
451 ZEND_BEGIN_ARG_INFO_EX(SolrUtils_digestXML_arg, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
452 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, xmlresponse)
453 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, parse_mode)
454 ZEND_END_ARG_INFO()
455
456 ZEND_BEGIN_ARG_INFO_EX(SolrUtils_digestJson_arg, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
457 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, jsonResponse)
458 ZEND_END_ARG_INFO()
459
460 /* }}} */
461
462 ZEND_BEGIN_ARG_INFO_EX(SolrCollapseFunction_construct_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 0)
463 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, field)
464 ZEND_END_ARG_INFO()
465
466 ZEND_BEGIN_ARG_INFO_EX(SolrCollapseFunction_set_size_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
467 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, size)
468 ZEND_END_ARG_INFO()
469
470 ZEND_BEGIN_ARG_INFO_EX(SolrCollapseFunction_set_hint_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
471 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, hint)
472 ZEND_END_ARG_INFO()
473
474 ZEND_BEGIN_ARG_INFO_EX(SolrCollapseFunction_set_max_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
475 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, max)
476 ZEND_END_ARG_INFO()
477
478 ZEND_BEGIN_ARG_INFO_EX(SolrCollapseFunction_set_min_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
479 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, min)
480 ZEND_END_ARG_INFO()
481
482 ZEND_BEGIN_ARG_INFO_EX(SolrCollapseFunction_set_field_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
483 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, fieldName)
484 ZEND_END_ARG_INFO()
485
486 ZEND_BEGIN_ARG_INFO_EX(SolrCollapseFunction_set_null_policy_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 1)
487 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, policy)
488 ZEND_END_ARG_INFO()
489
490 ZEND_BEGIN_ARG_INFO_EX(SolrExtractRequest_createFromFile_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 2)
491 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, filename)
492 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, params, SolrModifiableParams, SOLR_ARG_ALLOW_NULL_FALSE)
493 ZEND_END_ARG_INFO()
494
495 ZEND_BEGIN_ARG_INFO_EX(SolrExtractRequest_createFromStream_args, SOLR_ARG_PASS_REMAINING_BY_REF_FALSE, SOLR_METHOD_RETURN_REFERENCE_FALSE, 3)
496 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, content)
497 ZEND_ARG_INFO(SOLR_ARG_PASS_BY_REF_FALSE, mime_type)
498 ZEND_ARG_OBJ_INFO(SOLR_ARG_PASS_BY_REF_TRUE, params, SolrModifiableParams, SOLR_ARG_ALLOW_NULL_FALSE)
499 ZEND_END_ARG_INFO()
500
501
502 /* }}} */
503
504 /* {{{ solr_functions[] */
505 static zend_function_entry solr_functions[] = {
506 PHP_FE(solr_get_version, Solr_no_args)
507
508 PHP_FE_END
509 };
510 /* }}} */
511
512 /* {{{ solr_object_methods */
513 static zend_function_entry solr_object_methods[] = {
514 SOLR_CTOR(SolrObject, __construct, Solr_no_args)
515 SOLR_DTOR(SolrObject, __destruct, Solr_no_args)
516 /**
517 Temporarily disconnected for now.
518 May be brought back in the future.
519
520 PHP_ME(SolrObject, __set, SolrObject__set_args, ZEND_ACC_PUBLIC)
521 PHP_ME(SolrObject, __get, SolrObject__get_args, ZEND_ACC_PUBLIC)
522 PHP_ME(SolrObject, __isset, SolrObject_one_args, ZEND_ACC_PUBLIC)
523 PHP_ME(SolrObject, __unset, SolrObject_one_args, ZEND_ACC_PUBLIC)
524 */
525 PHP_ME(SolrObject, offsetSet, SolrObject__set_args, ZEND_ACC_PUBLIC)
526 PHP_ME(SolrObject, offsetGet, SolrObject__get_args, ZEND_ACC_PUBLIC)
527 PHP_ME(SolrObject, offsetExists, SolrObject_one_args, ZEND_ACC_PUBLIC)
528 PHP_ME(SolrObject, offsetUnset, SolrObject_one_args, ZEND_ACC_PUBLIC)
529 PHP_ME(SolrObject, getPropertyNames, Solr_no_args, ZEND_ACC_PUBLIC)
530
531 PHP_FE_END
532 };
533 /* }}} */
534
535 /* {{{ solr_document_methods */
536 static zend_function_entry solr_document_field_methods[] = {
537 SOLR_CTOR(SolrDocumentField, __construct, Solr_no_args)
538 SOLR_DTOR(SolrDocumentField, __destruct, Solr_no_args)
539
540 PHP_FE_END
541 };
542 /* }}} */
543
544 /* {{{ solr_collapse_function_methods for the SolrCollapseFunction ce */
545 static zend_function_entry solr_collapse_function_methods[] = {
546 SOLR_CTOR(SolrCollapseFunction, __construct, SolrCollapseFunction_construct_args)
547 SOLR_DTOR(SolrCollapseFunction, __destruct, Solr_no_args)
548
549 PHP_ME(SolrCollapseFunction, setField, SolrCollapseFunction_set_field_args, ZEND_ACC_PUBLIC)
550 PHP_ME(SolrCollapseFunction, getField, Solr_no_args, ZEND_ACC_PUBLIC)
551
552 PHP_ME(SolrCollapseFunction, setMax, SolrCollapseFunction_set_max_args, ZEND_ACC_PUBLIC)
553 PHP_ME(SolrCollapseFunction, getMax, Solr_no_args, ZEND_ACC_PUBLIC)
554
555 PHP_ME(SolrCollapseFunction, setMin, SolrCollapseFunction_set_min_args, ZEND_ACC_PUBLIC)
556 PHP_ME(SolrCollapseFunction, getMin, Solr_no_args, ZEND_ACC_PUBLIC)
557
558 PHP_ME(SolrCollapseFunction, setSize, SolrCollapseFunction_set_size_args, ZEND_ACC_PUBLIC)
559 PHP_ME(SolrCollapseFunction, getSize, Solr_no_args, ZEND_ACC_PUBLIC)
560
561 PHP_ME(SolrCollapseFunction, setHint, SolrCollapseFunction_set_hint_args, ZEND_ACC_PUBLIC)
562 PHP_ME(SolrCollapseFunction, getHint, Solr_no_args, ZEND_ACC_PUBLIC)
563
564 PHP_ME(SolrCollapseFunction, setNullPolicy, SolrCollapseFunction_set_null_policy_args, ZEND_ACC_PUBLIC)
565 PHP_ME(SolrCollapseFunction, getNullPolicy, Solr_no_args, ZEND_ACC_PUBLIC)
566 PHP_ME(SolrCollapseFunction, __toString, Solr_no_args, ZEND_ACC_PUBLIC)
567 PHP_ME(SolrCollapseFunction, __sleep, Solr_no_args, ZEND_ACC_PUBLIC)
568 PHP_ME(SolrCollapseFunction, __wakeup, Solr_no_args, ZEND_ACC_PUBLIC)
569
570 PHP_FE_END
571 };
572 /* }}} */
573
574 /* {{{ solr_document_methods */
575 static zend_function_entry solr_document_methods[] = {
576 SOLR_CTOR(SolrDocument, __construct, SolrDocument__construct_args)
577 SOLR_DTOR(SolrDocument, __destruct, Solr_no_args)
578
579 PHP_ME(SolrDocument, __clone, Solr_no_args, ZEND_ACC_PUBLIC)
580 PHP_ME(SolrDocument, __set, SolrDocument_addField_args, ZEND_ACC_PUBLIC)
581 PHP_ME(SolrDocument, __get, SolrDocument_getField_args, ZEND_ACC_PUBLIC)
582 PHP_ME(SolrDocument, __isset, SolrDocument_fieldExists_args, ZEND_ACC_PUBLIC)
583 PHP_ME(SolrDocument, __unset, SolrDocument_deleteField_args, ZEND_ACC_PUBLIC)
584
585 PHP_ME(SolrDocument, offsetSet, SolrDocument_addField_args, ZEND_ACC_PUBLIC)
586 PHP_ME(SolrDocument, offsetGet, SolrDocument_getField_args, ZEND_ACC_PUBLIC)
587 PHP_ME(SolrDocument, offsetExists, SolrDocument_fieldExists_args, ZEND_ACC_PUBLIC)
588 PHP_ME(SolrDocument, offsetUnset, SolrDocument_deleteField_args, ZEND_ACC_PUBLIC)
589
590 PHP_ME(SolrDocument, current, SolrDocument_current_args, ZEND_ACC_PUBLIC)
591 PHP_ME(SolrDocument, key, Solr_no_args, ZEND_ACC_PUBLIC)
592 PHP_ME(SolrDocument, next, Solr_no_args, ZEND_ACC_PUBLIC)
593 PHP_ME(SolrDocument, rewind, Solr_no_args, ZEND_ACC_PUBLIC)
594 PHP_ME(SolrDocument, valid, Solr_no_args, ZEND_ACC_PUBLIC)
595
596 PHP_ME(SolrDocument, serialize, Solr_no_args, ZEND_ACC_PUBLIC)
597 PHP_ME(SolrDocument, unserialize, SolrDocument_unserialize_args, ZEND_ACC_PUBLIC)
598
599 PHP_ME(SolrDocument, clear, Solr_no_args, ZEND_ACC_PUBLIC)
600 PHP_MALIAS(SolrDocument, reset, clear, Solr_no_args, ZEND_ACC_PUBLIC)
601 PHP_ME(SolrDocument, addField, SolrDocument_addField_args, ZEND_ACC_PUBLIC)
602 PHP_ME(SolrDocument, getFieldNames, Solr_no_args, ZEND_ACC_PUBLIC)
603 PHP_ME(SolrDocument, getFieldCount, Solr_no_args, ZEND_ACC_PUBLIC)
604 PHP_ME(SolrDocument, getField, SolrDocument_getField_args, ZEND_ACC_PUBLIC)
605 PHP_ME(SolrDocument, toArray, Solr_no_args, ZEND_ACC_PUBLIC)
606 PHP_ME(SolrDocument, fieldExists, SolrDocument_fieldExists_args, ZEND_ACC_PUBLIC)
607 PHP_ME(SolrDocument, deleteField, SolrDocument_deleteField_args, ZEND_ACC_PUBLIC)
608 PHP_ME(SolrDocument, sort, SolrDocument_sort_args, ZEND_ACC_PUBLIC)
609 PHP_ME(SolrDocument, merge, SolrDocument_merge_args, ZEND_ACC_PUBLIC)
610 PHP_ME(SolrDocument, getInputDocument, SolrDocument_getInputDocument_args, ZEND_ACC_PUBLIC)
611 PHP_ME(SolrDocument, getChildDocumentsCount, Solr_no_args, ZEND_ACC_PUBLIC)
612 PHP_ME(SolrDocument, hasChildDocuments, Solr_no_args, ZEND_ACC_PUBLIC)
613 PHP_ME(SolrDocument, getChildDocuments, Solr_no_args, ZEND_ACC_PUBLIC)
614 PHP_FE_END
615 };
616 /* }}} */
617
618 /* {{{ solr_input_document_methods */
619 static zend_function_entry solr_input_document_methods[] = {
620 SOLR_CTOR(SolrInputDocument, __construct, SolrInputDocument__construct_args)
621 SOLR_DTOR(SolrInputDocument, __destruct, Solr_no_args)
622 PHP_ME(SolrInputDocument, __clone, Solr_no_args, ZEND_ACC_PUBLIC)
623 PHP_ME(SolrInputDocument, __sleep, Solr_no_args, ZEND_ACC_PUBLIC)
624 PHP_ME(SolrInputDocument, __wakeup, Solr_no_args, ZEND_ACC_PUBLIC)
625 PHP_ME(SolrInputDocument, setBoost, SolrInputDocument_setBoost_args, ZEND_ACC_PUBLIC)
626 PHP_ME(SolrInputDocument, getBoost, Solr_no_args, ZEND_ACC_PUBLIC)
627 PHP_ME(SolrInputDocument, clear, Solr_no_args, ZEND_ACC_PUBLIC)
628 PHP_MALIAS(SolrInputDocument, reset, clear, Solr_no_args, ZEND_ACC_PUBLIC)
629 PHP_ME(SolrInputDocument, addField, SolrInputDocument_addField_args, ZEND_ACC_PUBLIC)
630 PHP_ME(SolrInputDocument, updateField, SolrInputDocument_updateField_args, ZEND_ACC_PUBLIC)
631 PHP_ME(SolrInputDocument, getFieldBoost, SolrInputDocument_getFieldBoost_args, ZEND_ACC_PUBLIC)
632 PHP_ME(SolrInputDocument, setFieldBoost, SolrInputDocument_setFieldBoost_args, ZEND_ACC_PUBLIC)
633 PHP_ME(SolrInputDocument, getFieldNames, Solr_no_args, ZEND_ACC_PUBLIC)
634 PHP_ME(SolrInputDocument, getFieldCount, Solr_no_args, ZEND_ACC_PUBLIC)
635 PHP_ME(SolrInputDocument, getField, SolrInputDocument_getField_args, ZEND_ACC_PUBLIC)
636 PHP_ME(SolrInputDocument, toArray, Solr_no_args, ZEND_ACC_PUBLIC)
637 PHP_ME(SolrInputDocument, fieldExists, SolrInputDocument_fieldExists_args, ZEND_ACC_PUBLIC)
638 PHP_ME(SolrInputDocument, deleteField, SolrInputDocument_deleteField_args, ZEND_ACC_PUBLIC)
639 PHP_ME(SolrInputDocument, sort, SolrInputDocument_sort_args, ZEND_ACC_PUBLIC)
640 PHP_ME(SolrInputDocument, merge, SolrInputDocument_merge_args, ZEND_ACC_PUBLIC)
641 PHP_ME(SolrInputDocument, addChildDocument, SolrInputDocument_addChildDocument_args, ZEND_ACC_PUBLIC)
642 PHP_ME(SolrInputDocument, getChildDocuments, Solr_no_args, ZEND_ACC_PUBLIC)
643 PHP_ME(SolrInputDocument, hasChildDocuments, Solr_no_args, ZEND_ACC_PUBLIC)
644 PHP_ME(SolrInputDocument, getChildDocumentsCount, Solr_no_args, ZEND_ACC_PUBLIC)
645 PHP_ME(SolrInputDocument, addChildDocuments, SolrInputDocument_addChildDocuments_args, ZEND_ACC_PUBLIC)
646 PHP_ME(SolrInputDocument, setVersion, SolrInputDocument_setVersion_args, ZEND_ACC_PUBLIC)
647 PHP_ME(SolrInputDocument, getVersion, Solr_no_args, ZEND_ACC_PUBLIC)
648 PHP_FE_END
649 };
650 /* }}} */
651
652 /* {{{ solr_client_methods */
653 static zend_function_entry solr_client_methods[] = {
654 SOLR_CTOR(SolrClient, __construct, SolrClient_constructor_args)
655 SOLR_DTOR(SolrClient, __destruct, Solr_no_args)
656 PHP_ME(SolrClient, __sleep, Solr_no_args, ZEND_ACC_PUBLIC)
657 PHP_ME(SolrClient, __wakeup, Solr_no_args, ZEND_ACC_PUBLIC)
658 PHP_ME(SolrClient, __clone, Solr_no_args, ZEND_ACC_PUBLIC)
659 PHP_ME(SolrClient, getOptions, Solr_no_args, ZEND_ACC_PUBLIC)
660 PHP_ME(SolrClient, getDebug, Solr_no_args, ZEND_ACC_PUBLIC)
661 PHP_ME(SolrClient, setServlet, SolrClient_setServlet_args, ZEND_ACC_PUBLIC)
662 PHP_ME(SolrClient, query, SolrClient_query_args, ZEND_ACC_PUBLIC)
663 PHP_ME(SolrClient, addDocument, SolrClient_addDocument_args, ZEND_ACC_PUBLIC)
664 PHP_ME(SolrClient, addDocuments, SolrClient_addDocuments_args, ZEND_ACC_PUBLIC)
665 PHP_ME(SolrClient, sendUpdateStream, SolrClient_sendUpdateStream_args, ZEND_ACC_PUBLIC)
666 PHP_ME(SolrClient, request, SolrClient_request_args, ZEND_ACC_PUBLIC)
667 PHP_ME(SolrClient, setResponseWriter, SolrClient_setResponseWriter_args, ZEND_ACC_PUBLIC)
668 PHP_ME(SolrClient, deleteById, SolrClient_deleteById_args, ZEND_ACC_PUBLIC)
669 PHP_ME(SolrClient, deleteByIds, SolrClient_deleteByIds_args, ZEND_ACC_PUBLIC)
670 PHP_ME(SolrClient, deleteByQuery, SolrClient_deleteByQuery_args, ZEND_ACC_PUBLIC)
671 PHP_ME(SolrClient, deleteByQueries, SolrClient_deleteByQueries_args, ZEND_ACC_PUBLIC)
672 PHP_ME(SolrClient, getById, SolrClient_deleteById_args, ZEND_ACC_PUBLIC)
673 PHP_ME(SolrClient, getByIds, SolrClient_deleteByIds_args, ZEND_ACC_PUBLIC)
674 PHP_ME(SolrClient, commit, SolrClient_commit_args, ZEND_ACC_PUBLIC)
675 PHP_ME(SolrClient, optimize, SolrClient_optimize_args, ZEND_ACC_PUBLIC)
676 PHP_ME(SolrClient, rollback, SolrClient_rollback_args, ZEND_ACC_PUBLIC)
677 PHP_ME(SolrClient, ping, SolrClient_ping_args, ZEND_ACC_PUBLIC)
678 PHP_ME(SolrClient, system, SolrClient_info_args, ZEND_ACC_PUBLIC)
679 PHP_ME(SolrClient, threads, SolrClient_threads_args, ZEND_ACC_PUBLIC)
680
681 PHP_FE_END
682 };
683 /* }}} */
684
685 /* {{{ solr_exception_methods. None. */
686 static zend_function_entry solr_exception_methods[] = {
687 PHP_ME(SolrException, getInternalInfo, Solr_no_args, ZEND_ACC_PUBLIC)
688
689 PHP_FE_END
690 };
691 /* }}} */
692
693 /* {{{ solr_exception_methods. None. */
694 static zend_function_entry solr_client_exception_methods[] = {
695 PHP_ME(SolrClientException, getInternalInfo, Solr_no_args, ZEND_ACC_PUBLIC)
696
697 PHP_FE_END
698 };
699 /* }}} */
700
701 /* {{{ solr_exception_methods. None. */
702 static zend_function_entry solr_server_exception_methods[] = {
703 PHP_ME(SolrServerException, getInternalInfo, Solr_no_args, ZEND_ACC_PUBLIC)
704
705 PHP_FE_END
706 };
707 /* }}} */
708
709 /* {{{ solr_exception_methods. None. */
710 static zend_function_entry solr_illegal_operation_exception_methods[] = {
711 PHP_ME(SolrIllegalOperationException, getInternalInfo, Solr_no_args, ZEND_ACC_PUBLIC)
712
713 PHP_FE_END
714 };
715 /* }}} */
716
717 /* {{{ solr_exception_methods. None. */
718 static zend_function_entry solr_illegal_argument_exception_methods[] = {
719 PHP_ME(SolrIllegalArgumentException, getInternalInfo, Solr_no_args, ZEND_ACC_PUBLIC)
720
721 PHP_FE_END
722 };
723 /* }}} */
724
725 /* PHP_MALIAS(SolrInputDocument, reset, clear, Solr_no_args, ZEND_ACC_PUBLIC) */
726
727 /* {{{ solr_params_methods. */
728 static zend_function_entry solr_params_methods[] = {
729 PHP_ME(SolrParams, setParam, SolrParams_setParam_args, ZEND_ACC_PUBLIC)
730 PHP_ME(SolrParams, addParam, SolrParams_addParam_args, ZEND_ACC_PUBLIC)
731 PHP_ME(SolrParams, __toString, Solr_no_args, ZEND_ACC_PUBLIC)
732 PHP_ME(SolrParams, toString, SolrParams_toString_args, ZEND_ACC_PUBLIC)
733 PHP_ME(SolrParams, getParams, Solr_no_args, ZEND_ACC_PUBLIC)
734 PHP_ME(SolrParams, getParam, SolrParams_getParam_args, ZEND_ACC_PUBLIC)
735 PHP_ME(SolrParams, getPreparedParams, Solr_no_args, ZEND_ACC_PUBLIC)
736 PHP_ME(SolrParams, __clone, Solr_no_args, ZEND_ACC_PUBLIC)
737 PHP_ME(SolrParams, serialize, Solr_no_args, ZEND_ACC_PUBLIC)
738 PHP_ME(SolrParams, unserialize, SolrParams_unserialize_args, ZEND_ACC_PUBLIC)
739 PHP_MALIAS(SolrParams, add, addParam, SolrParams_addParam_args, ZEND_ACC_PUBLIC)
740 PHP_MALIAS(SolrParams, set, setParam, SolrParams_setParam_args, ZEND_ACC_PUBLIC)
741 PHP_MALIAS(SolrParams, get, getParam, SolrParams_getParam_args, ZEND_ACC_PUBLIC)
742
743 PHP_FE_END
744 };
745 /* }}} */
746
747 /* {{{ solr_modifiable_params_methods. */
748 static zend_function_entry solr_modifiable_params_methods[] = {
749 SOLR_CTOR(SolrModifiableParams, __construct, Solr_no_args)
750 SOLR_DTOR(SolrModifiableParams, __destruct, Solr_no_args)
751
752 PHP_FE_END
753 };
754 /* }}} */
755
756 static zend_function_entry solr_extract_request_methods[] = {
757 PHP_ME(SolrExtractRequest, __construct, Solr_no_args, ZEND_ACC_PRIVATE | ZEND_ACC_CTOR)
758 PHP_ME(SolrExtractRequest, __destruct, Solr_no_args, ZEND_ACC_PUBLIC)
759 PHP_ME(SolrExtractRequest, createFromFile, SolrExtractRequest_createFromFile_args, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
760 PHP_ME(SolrExtractRequest, createFromStream, SolrExtractRequest_createFromStream_args, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
761 PHP_ME(SolrExtractRequest, __clone, Solr_no_args, ZEND_ACC_PUBLIC)
762 PHP_ME(SolrExtractRequest, __sleep, Solr_no_args, ZEND_ACC_PUBLIC)
763 PHP_ME(SolrExtractRequest, __wakeup, Solr_no_args, ZEND_ACC_PUBLIC)
764 PHP_FE_END
765 };
766
767 /* {{{ solr_query_methods. */
768 static zend_function_entry solr_query_methods[] = {
769 SOLR_CTOR(SolrQuery, __construct, SolrQuery_constructor_args)
770 SOLR_DTOR(SolrQuery, __destruct, Solr_no_args)
771
772 /* CommonQueryParameters */
773 PHP_ME(SolrQuery, setQuery, SolrQuery_setQuery_args, ZEND_ACC_PUBLIC)
774 PHP_ME(SolrQuery, getQuery, Solr_no_args, ZEND_ACC_PUBLIC)
775 PHP_ME(SolrQuery, setStart, SolrQuery_setStart_args, ZEND_ACC_PUBLIC)
776 PHP_ME(SolrQuery, getStart, Solr_no_args, ZEND_ACC_PUBLIC)
777 PHP_ME(SolrQuery, setRows, SolrQuery_setRows_args, ZEND_ACC_PUBLIC)
778 PHP_ME(SolrQuery, getRows, Solr_no_args, ZEND_ACC_PUBLIC)
779 PHP_ME(SolrQuery, addField, SolrQuery_addField_args, ZEND_ACC_PUBLIC)
780 PHP_ME(SolrQuery, removeField, SolrQuery_addField_args, ZEND_ACC_PUBLIC)
781 PHP_ME(SolrQuery, getFields, Solr_no_args, ZEND_ACC_PUBLIC)
782 PHP_ME(SolrQuery, addSortField, SolrQuery_addSortField_args, ZEND_ACC_PUBLIC)
783 PHP_ME(SolrQuery, removeSortField, SolrQuery_addField_args, ZEND_ACC_PUBLIC)
784 PHP_ME(SolrQuery, getSortFields, Solr_no_args, ZEND_ACC_PUBLIC)
785 PHP_ME(SolrQuery, addFilterQuery, SolrQuery_addFilterQuery_args, ZEND_ACC_PUBLIC)
786 PHP_ME(SolrQuery, removeFilterQuery, SolrQuery_addFilterQuery_args, ZEND_ACC_PUBLIC)
787 PHP_ME(SolrQuery, getFilterQueries, Solr_no_args, ZEND_ACC_PUBLIC)
788 PHP_ME(SolrQuery, setShowDebugInfo, SolrQuery_setShowDebugInfo_args, ZEND_ACC_PUBLIC)
789 PHP_ME(SolrQuery, setExplainOther, SolrQuery_setExplainOther_args, ZEND_ACC_PUBLIC)
790 PHP_ME(SolrQuery, setTimeAllowed, SolrQuery_setTimeAllowed_args, ZEND_ACC_PUBLIC)
791 PHP_ME(SolrQuery, getTimeAllowed, Solr_no_args, ZEND_ACC_PUBLIC)
792 PHP_ME(SolrQuery, setOmitHeader, SolrQuery_setOmitHeader_args, ZEND_ACC_PUBLIC)
793
794 /* CoreQueryParameters */
795 PHP_ME(SolrQuery, setEchoHandler, SolrQuery_setEchoHandler_args, ZEND_ACC_PUBLIC)
796 PHP_ME(SolrQuery, setEchoParams, SolrQuery_setEchoParams_args, ZEND_ACC_PUBLIC)
797
798 /* SimpleFacetParameters */
799 PHP_ME(SolrQuery, setFacet, SolrQuery_facet_1_1_args, ZEND_ACC_PUBLIC)
800 PHP_ME(SolrQuery, getFacet, Solr_no_args, ZEND_ACC_PUBLIC)
801 PHP_ME(SolrQuery, addFacetField, SolrQuery_facet_1_1_args, ZEND_ACC_PUBLIC)
802 PHP_ME(SolrQuery, removeFacetField, SolrQuery_facet_1_1_args, ZEND_ACC_PUBLIC)
803 PHP_ME(SolrQuery, getFacetFields, Solr_no_args, ZEND_ACC_PUBLIC)
804 PHP_ME(SolrQuery, addFacetQuery, SolrQuery_facet_1_1_args, ZEND_ACC_PUBLIC)
805 PHP_ME(SolrQuery, removeFacetQuery, SolrQuery_facet_1_1_args, ZEND_ACC_PUBLIC)
806 PHP_ME(SolrQuery, getFacetQueries, Solr_no_args, ZEND_ACC_PUBLIC)
807 PHP_ME(SolrQuery, setFacetPrefix, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
808 PHP_ME(SolrQuery, getFacetPrefix, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
809 PHP_ME(SolrQuery, setFacetSort, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
810 PHP_ME(SolrQuery, getFacetSort, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
811 PHP_ME(SolrQuery, setFacetLimit, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
812 PHP_ME(SolrQuery, getFacetLimit, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
813 PHP_ME(SolrQuery, setFacetOffset, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
814 PHP_ME(SolrQuery, getFacetOffset, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
815 PHP_ME(SolrQuery, setFacetMinCount, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
816 PHP_ME(SolrQuery, getFacetMinCount, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
817 PHP_ME(SolrQuery, setFacetMissing, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
818 PHP_ME(SolrQuery, getFacetMissing, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
819 PHP_ME(SolrQuery, setFacetMethod, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
820 PHP_ME(SolrQuery, getFacetMethod, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
821 PHP_ME(SolrQuery, setFacetEnumCacheMinDefaultFrequency, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
822
823 /* Date Faceting Parameters */
824 PHP_ME(SolrQuery, addFacetDateField, SolrQuery_facet_1_1_args, ZEND_ACC_PUBLIC)
825 PHP_ME(SolrQuery, removeFacetDateField, SolrQuery_facet_1_1_args, ZEND_ACC_PUBLIC)
826 PHP_ME(SolrQuery, getFacetDateFields, Solr_no_args, ZEND_ACC_PUBLIC)
827 PHP_ME(SolrQuery, setFacetDateStart, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
828 PHP_ME(SolrQuery, getFacetDateStart, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
829 PHP_ME(SolrQuery, setFacetDateEnd, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
830 PHP_ME(SolrQuery, getFacetDateEnd, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
831 PHP_ME(SolrQuery, setFacetDateGap, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
832 PHP_ME(SolrQuery, getFacetDateGap, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
833 PHP_ME(SolrQuery, setFacetDateHardEnd, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
834 PHP_ME(SolrQuery, getFacetDateHardEnd, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
835 PHP_ME(SolrQuery, addFacetDateOther, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
836 PHP_ME(SolrQuery, removeFacetDateOther, SolrQuery_facet_2_1_args, ZEND_ACC_PUBLIC)
837 PHP_ME(SolrQuery, getFacetDateOther, SolrQuery_facet_get_1_0_args, ZEND_ACC_PUBLIC)
838
839 /* SimpleGroupParameters */
840 PHP_ME(SolrQuery, setGroup, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
841 PHP_ME(SolrQuery, getGroup, Solr_no_args, ZEND_ACC_PUBLIC)
842 PHP_ME(SolrQuery, addGroupField, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
843 PHP_ME(SolrQuery, getGroupFields, Solr_no_args, ZEND_ACC_PUBLIC)
844 PHP_ME(SolrQuery, addGroupFunction, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
845 PHP_ME(SolrQuery, getGroupFunctions, Solr_no_args, ZEND_ACC_PUBLIC)
846 PHP_ME(SolrQuery, addGroupQuery, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
847 PHP_ME(SolrQuery, getGroupQueries, Solr_no_args, ZEND_ACC_PUBLIC)
848 PHP_ME(SolrQuery, setGroupLimit, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
849 PHP_ME(SolrQuery, getGroupLimit, Solr_no_args, ZEND_ACC_PUBLIC)
850 PHP_ME(SolrQuery, setGroupOffset, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
851 PHP_ME(SolrQuery, getGroupOffset, Solr_no_args, ZEND_ACC_PUBLIC)
852 PHP_ME(SolrQuery, addGroupSortField, SolrQuery_addSortField_args, ZEND_ACC_PUBLIC)
853 PHP_ME(SolrQuery, getGroupSortFields, Solr_no_args, ZEND_ACC_PUBLIC)
854 PHP_ME(SolrQuery, setGroupFormat, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
855 PHP_ME(SolrQuery, getGroupFormat, Solr_no_args, ZEND_ACC_PUBLIC)
856 PHP_ME(SolrQuery, setGroupMain, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
857 PHP_ME(SolrQuery, getGroupMain, Solr_no_args, ZEND_ACC_PUBLIC)
858 PHP_ME(SolrQuery, setGroupNGroups, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
859 PHP_ME(SolrQuery, getGroupNGroups, Solr_no_args, ZEND_ACC_PUBLIC)
860 PHP_ME(SolrQuery, setGroupTruncate, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
861 PHP_ME(SolrQuery, getGroupTruncate, Solr_no_args, ZEND_ACC_PUBLIC)
862 PHP_ME(SolrQuery, setGroupFacet, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
863 PHP_ME(SolrQuery, getGroupFacet, Solr_no_args, ZEND_ACC_PUBLIC)
864 PHP_ME(SolrQuery, setGroupCachePercent, SolrQuery_setGroupCachePct_args, ZEND_ACC_PUBLIC)
865 PHP_ME(SolrQuery, getGroupCachePercent, Solr_no_args, ZEND_ACC_PUBLIC)
866
867 /* Collapse Function */
868 PHP_ME(SolrQuery, collapse, SolrQuery_collapse_args, ZEND_ACC_PUBLIC)
869
870 /* Expand Componenet */
871 PHP_ME(SolrQuery, setExpand, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
872 PHP_ME(SolrQuery, getExpand, Solr_no_args, ZEND_ACC_PUBLIC)
873
874 PHP_ME(SolrQuery, addExpandSortField, SolrQuery_addSortField_args, ZEND_ACC_PUBLIC)
875 PHP_ME(SolrQuery, removeExpandSortField, SolrQuery_addField_args, ZEND_ACC_PUBLIC)
876 PHP_ME(SolrQuery, getExpandSortFields, Solr_no_args, ZEND_ACC_PUBLIC)
877
878 PHP_ME(SolrQuery, setExpandRows, SolrQuery_group_1_1_args, ZEND_ACC_PUBLIC)
879 PHP_ME(SolrQuery, getExpandRows, Solr_no_args, ZEND_ACC_PUBLIC)
880
881 PHP_ME(SolrQuery, setExpandQuery, SolrQuery_setQuery_args, ZEND_ACC_PUBLIC)
882 PHP_ME(SolrQuery, getExpandQuery, Solr_no_args, ZEND_ACC_PUBLIC)
883
884 PHP_ME(SolrQuery, addExpandFilterQuery, SolrQuery_addFilterQuery_args, ZEND_ACC_PUBLIC)
885 PHP_ME(SolrQuery, removeExpandFilterQuery, SolrQuery_addFilterQuery_args, ZEND_ACC_PUBLIC)
886 PHP_ME(SolrQuery, getExpandFilterQueries, Solr_no_args, ZEND_ACC_PUBLIC)
887
888 /* HighlightingParameters */
889 PHP_ME(SolrQuery, setHighlight, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
890 PHP_ME(SolrQuery, getHighlight, Solr_no_args, ZEND_ACC_PUBLIC)
891 PHP_ME(SolrQuery, addHighlightField, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
892 PHP_ME(SolrQuery, removeHighlightField, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
893 PHP_ME(SolrQuery, getHighlightFields, Solr_no_args, ZEND_ACC_PUBLIC)
894 PHP_ME(SolrQuery, setHighlightSnippets, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
895 PHP_ME(SolrQuery, getHighlightSnippets, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
896 PHP_ME(SolrQuery, setHighlightFragsize, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
897 PHP_ME(SolrQuery, getHighlightFragsize, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
898 PHP_ME(SolrQuery, setHighlightMergeContiguous, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
899 PHP_ME(SolrQuery, getHighlightMergeContiguous, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
900 PHP_ME(SolrQuery, setHighlightRequireFieldMatch, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
901 PHP_ME(SolrQuery, getHighlightRequireFieldMatch, Solr_no_args, ZEND_ACC_PUBLIC)
902 PHP_ME(SolrQuery, setHighlightMaxAnalyzedChars, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
903 PHP_ME(SolrQuery, getHighlightMaxAnalyzedChars, Solr_no_args, ZEND_ACC_PUBLIC)
904 PHP_ME(SolrQuery, setHighlightAlternateField, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
905 PHP_ME(SolrQuery, getHighlightAlternateField, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
906 PHP_ME(SolrQuery, setHighlightMaxAlternateFieldLength, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
907 PHP_ME(SolrQuery, getHighlightMaxAlternateFieldLength, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
908 PHP_ME(SolrQuery, setHighlightFormatter, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
909 PHP_ME(SolrQuery, getHighlightFormatter, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
910 PHP_ME(SolrQuery, setHighlightSimplePre, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
911 PHP_ME(SolrQuery, getHighlightSimplePre, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
912 PHP_ME(SolrQuery, setHighlightSimplePost, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
913 PHP_ME(SolrQuery, getHighlightSimplePost, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
914 PHP_ME(SolrQuery, setHighlightFragmenter, SolrQuery_hl_2_1_args, ZEND_ACC_PUBLIC)
915 PHP_ME(SolrQuery, getHighlightFragmenter, SolrQuery_hl_get_1_0_args, ZEND_ACC_PUBLIC)
916 PHP_ME(SolrQuery, setHighlightUsePhraseHighlighter, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
917 PHP_ME(SolrQuery, getHighlightUsePhraseHighlighter, Solr_no_args, ZEND_ACC_PUBLIC)
918 PHP_ME(SolrQuery, setHighlightHighlightMultiTerm, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
919 PHP_ME(SolrQuery, getHighlightHighlightMultiTerm, Solr_no_args, ZEND_ACC_PUBLIC)
920 PHP_ME(SolrQuery, setHighlightRegexSlop, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
921 PHP_ME(SolrQuery, getHighlightRegexSlop, Solr_no_args, ZEND_ACC_PUBLIC)
922 PHP_ME(SolrQuery, setHighlightRegexPattern, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
923 PHP_ME(SolrQuery, getHighlightRegexPattern, Solr_no_args, ZEND_ACC_PUBLIC)
924 PHP_ME(SolrQuery, setHighlightRegexMaxAnalyzedChars, SolrQuery_hl_1_1_args, ZEND_ACC_PUBLIC)
925 PHP_ME(SolrQuery, getHighlightRegexMaxAnalyzedChars, Solr_no_args, ZEND_ACC_PUBLIC)
926
927 /* StatsComponent */
928 PHP_ME(SolrQuery, setStats, SolrQuery_stats_1_1_args, ZEND_ACC_PUBLIC)
929 PHP_ME(SolrQuery, getStats, Solr_no_args, ZEND_ACC_PUBLIC)
930 PHP_ME(SolrQuery, addStatsField, SolrQuery_stats_1_1_args, ZEND_ACC_PUBLIC)
931 PHP_ME(SolrQuery, removeStatsField, SolrQuery_stats_1_1_args, ZEND_ACC_PUBLIC)
932 PHP_ME(SolrQuery, getStatsFields, Solr_no_args, ZEND_ACC_PUBLIC)
933 PHP_ME(SolrQuery, addStatsFacet, SolrQuery_stats_1_1_args, ZEND_ACC_PUBLIC)
934 PHP_ME(SolrQuery, removeStatsFacet, SolrQuery_stats_1_1_args, ZEND_ACC_PUBLIC)
935 PHP_ME(SolrQuery, getStatsFacets, Solr_no_args, ZEND_ACC_PUBLIC)
936
937 /* MoreLikeThis */
938 PHP_ME(SolrQuery, setMlt, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
939 PHP_ME(SolrQuery, getMlt, Solr_no_args, ZEND_ACC_PUBLIC)
940 PHP_ME(SolrQuery, setMltCount, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
941 PHP_ME(SolrQuery, getMltCount, Solr_no_args, ZEND_ACC_PUBLIC)
942 PHP_ME(SolrQuery, addMltField, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
943 PHP_ME(SolrQuery, removeMltField, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
944 PHP_ME(SolrQuery, getMltFields, Solr_no_args, ZEND_ACC_PUBLIC)
945 PHP_ME(SolrQuery, addMltQueryField, SolrQuery_mlt_2_2_args, ZEND_ACC_PUBLIC)
946 PHP_ME(SolrQuery, removeMltQueryField, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
947 PHP_ME(SolrQuery, getMltQueryFields, Solr_no_args, ZEND_ACC_PUBLIC)
948 PHP_ME(SolrQuery, setMltMinTermFrequency, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
949 PHP_ME(SolrQuery, getMltMinTermFrequency, Solr_no_args, ZEND_ACC_PUBLIC)
950 PHP_ME(SolrQuery, setMltMinDocFrequency, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
951 PHP_ME(SolrQuery, getMltMinDocFrequency, Solr_no_args, ZEND_ACC_PUBLIC)
952 PHP_ME(SolrQuery, setMltMinWordLength, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
953 PHP_ME(SolrQuery, getMltMinWordLength, Solr_no_args, ZEND_ACC_PUBLIC)
954 PHP_ME(SolrQuery, setMltMaxWordLength, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
955 PHP_ME(SolrQuery, getMltMaxWordLength, Solr_no_args, ZEND_ACC_PUBLIC)
956 PHP_ME(SolrQuery, setMltMaxNumTokens, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
957 PHP_ME(SolrQuery, getMltMaxNumTokens, Solr_no_args, ZEND_ACC_PUBLIC)
958 PHP_ME(SolrQuery, setMltMaxNumQueryTerms, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
959 PHP_ME(SolrQuery, getMltMaxNumQueryTerms, Solr_no_args, ZEND_ACC_PUBLIC)
960 PHP_ME(SolrQuery, setMltBoost, SolrQuery_mlt_1_1_args, ZEND_ACC_PUBLIC)
961 PHP_ME(SolrQuery, getMltBoost, Solr_no_args, ZEND_ACC_PUBLIC)
962
963 /* TermsComponent */
964 PHP_ME(SolrQuery, setTerms, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
965 PHP_ME(SolrQuery, getTerms, Solr_no_args, ZEND_ACC_PUBLIC)
966 PHP_ME(SolrQuery, setTermsField, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
967 PHP_ME(SolrQuery, getTermsField, Solr_no_args, ZEND_ACC_PUBLIC)
968 PHP_ME(SolrQuery, setTermsLowerBound, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
969 PHP_ME(SolrQuery, getTermsLowerBound, Solr_no_args, ZEND_ACC_PUBLIC)
970 PHP_ME(SolrQuery, setTermsUpperBound, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
971 PHP_ME(SolrQuery, getTermsUpperBound, Solr_no_args, ZEND_ACC_PUBLIC)
972 PHP_ME(SolrQuery, setTermsIncludeLowerBound, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
973 PHP_ME(SolrQuery, getTermsIncludeLowerBound, Solr_no_args, ZEND_ACC_PUBLIC)
974 PHP_ME(SolrQuery, setTermsIncludeUpperBound, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
975 PHP_ME(SolrQuery, getTermsIncludeUpperBound, Solr_no_args, ZEND_ACC_PUBLIC)
976 PHP_ME(SolrQuery, setTermsMinCount, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
977 PHP_ME(SolrQuery, getTermsMinCount, Solr_no_args, ZEND_ACC_PUBLIC)
978 PHP_ME(SolrQuery, setTermsMaxCount, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
979 PHP_ME(SolrQuery, getTermsMaxCount, Solr_no_args, ZEND_ACC_PUBLIC)
980 PHP_ME(SolrQuery, setTermsPrefix, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
981 PHP_ME(SolrQuery, getTermsPrefix, Solr_no_args, ZEND_ACC_PUBLIC)
982 PHP_ME(SolrQuery, setTermsLimit, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
983 PHP_ME(SolrQuery, getTermsLimit, Solr_no_args, ZEND_ACC_PUBLIC)
984 PHP_ME(SolrQuery, setTermsReturnRaw, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
985 PHP_ME(SolrQuery, getTermsReturnRaw, Solr_no_args, ZEND_ACC_PUBLIC)
986 PHP_ME(SolrQuery, setTermsSort, SolrQuery_terms_1_1_args, ZEND_ACC_PUBLIC)
987 PHP_ME(SolrQuery, getTermsSort, Solr_no_args, ZEND_ACC_PUBLIC)
988
989 /* TODO : TermVectorComponent */
990
991 PHP_FE_END
992 };
993 /* }}} */
994
995 /* {{{ solr_response_methods. */
996 static zend_function_entry solr_response_methods[] = {
997 PHP_ME(SolrResponse, getHttpStatus, Solr_no_args, ZEND_ACC_PUBLIC)
998 PHP_ME(SolrResponse, getHttpStatusMessage, Solr_no_args, ZEND_ACC_PUBLIC)
999 PHP_ME(SolrResponse, success, Solr_no_args, ZEND_ACC_PUBLIC)
1000 PHP_ME(SolrResponse, getRequestUrl, Solr_no_args, ZEND_ACC_PUBLIC)
1001 PHP_ME(SolrResponse, getRawRequestHeaders, Solr_no_args, ZEND_ACC_PUBLIC)
1002 PHP_ME(SolrResponse, getRawRequest, Solr_no_args, ZEND_ACC_PUBLIC)
1003 PHP_ME(SolrResponse, getRawResponseHeaders, Solr_no_args, ZEND_ACC_PUBLIC)
1004 PHP_ME(SolrResponse, getRawResponse, Solr_no_args, ZEND_ACC_PUBLIC)
1005 PHP_ME(SolrResponse, getDigestedResponse, Solr_no_args, ZEND_ACC_PUBLIC)
1006 PHP_ME(SolrResponse, setParseMode, SolrResponse_setParseMode_args, ZEND_ACC_PUBLIC)
1007 PHP_ME(SolrResponse, getResponse, Solr_no_args, ZEND_ACC_PUBLIC)
1008 PHP_ME(SolrResponse, getArrayResponse, Solr_no_args, ZEND_ACC_PUBLIC)
1009
1010 PHP_FE_END
1011 };
1012 /* }}} */
1013
1014 /* {{{ solr_query_response_methods. */
1015 static zend_function_entry solr_query_response_methods[] = {
1016 SOLR_CTOR(SolrQueryResponse, __construct, Solr_no_args)
1017 SOLR_DTOR(SolrQueryResponse, __destruct, Solr_no_args)
1018
1019 PHP_FE_END
1020 };
1021 /* }}} */
1022
1023 /* {{{ solr_update_response_methods. */
1024 static zend_function_entry solr_update_response_methods[] = {
1025 SOLR_CTOR(SolrUpdateResponse, __construct, Solr_no_args)
1026 SOLR_DTOR(SolrUpdateResponse, __destruct, Solr_no_args)
1027
1028 PHP_FE_END
1029 };
1030 /* }}} */
1031
1032 /* {{{ solr_ping_response_methods. */
1033 static zend_function_entry solr_ping_response_methods[] = {
1034 SOLR_CTOR(SolrPingResponse, __construct, Solr_no_args)
1035 SOLR_DTOR(SolrPingResponse, __destruct, Solr_no_args)
1036 PHP_ME(SolrPingResponse, getResponse, Solr_no_args, ZEND_ACC_PUBLIC)
1037
1038 PHP_FE_END
1039 };
1040 /* }}} */
1041
1042 /* {{{ solr_generic_response_methods. */
1043 static zend_function_entry solr_generic_response_methods[] = {
1044 SOLR_CTOR(SolrGenericResponse, __construct, Solr_no_args)
1045 SOLR_DTOR(SolrGenericResponse, __destruct, Solr_no_args)
1046
1047 PHP_FE_END
1048 };
1049 /* }}} */
1050
1051 /* {{{ solr_utils_methods. */
1052 static zend_function_entry solr_utils_methods[] = {
1053 PHP_ME(SolrUtils, escapeQueryChars, SolrUtils_escapeQueryChars_arg, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
1054 PHP_ME(SolrUtils, queryPhrase, SolrUtils_escapeQueryChars_arg, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
1055 PHP_ME(SolrUtils, digestXmlResponse, SolrUtils_digestXML_arg, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
1056 PHP_ME(SolrUtils, digestJsonResponse, SolrUtils_digestJson_arg, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
1057 PHP_ME(SolrUtils, getSolrVersion, Solr_no_args, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
1058 PHP_ME(SolrUtils, getSolrStats, Solr_no_args, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
1059
1060 PHP_FE_END
1061 };
1062 /* }}} */
1063
1064 /* {{{ solr_module_deps */
1065 static zend_module_dep solr_module_deps[] = {
1066 ZEND_MOD_END
1067 };
1068 /* }}} */
1069
1070 /* {{{ solr_module_entry */
1071 zend_module_entry solr_module_entry = {
1072 STANDARD_MODULE_HEADER_EX, NULL,
1073 solr_module_deps,
1074 PHP_SOLR_EXTENSION_NAME,
1075 solr_functions,
1076 PHP_MINIT(solr),
1077 PHP_MSHUTDOWN(solr),
1078 PHP_RINIT(solr),
1079 PHP_RSHUTDOWN(solr),
1080 PHP_MINFO(solr),
1081 PHP_SOLR_DOTTED_VERSION, /* The current extension version number. */
1082 STANDARD_MODULE_PROPERTIES
1083 };
1084 /* }}} */
1085
1086 #ifdef COMPILE_DL_SOLR
1087 ZEND_GET_MODULE(solr)
1088 #endif
1089
1090 /* {{{ PHP_MINIT_FUNCTION */
PHP_MINIT_FUNCTION(solr)1091 PHP_MINIT_FUNCTION(solr)
1092 {
1093
1094 #ifdef ZTS
1095 /* As of ZE 2.2.0, this has to be NULL. */
1096 /* It causes a segmentation fault, if it points to an actual function */
1097 /* Probably a bug in the Zend Engine API */
1098 ts_allocate_dtor php_solr_globals_dtor = NULL;
1099 #endif
1100
1101 zend_class_entry ce;
1102
1103 memcpy(&solr_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
1104 memcpy(&solr_document_field_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
1105 memcpy(&solr_input_document_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
1106 memcpy(&solr_client_object_handlers, &solr_input_document_object_handlers, sizeof(zend_object_handlers));
1107 memcpy(&solr_collapse_function_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
1108 memcpy(&solr_extract_request_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
1109
1110 solr_extract_request_object_handlers.offset = XtOffsetOf(solr_ustream_t, std);
1111
1112 solr_collapse_function_object_handlers.clone_obj = solr_collapse_function_object_handler_clone;
1113 solr_input_document_object_handlers.clone_obj = solr_document_object_handler_clone;
1114
1115 /* solr_object_handlers.read_property = solr_object_read_property; */
1116 solr_object_handlers.write_property = solr_object_write_property;
1117 solr_object_handlers.write_dimension = solr_object_write_dimension;
1118 solr_object_handlers.unset_property = solr_object_unset_property;
1119 solr_object_handlers.unset_dimension = solr_object_unset_dimension;
1120
1121 solr_document_field_handlers.write_property = solr_document_field_write_property;
1122 solr_document_field_handlers.unset_property = solr_document_field_unset_property;
1123
1124 #ifdef ZTS
1125 ZEND_INIT_MODULE_GLOBALS(solr, php_solr_globals_ctor, php_solr_globals_dtor);
1126 #else
1127 php_solr_globals_ctor(&solr_globals);
1128 #endif
1129
1130 /* Register extension constants */
1131 solr_extension_register_constants(type, module_number);
1132
1133 /* Register the SolrObject class */
1134 INIT_CLASS_ENTRY(ce, PHP_SOLR_OBJECT_CLASSNAME, solr_object_methods);
1135 solr_ce_SolrObject = zend_register_internal_class(&ce);
1136 solr_ce_SolrObject->ce_flags |= ZEND_ACC_FINAL;
1137
1138 /* SolrObject implements ArrayAccess */
1139 zend_class_implements(solr_ce_SolrObject, 1, solr_ce_ArrayAccess);
1140
1141 /* Register the SolrDocument class */
1142 INIT_CLASS_ENTRY(ce, PHP_SOLR_DOCUMENT_CLASSNAME, solr_document_methods);
1143 solr_ce_SolrDocument = zend_register_internal_class(&ce);
1144 solr_ce_SolrDocument->ce_flags |= ZEND_ACC_FINAL;
1145
1146 /* This internal property will be used to map to this SolrDocument instance */
1147 zend_declare_property_long(solr_ce_SolrDocument, SOLR_INDEX_PROPERTY_NAME, sizeof(SOLR_INDEX_PROPERTY_NAME) -1, 0L, ZEND_ACC_PRIVATE);
1148
1149 /* Register SolrDocument class constants */
1150 solr_document_register_class_constants(solr_ce_SolrDocument);
1151
1152 /* SolrDocument implements ArrayAccess, Iterator, Serializable */
1153 zend_class_implements(solr_ce_SolrDocument, 3, solr_ce_ArrayAccess, solr_ce_Iterator, solr_ce_Serializable);
1154
1155 /* Register the SolrDocumentField class */
1156 INIT_CLASS_ENTRY(ce, PHP_SOLR_DOCUMENT_FIELD_CLASSNAME, solr_document_field_methods);
1157 solr_ce_SolrDocumentField = zend_register_internal_class(&ce);
1158 solr_ce_SolrDocumentField->ce_flags |= ZEND_ACC_FINAL;
1159
1160 /* Register the name, boost and values properties */
1161 zend_declare_property_stringl(solr_ce_SolrDocumentField, SOLR_FIELD_NAME_PROPERTY_NAME, sizeof(SOLR_FIELD_NAME_PROPERTY_NAME)-1, SOLR_SPACE_STRING, sizeof(SOLR_SPACE_STRING)-1, ZEND_ACC_PUBLIC);
1162 zend_declare_property_double(solr_ce_SolrDocumentField, SOLR_FIELD_BOOST_PROPERTY_NAME, sizeof(SOLR_FIELD_BOOST_PROPERTY_NAME)-1, 0.0f, ZEND_ACC_PUBLIC);
1163 zend_declare_property_null(solr_ce_SolrDocumentField, SOLR_FIELD_VALUES_PROPERTY_NAME, sizeof(SOLR_FIELD_VALUES_PROPERTY_NAME)-1, ZEND_ACC_PUBLIC);
1164
1165 /* Register the SolrInputDocument class */
1166 INIT_CLASS_ENTRY(ce, PHP_SOLR_INPUT_DOCUMENT_CLASSNAME, solr_input_document_methods);
1167 solr_ce_SolrInputDocument = zend_register_internal_class(&ce);
1168 solr_ce_SolrInputDocument->ce_flags |= ZEND_ACC_FINAL;
1169
1170 /* This internal property will be used to map to this SolrDocument instance */
1171 zend_declare_property_long(solr_ce_SolrInputDocument, SOLR_INDEX_PROPERTY_NAME, sizeof(SOLR_INDEX_PROPERTY_NAME) -1, 0L, ZEND_ACC_PRIVATE);
1172
1173 /* Register SolrInputDocument class constants */
1174 solr_input_document_register_class_constants(solr_ce_SolrInputDocument);
1175
1176 /* Register SolrClient Class */
1177 INIT_CLASS_ENTRY(ce, PHP_SOLR_CLIENT_CLASSNAME, solr_client_methods);
1178 solr_ce_SolrClient = zend_register_internal_class(&ce);
1179 /* solr_ce_SolrClient->ce_flags |= ZEND_ACC_FINAL; */
1180
1181 /* This internal property will be used to map to this SolrClient instance */
1182 zend_declare_property_long(solr_ce_SolrClient, SOLR_INDEX_PROPERTY_NAME, sizeof(SOLR_INDEX_PROPERTY_NAME) -1, 0L, ZEND_ACC_PRIVATE);
1183
1184 /* Register SolrClient class constants */
1185 solr_client_register_class_constants(solr_ce_SolrClient);
1186
1187 /* Register the SolrParams class */
1188 INIT_CLASS_ENTRY(ce, PHP_SOLR_PARAMS_CLASSNAME, solr_params_methods);
1189 solr_ce_SolrParams = zend_register_internal_class(&ce);
1190 solr_ce_SolrParams->ce_flags |= ZEND_ACC_EXPLICIT_ABSTRACT_CLASS;
1191
1192 zend_class_implements(solr_ce_SolrParams, 1, solr_ce_Serializable);
1193
1194 /* This internal property will be used to map to this SolrParams instance */
1195 zend_declare_property_long(solr_ce_SolrParams, SOLR_INDEX_PROPERTY_NAME, sizeof(SOLR_INDEX_PROPERTY_NAME) -1, 0L, ZEND_ACC_PROTECTED);
1196
1197 /* Register the SolrModifiableParams class */
1198 INIT_CLASS_ENTRY(ce, PHP_SOLR_MODIFIABLE_PARAMS_CLASSNAME, solr_modifiable_params_methods);
1199 solr_ce_SolrModifiableParams = zend_register_internal_class_ex(&ce, solr_ce_SolrParams);
1200
1201 /* Register the SolrQuery class */
1202 INIT_CLASS_ENTRY(ce, PHP_SOLR_QUERY_CLASSNAME, solr_query_methods);
1203 solr_ce_SolrQuery = zend_register_internal_class_ex(&ce, solr_ce_SolrModifiableParams);
1204 init_solr_dismax_query();
1205 solr_query_register_class_constants(solr_ce_SolrQuery);
1206
1207 /* Register SolrExtractRequest */
1208 INIT_CLASS_ENTRY(ce, PHP_SOLR_EXTRACTREQUEST_CLASSNAME, solr_extract_request_methods);
1209 solr_ce_SolrExtractRequest = zend_register_internal_class(&ce);
1210 solr_ce_SolrExtractRequest->ce_flags |= ZEND_ACC_FINAL;
1211 solr_ce_SolrExtractRequest->create_object = solr_extract_create_object_handler;
1212
1213 zend_declare_property_long(solr_ce_SolrExtractRequest, SOLR_INDEX_PROPERTY_NAME, sizeof(SOLR_INDEX_PROPERTY_NAME)-1, 0L, ZEND_ACC_PRIVATE);
1214 solr_extract_register_class_constants(solr_ce_SolrExtractRequest);
1215
1216 /* Register the SolrCollapseFunction class */
1217 INIT_CLASS_ENTRY(ce, PHP_SOLR_COLLAPSE_FUNCTION_CLASSNAME, solr_collapse_function_methods);
1218 solr_ce_SolrCollapseFunction = zend_register_internal_class_ex(&ce, solr_ce_SolrCollapseFunction);
1219
1220 zend_declare_property_long(solr_ce_SolrCollapseFunction, SOLR_INDEX_PROPERTY_NAME, sizeof(SOLR_INDEX_PROPERTY_NAME)-1, 0l, ZEND_ACC_PROTECTED);
1221 solr_collapse_function_register_class_constants(solr_ce_SolrCollapseFunction);
1222
1223 /* Register the SolrResponse base class */
1224 INIT_CLASS_ENTRY(ce, PHP_SOLR_RESPONSE_CLASSNAME, solr_response_methods);
1225 solr_ce_SolrResponse = zend_register_internal_class(&ce);
1226 solr_ce_SolrResponse->ce_flags |= ZEND_ACC_EXPLICIT_ABSTRACT_CLASS;
1227
1228 /* Register all the properties for the SolrResponse object */
1229 solr_response_register_class_properties(solr_ce_SolrResponse);
1230
1231 /* Register all the constants for the SolrResponse object */
1232 solr_response_register_class_constants(solr_ce_SolrResponse);
1233
1234 /* Register the SolrQueryResponse class */
1235 INIT_CLASS_ENTRY(ce, PHP_SOLR_QUERY_RESPONSE_CLASSNAME, solr_query_response_methods);
1236 solr_ce_SolrQueryResponse = zend_register_internal_class_ex(&ce, solr_ce_SolrResponse);
1237 solr_ce_SolrQueryResponse->ce_flags |= ZEND_ACC_FINAL;
1238
1239 /* Register the SolrUpdateResponse class */
1240 INIT_CLASS_ENTRY(ce, PHP_SOLR_UPDATE_RESPONSE_CLASSNAME, solr_update_response_methods);
1241 solr_ce_SolrUpdateResponse = zend_register_internal_class_ex(&ce, solr_ce_SolrResponse);
1242 solr_ce_SolrUpdateResponse->ce_flags |= ZEND_ACC_FINAL;
1243
1244 /* Register the SolrPingResponse class */
1245 INIT_CLASS_ENTRY(ce, PHP_SOLR_PING_RESPONSE_CLASSNAME, solr_ping_response_methods);
1246 solr_ce_SolrPingResponse = zend_register_internal_class_ex(&ce, solr_ce_SolrResponse);
1247 solr_ce_SolrPingResponse->ce_flags |= ZEND_ACC_FINAL;
1248
1249 /* Register the SolrGenericResponse class */
1250 INIT_CLASS_ENTRY(ce, PHP_SOLR_GENERIC_RESPONSE_CLASSNAME, solr_generic_response_methods);
1251 solr_ce_SolrGenericResponse = zend_register_internal_class_ex(&ce, solr_ce_SolrResponse);
1252 solr_ce_SolrGenericResponse->ce_flags |= ZEND_ACC_FINAL;
1253
1254 /* Register the SolrUtils class */
1255 INIT_CLASS_ENTRY(ce, PHP_SOLR_UTILS_CLASSNAME, solr_utils_methods);
1256 solr_ce_SolrUtils = zend_register_internal_class(&ce);
1257 solr_ce_SolrUtils->ce_flags |= ZEND_ACC_EXPLICIT_ABSTRACT_CLASS;
1258
1259 /* Register the SolrException class */
1260 INIT_CLASS_ENTRY(ce, PHP_SOLR_EXCEPTION_CLASSNAME, solr_exception_methods);
1261 solr_ce_SolrException = zend_register_internal_class_ex(&ce, solr_ce_Exception);
1262
1263 solr_exception_register_class_properties(solr_ce_SolrException);
1264
1265 INIT_CLASS_ENTRY(ce, PHP_SOLR_ILLEGAL_OPERATION_EXCEPTION_CLASSNAME, solr_illegal_operation_exception_methods);
1266 solr_ce_SolrIllegalOperationException = zend_register_internal_class_ex(&ce, solr_ce_SolrException);
1267
1268 INIT_CLASS_ENTRY(ce, PHP_SOLR_ILLEGAL_ARGUMENT_EXCEPTION_CLASSNAME, solr_illegal_argument_exception_methods);
1269 solr_ce_SolrIllegalArgumentException = zend_register_internal_class_ex(&ce, solr_ce_SolrException);
1270
1271 INIT_CLASS_ENTRY(ce, PHP_SOLR_CLIENT_EXCEPTION_CLASSNAME, solr_client_exception_methods);
1272 solr_ce_SolrClientException = zend_register_internal_class_ex(&ce, solr_ce_SolrException);
1273
1274 INIT_CLASS_ENTRY(ce, PHP_SOLR_SERVER_EXCEPTION_CLASSNAME, solr_server_exception_methods);
1275 solr_ce_SolrServerException = zend_register_internal_class_ex(&ce, solr_ce_SolrException);
1276
1277 INIT_CLASS_ENTRY(ce, PHP_SOLR_MISSING_MANDATORY_PARAMETER_EXCEPTION_CLASSNAME, NULL);
1278 solr_ce_SolrMissingMandatoryParameterException = zend_register_internal_class_ex(&ce, solr_ce_SolrException);
1279
1280 return SUCCESS;
1281 }
1282 /* }}} */
1283
1284 /* {{{ PHP_RINIT_FUNCTION */
PHP_RINIT_FUNCTION(solr)1285 PHP_RINIT_FUNCTION(solr)
1286 {
1287 zend_bool persistent = SOLR_HASHTABLE_PERSISTENT;
1288
1289 /* Initial size of the HashTable */
1290 uint32_t nSize = SOLR_INITIAL_HASH_TABLE_SIZE;
1291
1292 ALLOC_HASHTABLE(SOLR_GLOBAL(documents));
1293 ALLOC_HASHTABLE(SOLR_GLOBAL(clients));
1294 ALLOC_HASHTABLE(SOLR_GLOBAL(params));
1295 ALLOC_HASHTABLE(SOLR_GLOBAL(functions));
1296 ALLOC_HASHTABLE(SOLR_GLOBAL(ustreams));
1297
1298 /* Initialize the HashTable for directory for SolrInputDocuments */
1299 zend_hash_init(SOLR_GLOBAL(documents), nSize, NULL, solr_destroy_document, persistent);
1300 zend_hash_init(SOLR_GLOBAL(clients), nSize, NULL, solr_destroy_client, persistent);
1301 /* Initialize the HashTable for directory of SolrParams */
1302 zend_hash_init(SOLR_GLOBAL(params), nSize, NULL, solr_destroy_params, persistent);
1303
1304 zend_hash_init(SOLR_GLOBAL(functions), nSize, NULL, solr_destroy_function, persistent);
1305 zend_hash_init(SOLR_GLOBAL(ustreams), nSize, NULL, solr_destroy_ustream, persistent);
1306
1307 return SUCCESS;
1308 }
1309 /* }}} */
1310
1311 /* {{{ PHP_RSHUTDOWN_FUNCTION */
PHP_RSHUTDOWN_FUNCTION(solr)1312 PHP_RSHUTDOWN_FUNCTION(solr)
1313 {
1314 zend_hash_destroy(SOLR_GLOBAL(documents));
1315 zend_hash_destroy(SOLR_GLOBAL(clients));
1316 zend_hash_destroy(SOLR_GLOBAL(params));
1317 zend_hash_destroy(SOLR_GLOBAL(functions));
1318 zend_hash_destroy(SOLR_GLOBAL(ustreams));
1319
1320 FREE_HASHTABLE(SOLR_GLOBAL(documents));
1321 FREE_HASHTABLE(SOLR_GLOBAL(clients));
1322 FREE_HASHTABLE(SOLR_GLOBAL(params));
1323 FREE_HASHTABLE(SOLR_GLOBAL(functions));
1324 FREE_HASHTABLE(SOLR_GLOBAL(ustreams));
1325
1326 return SUCCESS;
1327 }
1328 /* }}} */
1329
1330 /* {{{ PHP_MSHUTDOWN_FUNCTION */
PHP_MSHUTDOWN_FUNCTION(solr)1331 PHP_MSHUTDOWN_FUNCTION(solr)
1332 {
1333 return SUCCESS;
1334 }
1335 /* }}} */
1336
1337 /* {{{ PHP_MINFO_FUNCTION */
PHP_MINFO_FUNCTION(solr)1338 PHP_MINFO_FUNCTION(solr)
1339 {
1340 php_info_print_table_start();
1341 php_info_print_table_header(2, "Solr Support", "enabled");
1342 php_info_print_table_row(2, "Version", PHP_SOLR_DOTTED_VERSION);
1343 php_info_print_table_row(2, "Last Build Date", __DATE__);
1344 php_info_print_table_row(2, "Last Build Time", __TIME__);
1345
1346 php_info_print_table_end();
1347 }
1348 /* }}} */
1349
1350 #endif
1351
1352 /*
1353 * Local variables:
1354 * tab-width: 4
1355 * c-basic-offset: 4
1356 * indent-tabs-mode: t
1357 * End:
1358 * vim600: fdm=marker
1359 * vim: noet sw=4 ts=4
1360 */
1361