svn: /pecl/solr/trunk/ php_solr.c php_solr.h php_solr_client.c

From: Date: Sun, 01 Nov 2009 13:03:36 +0000
Subject: svn: /pecl/solr/trunk/ php_solr.c php_solr.h php_solr_client.c
Groups: php.pecl.cvs 
Request: Send a blank email to pecl-cvs+get-13212@lists.php.net to get a copy of this message
iekpo Sun, 01 Nov 2009 13:03:36 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=290122 Log: Added the SolrClient::getOptions() method Changed paths: U pecl/solr/trunk/php_solr.c U pecl/solr/trunk/php_solr.h U pecl/solr/trunk/php_solr_client.c Modified: pecl/solr/trunk/php_solr.c =================================================================== --- pecl/solr/trunk/php_solr.c 2009-11-01 13:02:10 UTC (rev 290121) +++ pecl/solr/trunk/php_solr.c 2009-11-01 13:03:36 UTC (rev 290122) @@ -22,8 +22,8 @@ #ifdef HAVE_SOLR -#if ((PHP_MAJOR_VERSION < 5) || (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION < 2) || (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION == 2 && PHP_RELEASE_VERSION < 11)) -#error PHP 5.2.11 or greater is required. Please upgrade your php version. +#if ((PHP_MAJOR_VERSION < 5) || (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION < 2) || (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION == 2 && PHP_RELEASE_VERSION < 4)) +#error PHP 5.2.4 or newer is required. Please upgrade your php version. #endif #if LIBCURL_VERSION_NUM < 0x071200 @@ -542,6 +542,7 @@ PHP_ME(SolrClient, __sleep, Solr_no_args, ZEND_ACC_PUBLIC) PHP_ME(SolrClient, __wakeup, NULL, ZEND_ACC_PUBLIC) PHP_ME(SolrClient, __clone, NULL, ZEND_ACC_PUBLIC | ZEND_ACC_CLONE) + PHP_ME(SolrClient, getOptions, Solr_no_args, ZEND_ACC_PUBLIC) PHP_ME(SolrClient, setServlet, SolrClient_setServlet_args, ZEND_ACC_PUBLIC) PHP_ME(SolrClient, query, SolrClient_query_args, ZEND_ACC_PUBLIC) PHP_ME(SolrClient, addDocument, SolrClient_addDocument_args, ZEND_ACC_PUBLIC) Modified: pecl/solr/trunk/php_solr.h =================================================================== --- pecl/solr/trunk/php_solr.h 2009-11-01 13:02:10 UTC (rev 290121) +++ pecl/solr/trunk/php_solr.h 2009-11-01 13:03:36 UTC (rev 290122) @@ -69,6 +69,10 @@ #include <TSRM/TSRM.h> #endif +#if ((PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION == 2)) +#define SOLR_ZEND_ENGINE_2_2 1 +#endif + /* List of constants */ #include "solr_constants.h" @@ -226,6 +230,7 @@ PHP_METHOD(SolrClient, __wakeup); PHP_METHOD(SolrClient, __clone); PHP_METHOD(SolrClient, query); +PHP_METHOD(SolrClient, getOptions); PHP_METHOD(SolrClient, addDocument); PHP_METHOD(SolrClient, addDocuments); PHP_METHOD(SolrClient, setServlet); Modified: pecl/solr/trunk/php_solr_client.c =================================================================== --- pecl/solr/trunk/php_solr_client.c 2009-11-01 13:02:10 UTC (rev 290121) +++ pecl/solr/trunk/php_solr_client.c 2009-11-01 13:03:36 UTC (rev 290122) @@ -1653,6 +1653,59 @@ } /* }}} */ +/* {{{ proto array SolrClient::getOptions() + Returns all the options for this client. */ +PHP_METHOD(SolrClient, getOptions) +{ + solr_client_t *client = NULL; + + solr_client_options_t *options = NULL; + + if (!return_value_used) + { + php_error_docref(NULL TSRMLS_CC, E_NOTICE, "Return value requested but output not processed."); + + return; + } + + /* Retrieve the client entry */ + if (solr_fetch_client_entry(getThis(), &client TSRMLS_CC) == FAILURE) + { + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Unable to retrieve client"); + + return; + } + + options = &(client->options); + + array_init(return_value); + + add_assoc_long(return_value, "timeout", options->timeout); + add_assoc_bool(return_value, "secure", (int) options->secure); + + add_assoc_stringl(return_value, "hostname", options->hostname.str, options->hostname.len, 1); + add_assoc_long(return_value, "port", options->host_port); + + add_assoc_stringl(return_value, "proxy_host", options->proxy_hostname.str, options->proxy_hostname.len, 1); + add_assoc_long(return_value, "proxy_port", options->proxy_port); + + + add_assoc_stringl(return_value, "path", options->path.str, options->path.len, 1); + + add_assoc_stringl(return_value, "http_auth", options->http_auth_credentials.str, options->http_auth_credentials.len, 1); + add_assoc_stringl(return_value, "proxy_auth", options->proxy_auth_credentials.str, options->proxy_auth_credentials.len, 1); + + add_assoc_bool(return_value, "ssl_verify_peer", (int) options->ssl_verify_peer); + add_assoc_long(return_value, "ssl_verify_host", options->ssl_verify_host); + + add_assoc_stringl(return_value, "ssl_cert", options->ssl_cert.str, options->ssl_cert.len, 1); + add_assoc_stringl(return_value, "ssl_key", options->ssl_key.str, options->ssl_key.len, 1); + add_assoc_stringl(return_value, "ssl_keypassword", options->ssl_keypassword.str, options->ssl_keypassword.len, 1); + add_assoc_stringl(return_value, "ssl_cainfo", options->ssl_cainfo.str, options->ssl_cainfo.len, 1); + add_assoc_stringl(return_value, "ssl_capath", options->ssl_capath.str, options->ssl_capath.len, 1); +} +/* }}} */ + /* * Local variables: * tab-width: 4

« previous php.pecl.cvs (#13212) next »