diff --git a/config.m4 b/config.m4 index 3a24d5592..452a56a34 100644 --- a/config.m4 +++ b/config.m4 @@ -193,11 +193,11 @@ if test "$MONGODB" != "no"; then src/MongoDB/Exception/UnexpectedValueException.c \ src/MongoDB/Exception/WriteException.c \ src/MongoDB/Monitoring.c \ - src/MongoDB/Monitoring/Subscriber.c \ - src/MongoDB/Monitoring/CommandSubscriber.c \ + src/MongoDB/Monitoring/CommandFailedEvent.c \ src/MongoDB/Monitoring/CommandStartedEvent.c \ + src/MongoDB/Monitoring/CommandSubscriber.c \ src/MongoDB/Monitoring/CommandSucceededEvent.c \ - src/MongoDB/Monitoring/CommandFailedEvent.c + src/MongoDB/Monitoring/Subscriber.c " PHP_ARG_WITH(libbson, whether to use system libbson, diff --git a/config.w32 b/config.w32 index 29cbdc211..72f813cc7 100644 --- a/config.w32 +++ b/config.w32 @@ -87,7 +87,7 @@ if (PHP_MONGODB != "no") { ADD_SOURCES(configure_module_dirname + "/src/BSON", "Binary.c Decimal128.c Javascript.c MaxKey.c MinKey.c ObjectID.c Persistable.c Regex.c Serializable.c Timestamp.c Type.c Unserializable.c UTCDateTime.c", "mongodb"); ADD_SOURCES(configure_module_dirname + "/src/MongoDB", "BulkWrite.c Command.c Cursor.c CursorId.c Manager.c Monitoring.c Query.c ReadConcern.c ReadPreference.c Server.c WriteConcern.c WriteConcernError.c WriteError.c WriteResult.c", "mongodb"); ADD_SOURCES(configure_module_dirname + "/src/MongoDB/Exception", "AuthenticationException.c BulkWriteException.c ConnectionException.c ConnectionTimeoutException.c Exception.c ExecutionTimeoutException.c InvalidArgumentException.c LogicException.c RuntimeException.c SSLConnectionException.c UnexpectedValueException.c WriteException.c", "mongodb"); - ADD_SOURCES(configure_module_dirname + "/src/MongoDB/Monitoring", "Subscriber.c CommandSubscriber.c CommandStartedEvent.c CommandSucceededEvent.c CommandFailedEvent.c", "mongodb"); + ADD_SOURCES(configure_module_dirname + "/src/MongoDB/Monitoring", "CommandFailedEvent.c CommandStartedEvent.c CommandSubscriber.c CommandSucceededEvent.c Subscriber.c", "mongodb"); ADD_SOURCES(configure_module_dirname + "/src/libbson/src/bson", PHP_MONGODB_BSON_SOURCES, "mongodb"); ADD_SOURCES(configure_module_dirname + "/src/libbson/src/jsonsl", PHP_MONGODB_JSONSL_SOURCES, "mongodb"); ADD_SOURCES(configure_module_dirname + "/src/libmongoc/src/mongoc", PHP_MONGODB_MONGOC_SOURCES, "mongodb"); diff --git a/php_phongo.c b/php_phongo.c index ed006f54b..35dba255e 100644 --- a/php_phongo.c +++ b/php_phongo.c @@ -414,7 +414,7 @@ zend_bool phongo_writeerror_init(zval *return_value, bson_t *bson TSRMLS_DC) /* return true; } /* }}} */ -php_phongo_writeresult_t *phongo_writeresult_init(zval *return_value, bson_t *reply, mongoc_client_t *client, int server_id TSRMLS_DC) /* {{{ */ +static php_phongo_writeresult_t *phongo_writeresult_init(zval *return_value, bson_t *reply, mongoc_client_t *client, int server_id TSRMLS_DC) /* {{{ */ { php_phongo_writeresult_t *writeresult; @@ -1361,12 +1361,7 @@ static void php_phongo_dispatch_handlers(const char *name, zval *z_event) { #if PHP_VERSION_ID >= 70000 zval *value; -#else - HashPosition pos; -#endif - TSRMLS_FETCH(); -#if PHP_VERSION_ID >= 70000 ZEND_HASH_FOREACH_VAL(&MONGODB_G(subscribers), value) { /* We can't use the zend_call_method_with_1_params macro here, as it * does a sizeof() on the name argument, which does only work with @@ -1375,6 +1370,9 @@ static void php_phongo_dispatch_handlers(const char *name, zval *z_event) zend_call_method(value, NULL, NULL, name, strlen(name), NULL, 1, z_event, NULL TSRMLS_CC); } ZEND_HASH_FOREACH_END(); #else + HashPosition pos; + TSRMLS_FETCH(); + zend_hash_internal_pointer_reset_ex(&MONGODB_G(subscribers), &pos); for (;; zend_hash_move_forward_ex(&MONGODB_G(subscribers), &pos)) { zval **value; @@ -1394,7 +1392,6 @@ static void php_phongo_dispatch_handlers(const char *name, zval *z_event) static void php_phongo_command_started(const mongoc_apm_command_started_t *event) { - mongoc_client_t *client = mongoc_apm_command_started_get_context(event); php_phongo_commandstartedevent_t *p_event; #if PHP_VERSION_ID >= 70000 zval z_event; @@ -1417,7 +1414,7 @@ static void php_phongo_command_started(const mongoc_apm_command_started_t *event p_event = Z_COMMANDSTARTEDEVENT_OBJ_P(z_event); #endif - p_event->client = client; + p_event->client = mongoc_apm_command_started_get_context(event); p_event->command_name = estrdup(mongoc_apm_command_started_get_command_name(event)); p_event->server_id = mongoc_apm_command_started_get_server_id(event); p_event->operation_id = mongoc_apm_command_started_get_operation_id(event); @@ -1435,7 +1432,6 @@ static void php_phongo_command_started(const mongoc_apm_command_started_t *event static void php_phongo_command_succeeded(const mongoc_apm_command_succeeded_t *event) { - mongoc_client_t *client = mongoc_apm_command_succeeded_get_context(event); php_phongo_commandsucceededevent_t *p_event; #if PHP_VERSION_ID >= 70000 zval z_event; @@ -1458,7 +1454,7 @@ static void php_phongo_command_succeeded(const mongoc_apm_command_succeeded_t *e p_event = Z_COMMANDSUCCEEDEDEVENT_OBJ_P(z_event); #endif - p_event->client = client; + p_event->client = mongoc_apm_command_succeeded_get_context(event); p_event->command_name = estrdup(mongoc_apm_command_succeeded_get_command_name(event)); p_event->server_id = mongoc_apm_command_succeeded_get_server_id(event); p_event->operation_id = mongoc_apm_command_succeeded_get_operation_id(event); @@ -1476,7 +1472,6 @@ static void php_phongo_command_succeeded(const mongoc_apm_command_succeeded_t *e static void php_phongo_command_failed(const mongoc_apm_command_failed_t *event) { - mongoc_client_t *client = mongoc_apm_command_failed_get_context(event); php_phongo_commandfailedevent_t *p_event; #if PHP_VERSION_ID >= 70000 zval z_event; @@ -1503,7 +1498,7 @@ static void php_phongo_command_failed(const mongoc_apm_command_failed_t *event) p_event = Z_COMMANDFAILEDEVENT_OBJ_P(z_event); #endif - p_event->client = client; + p_event->client = mongoc_apm_command_failed_get_context(event); p_event->command_name = estrdup(mongoc_apm_command_failed_get_command_name(event)); p_event->server_id = mongoc_apm_command_failed_get_server_id(event); p_event->operation_id = mongoc_apm_command_failed_get_operation_id(event); @@ -1518,12 +1513,12 @@ static void php_phongo_command_failed(const mongoc_apm_command_failed_t *event) #if PHP_VERSION_ID < 70000 MAKE_STD_ZVAL(p_event->z_error); object_init_ex(p_event->z_error, phongo_exception_from_mongoc_domain(tmp_error.domain, tmp_error.code)); - zend_update_property_string(default_exception_ce, p_event->z_error, "message", sizeof("message")-1, tmp_error.message TSRMLS_CC); - zend_update_property_long(default_exception_ce, p_event->z_error, "code", sizeof("code")-1, tmp_error.code TSRMLS_CC); + zend_update_property_string(default_exception_ce, p_event->z_error, ZEND_STRL("message"), tmp_error.message TSRMLS_CC); + zend_update_property_long(default_exception_ce, p_event->z_error, ZEND_STRL("code"), tmp_error.code TSRMLS_CC); #else object_init_ex(&p_event->z_error, phongo_exception_from_mongoc_domain(tmp_error.domain, tmp_error.code)); - zend_update_property_string(default_exception_ce, &p_event->z_error, "message", sizeof("message")-1, tmp_error.message TSRMLS_CC); - zend_update_property_long(default_exception_ce, &p_event->z_error, "code", sizeof("code")-1, tmp_error.code TSRMLS_CC); + zend_update_property_string(default_exception_ce, &p_event->z_error, ZEND_STRL("message"), tmp_error.message TSRMLS_CC); + zend_update_property_long(default_exception_ce, &p_event->z_error, ZEND_STRL("code"), tmp_error.code TSRMLS_CC); #endif } @@ -2026,7 +2021,7 @@ static void php_phongo_pclient_dtor(void *pp) /* {{{ PHP_RINIT_FUNCTION */ PHP_RINIT_FUNCTION(mongodb) { - /* Initialize HashTable for persistent clients */ + /* Initialize HashTable for APM subscribers */ zend_hash_init(&MONGODB_G(subscribers), 0, NULL, ZVAL_PTR_DTOR, 0); return SUCCESS; @@ -2170,11 +2165,12 @@ PHP_MINIT_FUNCTION(mongodb) php_phongo_sslconnectionexception_init_ce(INIT_FUNC_ARGS_PASSTHRU); php_phongo_unexpectedvalueexception_init_ce(INIT_FUNC_ARGS_PASSTHRU); + /* Register base APM classes first */ php_phongo_subscriber_init_ce(INIT_FUNC_ARGS_PASSTHRU); php_phongo_commandsubscriber_init_ce(INIT_FUNC_ARGS_PASSTHRU); + php_phongo_commandfailedevent_init_ce(INIT_FUNC_ARGS_PASSTHRU); php_phongo_commandstartedevent_init_ce(INIT_FUNC_ARGS_PASSTHRU); php_phongo_commandsucceededevent_init_ce(INIT_FUNC_ARGS_PASSTHRU); - php_phongo_commandfailedevent_init_ce(INIT_FUNC_ARGS_PASSTHRU); REGISTER_STRING_CONSTANT("MONGODB_VERSION", (char *)PHP_MONGODB_VERSION, CONST_CS | CONST_PERSISTENT); REGISTER_STRING_CONSTANT("MONGODB_STABILITY", (char *)PHP_MONGODB_STABILITY, CONST_CS | CONST_PERSISTENT); diff --git a/php_phongo_classes.h b/php_phongo_classes.h index b538c1526..ecd7aff49 100644 --- a/php_phongo_classes.h +++ b/php_phongo_classes.h @@ -91,15 +91,15 @@ static inline php_phongo_timestamp_t* php_timestamp_fetch_object(zend_object *ob static inline php_phongo_utcdatetime_t* php_utcdatetime_fetch_object(zend_object *obj) { return (php_phongo_utcdatetime_t *)((char *)obj - XtOffsetOf(php_phongo_utcdatetime_t, std)); } +static inline php_phongo_commandfailedevent_t* php_commandfailedevent_fetch_object(zend_object *obj) { + return (php_phongo_commandfailedevent_t *)((char *)obj - XtOffsetOf(php_phongo_commandfailedevent_t, std)); +} static inline php_phongo_commandstartedevent_t* php_commandstartedevent_fetch_object(zend_object *obj) { return (php_phongo_commandstartedevent_t *)((char *)obj - XtOffsetOf(php_phongo_commandstartedevent_t, std)); } static inline php_phongo_commandsucceededevent_t* php_commandsucceededevent_fetch_object(zend_object *obj) { return (php_phongo_commandsucceededevent_t *)((char *)obj - XtOffsetOf(php_phongo_commandsucceededevent_t, std)); } -static inline php_phongo_commandfailedevent_t* php_commandfailedevent_fetch_object(zend_object *obj) { - return (php_phongo_commandfailedevent_t *)((char *)obj - XtOffsetOf(php_phongo_commandfailedevent_t, std)); -} # define Z_COMMAND_OBJ_P(zv) (php_command_fetch_object(Z_OBJ_P(zv))) # define Z_CURSOR_OBJ_P(zv) (php_cursor_fetch_object(Z_OBJ_P(zv))) @@ -123,9 +123,9 @@ static inline php_phongo_commandfailedevent_t* php_commandfailedevent_fetch_obje # define Z_REGEX_OBJ_P(zv) (php_regex_fetch_object(Z_OBJ_P(zv))) # define Z_TIMESTAMP_OBJ_P(zv) (php_timestamp_fetch_object(Z_OBJ_P(zv))) # define Z_UTCDATETIME_OBJ_P(zv) (php_utcdatetime_fetch_object(Z_OBJ_P(zv))) +# define Z_COMMANDFAILEDEVENT_OBJ_P(zv) (php_commandfailedevent_fetch_object(Z_OBJ_P(zv))) # define Z_COMMANDSTARTEDEVENT_OBJ_P(zv) (php_commandstartedevent_fetch_object(Z_OBJ_P(zv))) # define Z_COMMANDSUCCEEDEDEVENT_OBJ_P(zv) (php_commandsucceededevent_fetch_object(Z_OBJ_P(zv))) -# define Z_COMMANDFAILEDEVENT_OBJ_P(zv) (php_commandfailedevent_fetch_object(Z_OBJ_P(zv))) # define Z_OBJ_COMMAND(zo) (php_command_fetch_object(zo)) # define Z_OBJ_CURSOR(zo) (php_cursor_fetch_object(zo)) @@ -149,9 +149,9 @@ static inline php_phongo_commandfailedevent_t* php_commandfailedevent_fetch_obje # define Z_OBJ_REGEX(zo) (php_regex_fetch_object(zo)) # define Z_OBJ_TIMESTAMP(zo) (php_timestamp_fetch_object(zo)) # define Z_OBJ_UTCDATETIME(zo) (php_utcdatetime_fetch_object(zo)) +# define Z_OBJ_COMMANDFAILEDEVENT(zo) (php_commandfailedevent_fetch_object(zo)) # define Z_OBJ_COMMANDSTARTEDEVENT(zo) (php_commandstartedevent_fetch_object(zo)) # define Z_OBJ_COMMANDSUCCEEDEDEVENT(zo) (php_commandsucceededevent_fetch_object(zo)) -# define Z_OBJ_COMMANDFAILEDEVENT(zo) (php_commandfailedevent_fetch_object(zo)) #else @@ -177,9 +177,9 @@ static inline php_phongo_commandfailedevent_t* php_commandfailedevent_fetch_obje # define Z_REGEX_OBJ_P(zv) ((php_phongo_regex_t *)zend_object_store_get_object(zv TSRMLS_CC)) # define Z_TIMESTAMP_OBJ_P(zv) ((php_phongo_timestamp_t *)zend_object_store_get_object(zv TSRMLS_CC)) # define Z_UTCDATETIME_OBJ_P(zv) ((php_phongo_utcdatetime_t *)zend_object_store_get_object(zv TSRMLS_CC)) +# define Z_COMMANDFAILEDEVENT_OBJ_P(zv) ((php_phongo_commandfailedevent_t *)zend_object_store_get_object(zv TSRMLS_CC)) # define Z_COMMANDSTARTEDEVENT_OBJ_P(zv) ((php_phongo_commandstartedevent_t *)zend_object_store_get_object(zv TSRMLS_CC)) # define Z_COMMANDSUCCEEDEDEVENT_OBJ_P(zv) ((php_phongo_commandsucceededevent_t *)zend_object_store_get_object(zv TSRMLS_CC)) -# define Z_COMMANDFAILEDEVENT_OBJ_P(zv) ((php_phongo_commandfailedevent_t *)zend_object_store_get_object(zv TSRMLS_CC)) # define Z_OBJ_COMMAND(zo) ((php_phongo_command_t *)zo) # define Z_OBJ_CURSOR(zo) ((php_phongo_cursor_t *)zo) @@ -203,9 +203,9 @@ static inline php_phongo_commandfailedevent_t* php_commandfailedevent_fetch_obje # define Z_OBJ_REGEX(zo) ((php_phongo_regex_t *)zo) # define Z_OBJ_TIMESTAMP(zo) ((php_phongo_timestamp_t *)zo) # define Z_OBJ_UTCDATETIME(zo) ((php_phongo_utcdatetime_t *)zo) +# define Z_OBJ_COMMANDFAILEDEVENT(zo) ((php_phongo_commandfailedevent_t *)zo) # define Z_OBJ_COMMANDSTARTEDEVENT(zo) ((php_phongo_commandstartedevent_t *)zo) # define Z_OBJ_COMMANDSUCCEEDEDEVENT(zo) ((php_phongo_commandsucceededevent_t *)zo) -# define Z_OBJ_COMMANDFAILEDEVENT(zo) ((php_phongo_commandfailedevent_t *)zo) #endif @@ -256,11 +256,11 @@ extern zend_class_entry *php_phongo_regex_ce; extern zend_class_entry *php_phongo_timestamp_ce; extern zend_class_entry *php_phongo_utcdatetime_ce; -extern zend_class_entry *php_phongo_subscriber_ce; -extern zend_class_entry *php_phongo_commandsubscriber_ce; +extern zend_class_entry *php_phongo_commandfailedevent_ce; extern zend_class_entry *php_phongo_commandstartedevent_ce; +extern zend_class_entry *php_phongo_commandsubscriber_ce; extern zend_class_entry *php_phongo_commandsucceededevent_ce; -extern zend_class_entry *php_phongo_commandfailedevent_ce; +extern zend_class_entry *php_phongo_subscriber_ce; extern void php_phongo_binary_init_ce(INIT_FUNC_ARGS); extern void php_phongo_decimal128_init_ce(INIT_FUNC_ARGS); @@ -303,11 +303,11 @@ extern void php_phongo_sslconnectionexception_init_ce(INIT_FUNC_ARGS); extern void php_phongo_unexpectedvalueexception_init_ce(INIT_FUNC_ARGS); extern void php_phongo_writeexception_init_ce(INIT_FUNC_ARGS); -extern void php_phongo_subscriber_init_ce(INIT_FUNC_ARGS); -extern void php_phongo_commandsubscriber_init_ce(INIT_FUNC_ARGS); +extern void php_phongo_commandfailedevent_init_ce(INIT_FUNC_ARGS); extern void php_phongo_commandstartedevent_init_ce(INIT_FUNC_ARGS); +extern void php_phongo_commandsubscriber_init_ce(INIT_FUNC_ARGS); extern void php_phongo_commandsucceededevent_init_ce(INIT_FUNC_ARGS); -extern void php_phongo_commandfailedevent_init_ce(INIT_FUNC_ARGS); +extern void php_phongo_subscriber_init_ce(INIT_FUNC_ARGS); /* Shared function entries for disabling constructors and unserialize() */ PHP_FUNCTION(MongoDB_disabled___construct); diff --git a/php_phongo_structs.h b/php_phongo_structs.h index 69d3faf36..cdd572106 100644 --- a/php_phongo_structs.h +++ b/php_phongo_structs.h @@ -207,34 +207,34 @@ typedef struct { uint32_t server_id; uint64_t operation_id; uint64_t request_id; - bson_t *command; - char *database_name; + uint64_t duration_micros; + PHONGO_STRUCT_ZVAL z_error; PHONGO_ZEND_OBJECT_POST -} php_phongo_commandstartedevent_t; +} php_phongo_commandfailedevent_t; typedef struct { PHONGO_ZEND_OBJECT_PRE mongoc_client_t *client; char *command_name; - int server_id; + uint32_t server_id; uint64_t operation_id; uint64_t request_id; - uint64_t duration_micros; - bson_t *reply; + bson_t *command; + char *database_name; PHONGO_ZEND_OBJECT_POST -} php_phongo_commandsucceededevent_t; +} php_phongo_commandstartedevent_t; typedef struct { PHONGO_ZEND_OBJECT_PRE mongoc_client_t *client; char *command_name; - int server_id; + uint32_t server_id; uint64_t operation_id; uint64_t request_id; uint64_t duration_micros; - PHONGO_STRUCT_ZVAL z_error; + bson_t *reply; PHONGO_ZEND_OBJECT_POST -} php_phongo_commandfailedevent_t; +} php_phongo_commandsucceededevent_t; #undef PHONGO_ZEND_OBJECT_PRE #undef PHONGO_ZEND_OBJECT_POST diff --git a/src/MongoDB/Manager.c b/src/MongoDB/Manager.c index 3d13a1799..9c9380488 100644 --- a/src/MongoDB/Manager.c +++ b/src/MongoDB/Manager.c @@ -29,8 +29,6 @@ #define PHONGO_MANAGER_URI_DEFAULT "mongodb://127.0.0.1/" -ZEND_EXTERN_MODULE_GLOBALS(mongodb) - /** * Manager abstracts a cluster of Server objects (i.e. socket connections). * @@ -45,8 +43,6 @@ ZEND_EXTERN_MODULE_GLOBALS(mongodb) */ zend_class_entry *php_phongo_manager_ce; -static zend_object_handlers php_phongo_handler_manager; - /* Checks if driverOptions contains a stream context resource in the "context" * key and incorporates any of its SSL options into the base array that did not * already exist (i.e. array union). The "context" key is then unset from the @@ -393,34 +389,6 @@ static PHP_METHOD(Manager, selectServer) } } /* }}} */ -/* {{{ proto void MongoDB\Driver\Manager::__wakeup() - Throws MongoDB\Driver\RuntimeException (serialization is not supported) */ -PHP_METHOD(Manager, __wakeup) -{ - SUPPRESS_UNUSED_WARNING(return_value_ptr) SUPPRESS_UNUSED_WARNING(return_value_used) SUPPRESS_UNUSED_WARNING(return_value) SUPPRESS_UNUSED_WARNING(this_ptr) - - if (zend_parse_parameters_none() == FAILURE) { - return; - } - - phongo_throw_exception(PHONGO_ERROR_RUNTIME TSRMLS_CC, "%s", "MongoDB\\Driver objects cannot be serialized"); -} -/* }}} */ - -/** - * Manager abstracts a cluster of Server objects (i.e. socket connections). - * - * Typically, users will connect to a cluster using a URI, and the Manager will - * perform tasks such as replica set discovery and create the necessary Server - * objects. That said, it is also possible to create a Manager with an arbitrary - * collection of Server objects using the static factory method (this can be - * useful for testing or administration). - * - * Operation methods do not take socket-level options (e.g. socketTimeoutMS). - * Those options should be specified during construction. - */ -/* {{{ MongoDB\Driver\Manager */ - /* {{{ MongoDB\Driver\Manager function entries */ ZEND_BEGIN_ARG_INFO_EX(ai_Manager___construct, 0, 0, 0) ZEND_ARG_INFO(0, uri) @@ -469,6 +437,8 @@ static zend_function_entry php_phongo_manager_me[] = { /* }}} */ /* {{{ MongoDB\Driver\Manager object handlers */ +static zend_object_handlers php_phongo_handler_manager; + static void php_phongo_manager_free_object(phongo_free_object_arg *object TSRMLS_DC) /* {{{ */ { php_phongo_manager_t *intern = Z_OBJ_MANAGER(object); diff --git a/src/MongoDB/Monitoring.h b/src/MongoDB/Monitoring.h index 5c868ef9b..abdd68c19 100644 --- a/src/MongoDB/Monitoring.h +++ b/src/MongoDB/Monitoring.h @@ -17,6 +17,8 @@ #ifndef PHONGO_MONITORING_H #define PHONGO_MONITORING_H +#include + PHP_FUNCTION(MongoDB_Monitoring_addSubscriber); PHP_FUNCTION(MongoDB_Monitoring_removeSubscriber); diff --git a/src/MongoDB/Monitoring/CommandFailedEvent.c b/src/MongoDB/Monitoring/CommandFailedEvent.c index 16d941f51..6a5f466d9 100644 --- a/src/MongoDB/Monitoring/CommandFailedEvent.c +++ b/src/MongoDB/Monitoring/CommandFailedEvent.c @@ -21,31 +21,17 @@ */ #ifdef HAVE_CONFIG_H -# include "config.h" +# include "config.h" #endif -/* External libs */ -#include -#include - -/* PHP Core stuff */ #include -#include -#include #include -#include -#include -/* Our Compatability header */ -#include "phongo_compat.h" -/* Our stuff */ +#include "phongo_compat.h" #include "php_phongo.h" -#include "php_bson.h" zend_class_entry *php_phongo_commandfailedevent_ce; -zend_object_handlers php_phongo_handler_commandfailedevent; - /* {{{ proto string CommandFailedEvent::getCommandName() Returns the command name for this event */ PHP_METHOD(CommandFailedEvent, getCommandName) @@ -60,8 +46,7 @@ PHP_METHOD(CommandFailedEvent, getCommandName) } PHONGO_RETVAL_STRING(intern->command_name); -} -/* }}} */ +} /* }}} */ /* {{{ proto int CommandFailedEvent::getDurationMicros() Returns the event's duration in microseconds */ @@ -77,8 +62,7 @@ PHP_METHOD(CommandFailedEvent, getDurationMicros) } RETURN_LONG(intern->duration_micros); -} -/* }}} */ +} /* }}} */ /* {{{ proto Exception CommandFailedEvent::getError() Returns the error document associated with the event */ @@ -98,8 +82,7 @@ PHP_METHOD(CommandFailedEvent, getError) #else RETURN_ZVAL(intern->z_error, 1, 0); #endif -} -/* }}} */ +} /* }}} */ /* {{{ proto string CommandFailedEvent::getOperationId() Returns the event's operation ID */ @@ -117,8 +100,7 @@ PHP_METHOD(CommandFailedEvent, getOperationId) sprintf(int_as_string, "%" PHONGO_LONG_FORMAT, intern->operation_id); PHONGO_RETVAL_STRING(int_as_string); -} -/* }}} */ +} /* }}} */ /* {{{ proto string CommandFailedEvent::getRequestId() Returns the event's request ID */ @@ -136,8 +118,7 @@ PHP_METHOD(CommandFailedEvent, getRequestId) sprintf(int_as_string, "%" PHONGO_LONG_FORMAT, intern->request_id); PHONGO_RETVAL_STRING(int_as_string); -} -/* }}} */ +} /* }}} */ /* {{{ proto MongoDB\Driver\Server CommandFailedEvent::getServer() Returns the Server from which the event originated */ @@ -153,16 +134,15 @@ PHP_METHOD(CommandFailedEvent, getServer) } phongo_server_init(return_value, intern->client, intern->server_id TSRMLS_CC); -} -/* }}} */ +} /* }}} */ /** * Event thrown when a command has failed to execute. * * This class is only constructed internally. */ -/* {{{ MongoDB\Driver\Monitoring\CommandFailedEvent */ +/* {{{ MongoDB\Driver\Monitoring\CommandFailedEvent function entries */ ZEND_BEGIN_ARG_INFO_EX(ai_CommandFailedEvent_void, 0, 0, 0) ZEND_END_ARG_INFO() @@ -177,11 +157,11 @@ static zend_function_entry php_phongo_commandfailedevent_me[] = { ZEND_NAMED_ME(__wakeup, PHP_FN(MongoDB_disabled___wakeup), ai_CommandFailedEvent_void, ZEND_ACC_PUBLIC|ZEND_ACC_FINAL) PHP_FE_END }; - /* }}} */ +/* {{{ MongoDB\Driver\Monitoring\CommandFailedEvent object handlers */ +static zend_object_handlers php_phongo_handler_commandfailedevent; -/* {{{ php_phongo_commandfailedevent_t object handlers */ static void php_phongo_commandfailedevent_free_object(phongo_free_object_arg *object TSRMLS_DC) /* {{{ */ { php_phongo_commandfailedevent_t *intern = Z_OBJ_COMMANDFAILEDEVENT(object); @@ -201,7 +181,7 @@ static void php_phongo_commandfailedevent_free_object(phongo_free_object_arg *ob #endif } /* }}} */ -phongo_create_object_retval php_phongo_commandfailedevent_create_object(zend_class_entry *class_type TSRMLS_DC) /* {{{ */ +static phongo_create_object_retval php_phongo_commandfailedevent_create_object(zend_class_entry *class_type TSRMLS_DC) /* {{{ */ { php_phongo_commandfailedevent_t *intern = NULL; @@ -225,7 +205,7 @@ phongo_create_object_retval php_phongo_commandfailedevent_create_object(zend_cla #endif } /* }}} */ -HashTable *php_phongo_commandfailedevent_get_debug_info(zval *object, int *is_temp TSRMLS_DC) /* {{{ */ +static HashTable *php_phongo_commandfailedevent_get_debug_info(zval *object, int *is_temp TSRMLS_DC) /* {{{ */ { php_phongo_commandfailedevent_t *intern; #if PHP_VERSION_ID >= 70000 @@ -296,8 +276,6 @@ void php_phongo_commandfailedevent_init_ce(INIT_FUNC_ARGS) /* {{{ */ return; } /* }}} */ - - /* * Local variables: * tab-width: 4 diff --git a/src/MongoDB/Monitoring/CommandStartedEvent.c b/src/MongoDB/Monitoring/CommandStartedEvent.c index eba3010ce..3fac54e4b 100644 --- a/src/MongoDB/Monitoring/CommandStartedEvent.c +++ b/src/MongoDB/Monitoring/CommandStartedEvent.c @@ -21,30 +21,17 @@ */ #ifdef HAVE_CONFIG_H -# include "config.h" +# include "config.h" #endif -/* External libs */ -#include -#include - -/* PHP Core stuff */ #include -#include -#include #include -#include -/* Our Compatability header */ -#include "phongo_compat.h" -/* Our stuff */ +#include "phongo_compat.h" #include "php_phongo.h" -#include "php_bson.h" zend_class_entry *php_phongo_commandstartedevent_ce; -zend_object_handlers php_phongo_handler_commandstartedevent; - /* {{{ proto stdClass CommandStartedEvent::getCommand() Returns the command document associated with the event */ PHP_METHOD(CommandStartedEvent, getCommand) @@ -65,8 +52,7 @@ PHP_METHOD(CommandStartedEvent, getCommand) #else RETURN_ZVAL(state.zchild, 0, 1); #endif -} -/* }}} */ +} /* }}} */ /* {{{ proto string CommandStartedEvent::getCommandName() Returns the command name for this event */ @@ -82,8 +68,7 @@ PHP_METHOD(CommandStartedEvent, getCommandName) } PHONGO_RETVAL_STRING(intern->command_name); -} -/* }}} */ +} /* }}} */ /* {{{ proto string CommandStartedEvent::getDatabaseName() Returns the database name for this event */ @@ -99,8 +84,7 @@ PHP_METHOD(CommandStartedEvent, getDatabaseName) } PHONGO_RETVAL_STRING(intern->database_name); -} -/* }}} */ +} /* }}} */ /* {{{ proto string CommandStartedEvent::getOperationId() Returns the event's operation ID */ @@ -118,8 +102,7 @@ PHP_METHOD(CommandStartedEvent, getOperationId) sprintf(int_as_string, "%" PHONGO_LONG_FORMAT, intern->operation_id); PHONGO_RETVAL_STRING(int_as_string); -} -/* }}} */ +} /* }}} */ /* {{{ proto string CommandStartedEvent::getRequestId() Returns the event's request ID */ @@ -137,8 +120,7 @@ PHP_METHOD(CommandStartedEvent, getRequestId) sprintf(int_as_string, "%" PHONGO_LONG_FORMAT, intern->request_id); PHONGO_RETVAL_STRING(int_as_string); -} -/* }}} */ +} /* }}} */ /* {{{ proto MongoDB\Driver\Server CommandStartedEvent::getServer() Returns the Server from which the event originated */ @@ -154,16 +136,15 @@ PHP_METHOD(CommandStartedEvent, getServer) } phongo_server_init(return_value, intern->client, intern->server_id TSRMLS_CC); -} -/* }}} */ +} /* }}} */ /** * Event thrown when a command has started to execute. * * This class is only constructed internally. */ -/* {{{ MongoDB\Driver\Monitoring\CommandStartedEvent */ +/* {{{ MongoDB\Driver\Monitoring\CommandStartedEvent function entries */ ZEND_BEGIN_ARG_INFO_EX(ai_CommandStartedEvent_void, 0, 0, 0) ZEND_END_ARG_INFO() @@ -178,11 +159,11 @@ static zend_function_entry php_phongo_commandstartedevent_me[] = { ZEND_NAMED_ME(__wakeup, PHP_FN(MongoDB_disabled___wakeup), ai_CommandStartedEvent_void, ZEND_ACC_PUBLIC|ZEND_ACC_FINAL) PHP_FE_END }; - /* }}} */ +/* {{{ MongoDB\Driver\Monitoring\CommandStartedEvent object handlers */ +static zend_object_handlers php_phongo_handler_commandstartedevent; -/* {{{ php_phongo_commandstartedevent_t object handlers */ static void php_phongo_commandstartedevent_free_object(phongo_free_object_arg *object TSRMLS_DC) /* {{{ */ { php_phongo_commandstartedevent_t *intern = Z_OBJ_COMMANDSTARTEDEVENT(object); @@ -204,7 +185,7 @@ static void php_phongo_commandstartedevent_free_object(phongo_free_object_arg *o #endif } /* }}} */ -phongo_create_object_retval php_phongo_commandstartedevent_create_object(zend_class_entry *class_type TSRMLS_DC) /* {{{ */ +static phongo_create_object_retval php_phongo_commandstartedevent_create_object(zend_class_entry *class_type TSRMLS_DC) /* {{{ */ { php_phongo_commandstartedevent_t *intern = NULL; @@ -228,7 +209,7 @@ phongo_create_object_retval php_phongo_commandstartedevent_create_object(zend_cl #endif } /* }}} */ -HashTable *php_phongo_commandstartedevent_get_debug_info(zval *object, int *is_temp TSRMLS_DC) /* {{{ */ +static HashTable *php_phongo_commandstartedevent_get_debug_info(zval *object, int *is_temp TSRMLS_DC) /* {{{ */ { php_phongo_commandstartedevent_t *intern; #if PHP_VERSION_ID >= 70000 @@ -299,8 +280,6 @@ void php_phongo_commandstartedevent_init_ce(INIT_FUNC_ARGS) /* {{{ */ return; } /* }}} */ - - /* * Local variables: * tab-width: 4 diff --git a/src/MongoDB/Monitoring/CommandSubscriber.c b/src/MongoDB/Monitoring/CommandSubscriber.c index bd0f7c5ee..7220d6727 100644 --- a/src/MongoDB/Monitoring/CommandSubscriber.c +++ b/src/MongoDB/Monitoring/CommandSubscriber.c @@ -21,33 +21,18 @@ */ #ifdef HAVE_CONFIG_H -# include "config.h" +# include "config.h" #endif -/* External libs */ -#include -#include - -/* PHP Core stuff */ #include -#include -#include #include -#include -/* Our Compatability header */ -#include "phongo_compat.h" -/* Our stuff */ +#include "phongo_compat.h" #include "php_phongo.h" -#include "php_bson.h" - zend_class_entry *php_phongo_commandsubscriber_ce; - - -/* {{{ MongoDB\Monitoring\CommandSubscriber */ - +/* {{{ MongoDB\Driver\Monitoring\CommandSubscriber function entries */ ZEND_BEGIN_ARG_INFO_EX(ai_CommandSubscriber_commandStarted, 0, 0, 1) ZEND_ARG_OBJ_INFO(0, event, MongoDB\\Driver\\Monitoring\\CommandStartedEvent, 0) ZEND_END_ARG_INFO() @@ -66,11 +51,8 @@ static zend_function_entry php_phongo_commandsubscriber_me[] = { ZEND_ABSTRACT_ME(CommandSubscriber, commandFailed, ai_CommandSubscriber_commandFailed) PHP_FE_END }; - /* }}} */ - - void php_phongo_commandsubscriber_init_ce(INIT_FUNC_ARGS) /* {{{ */ { zend_class_entry ce; @@ -83,8 +65,6 @@ void php_phongo_commandsubscriber_init_ce(INIT_FUNC_ARGS) /* {{{ */ return; } /* }}} */ - - /* * Local variables: * tab-width: 4 diff --git a/src/MongoDB/Monitoring/CommandSucceededEvent.c b/src/MongoDB/Monitoring/CommandSucceededEvent.c index 4d06546f8..29d8cd60a 100644 --- a/src/MongoDB/Monitoring/CommandSucceededEvent.c +++ b/src/MongoDB/Monitoring/CommandSucceededEvent.c @@ -21,30 +21,17 @@ */ #ifdef HAVE_CONFIG_H -# include "config.h" +# include "config.h" #endif -/* External libs */ -#include -#include - -/* PHP Core stuff */ #include -#include -#include #include -#include -/* Our Compatability header */ -#include "phongo_compat.h" -/* Our stuff */ +#include "phongo_compat.h" #include "php_phongo.h" -#include "php_bson.h" zend_class_entry *php_phongo_commandsucceededevent_ce; -zend_object_handlers php_phongo_handler_commandsucceededevent; - /* {{{ proto string CommandSucceededEvent::getCommandName() Returns the command name for this event */ PHP_METHOD(CommandSucceededEvent, getCommandName) @@ -59,8 +46,7 @@ PHP_METHOD(CommandSucceededEvent, getCommandName) } PHONGO_RETVAL_STRING(intern->command_name); -} -/* }}} */ +} /* }}} */ /* {{{ proto int CommandSucceededEvent::getDurationMicros() Returns the event's duration in microseconds */ @@ -76,8 +62,7 @@ PHP_METHOD(CommandSucceededEvent, getDurationMicros) } RETURN_LONG(intern->duration_micros); -} -/* }}} */ +} /* }}} */ /* {{{ proto string CommandSucceededEvent::getOperationId() Returns the event's operation ID */ @@ -95,8 +80,7 @@ PHP_METHOD(CommandSucceededEvent, getOperationId) sprintf(int_as_string, "%" PHONGO_LONG_FORMAT, intern->operation_id); PHONGO_RETVAL_STRING(int_as_string); -} -/* }}} */ +} /* }}} */ /* {{{ proto stdClass CommandSucceededEvent::getReply() Returns the reply document associated with the event */ @@ -118,8 +102,7 @@ PHP_METHOD(CommandSucceededEvent, getReply) #else RETURN_ZVAL(state.zchild, 0, 1); #endif -} -/* }}} */ +} /* }}} */ /* {{{ proto string CommandsucceededEvent::getRequestId() Returns the event's request ID */ @@ -137,8 +120,7 @@ PHP_METHOD(CommandSucceededEvent, getRequestId) sprintf(int_as_string, "%" PHONGO_LONG_FORMAT, intern->request_id); PHONGO_RETVAL_STRING(int_as_string); -} -/* }}} */ +} /* }}} */ /* {{{ proto MongoDB\Driver\Server CommandSucceededEvent::getServer() Returns the Server from which the event originated */ @@ -154,16 +136,15 @@ PHP_METHOD(CommandSucceededEvent, getServer) } phongo_server_init(return_value, intern->client, intern->server_id TSRMLS_CC); -} -/* }}} */ +} /* }}} */ /** * Event thrown when a command has succeeded to execute. * * This class is only constructed internally. */ -/* {{{ MongoDB\Driver\Monitoring\CommandSucceededEvent */ +/* {{{ MongoDB\Driver\Monitoring\CommandSucceededEvent function entries */ ZEND_BEGIN_ARG_INFO_EX(ai_CommandSucceededEvent_void, 0, 0, 0) ZEND_END_ARG_INFO() @@ -178,11 +159,11 @@ static zend_function_entry php_phongo_commandsucceededevent_me[] = { ZEND_NAMED_ME(__wakeup, PHP_FN(MongoDB_disabled___wakeup), ai_CommandSucceededEvent_void, ZEND_ACC_PUBLIC|ZEND_ACC_FINAL) PHP_FE_END }; - /* }}} */ +/* {{{ MongoDB\Driver\Monitoring\CommandSucceededEvent object handlers */ +static zend_object_handlers php_phongo_handler_commandsucceededevent; -/* {{{ php_phongo_commandsucceededevent_t object handlers */ static void php_phongo_commandsucceededevent_free_object(phongo_free_object_arg *object TSRMLS_DC) /* {{{ */ { php_phongo_commandsucceededevent_t *intern = Z_OBJ_COMMANDSUCCEEDEDEVENT(object); @@ -201,7 +182,7 @@ static void php_phongo_commandsucceededevent_free_object(phongo_free_object_arg #endif } /* }}} */ -phongo_create_object_retval php_phongo_commandsucceededevent_create_object(zend_class_entry *class_type TSRMLS_DC) /* {{{ */ +static phongo_create_object_retval php_phongo_commandsucceededevent_create_object(zend_class_entry *class_type TSRMLS_DC) /* {{{ */ { php_phongo_commandsucceededevent_t *intern = NULL; @@ -225,7 +206,7 @@ phongo_create_object_retval php_phongo_commandsucceededevent_create_object(zend_ #endif } /* }}} */ -HashTable *php_phongo_commandsucceededevent_get_debug_info(zval *object, int *is_temp TSRMLS_DC) /* {{{ */ +static HashTable *php_phongo_commandsucceededevent_get_debug_info(zval *object, int *is_temp TSRMLS_DC) /* {{{ */ { php_phongo_commandsucceededevent_t *intern; #if PHP_VERSION_ID >= 70000 @@ -296,8 +277,6 @@ void php_phongo_commandsucceededevent_init_ce(INIT_FUNC_ARGS) /* {{{ */ return; } /* }}} */ - - /* * Local variables: * tab-width: 4 diff --git a/src/MongoDB/Monitoring/Subscriber.c b/src/MongoDB/Monitoring/Subscriber.c index 0aa403af7..3105b9ad8 100644 --- a/src/MongoDB/Monitoring/Subscriber.c +++ b/src/MongoDB/Monitoring/Subscriber.c @@ -24,27 +24,15 @@ # include "config.h" #endif -/* External libs */ -#include -#include - -/* PHP Core stuff */ #include -#include -#include #include -#include -/* Our Compatability header */ -#include "phongo_compat.h" -/* Our stuff */ +#include "phongo_compat.h" #include "php_phongo.h" -#include "php_bson.h" - zend_class_entry *php_phongo_subscriber_ce; -/* {{{ MongoDB\Monitoring\Subscriber */ +/* {{{ MongoDB\Driver\Monitoring\Subscriber function entries */ static zend_function_entry php_phongo_subscriber_me[] = { PHP_FE_END };