Lines Matching refs:service

66 static void delete_service(void *service);
167 ss = soap_server_object_fetch(Z_OBJ_P(ZEND_THIS))->service; \
185 soapServicePtr service; member
204 if (server_obj->service) { in soap_server_object_free()
205 delete_service(server_obj->service); in soap_server_object_free()
782 soapServicePtr service; in PHP_METHOD() local
795 service = emalloc(sizeof(soapService)); in PHP_METHOD()
796 memset(service, 0, sizeof(soapService)); in PHP_METHOD()
797 service->send_errors = 1; in PHP_METHOD()
816 service->uri = estrndup(Z_STRVAL_P(tmp), Z_STRLEN_P(tmp)); in PHP_METHOD()
823 service->actor = estrndup(Z_STRVAL_P(tmp), Z_STRLEN_P(tmp)); in PHP_METHOD()
834 service->encoding = encoding; in PHP_METHOD()
840 service->class_map = zend_array_dup(Z_ARRVAL_P(tmp)); in PHP_METHOD()
851 service->features = Z_LVAL_P(tmp); in PHP_METHOD()
861 service->send_errors = 0; in PHP_METHOD()
863 service->send_errors = 1; in PHP_METHOD()
865 service->send_errors = Z_LVAL_P(tmp); in PHP_METHOD()
873 service->version = version; in PHP_METHOD()
874 service->type = SOAP_FUNCTIONS; in PHP_METHOD()
875 service->soap_functions.functions_all = FALSE; in PHP_METHOD()
876 service->soap_functions.ft = zend_new_array(0); in PHP_METHOD()
879 service->sdl = get_sdl(ZEND_THIS, ZSTR_VAL(wsdl), cache_wsdl); in PHP_METHOD()
880 if (service->uri == NULL) { in PHP_METHOD()
881 if (service->sdl->target_ns) { in PHP_METHOD()
882 service->uri = estrdup(service->sdl->target_ns); in PHP_METHOD()
885 service->uri = estrdup("http://unknown-uri/"); in PHP_METHOD()
891 service->typemap = soap_create_typemap(service->sdl, typemap_ht); in PHP_METHOD()
895 server_obj->service = service; in PHP_METHOD()
905 soapServicePtr service; in PHP_METHOD() local
914 FETCH_THIS_SERVICE(service); in PHP_METHOD()
916 if (service->type == SOAP_CLASS) { in PHP_METHOD()
919 service->soap_class.persistence = value; in PHP_METHOD()
937 soapServicePtr service; in PHP_METHOD() local
948 FETCH_THIS_SERVICE(service); in PHP_METHOD()
950 service->type = SOAP_CLASS; in PHP_METHOD()
951 service->soap_class.ce = ce; in PHP_METHOD()
953 delete_argv(&service->soap_class); in PHP_METHOD()
955 service->soap_class.persistence = SOAP_PERSISTENCE_REQUEST; in PHP_METHOD()
956 service->soap_class.argc = num_args; in PHP_METHOD()
957 if (service->soap_class.argc > 0) { in PHP_METHOD()
959 service->soap_class.argv = safe_emalloc(sizeof(zval), service->soap_class.argc, 0); in PHP_METHOD()
960 for (i = 0;i < service->soap_class.argc;i++) { in PHP_METHOD()
961 ZVAL_COPY(&service->soap_class.argv[i], &argv[i]); in PHP_METHOD()
973 soapServicePtr service; in PHP_METHOD() local
982 FETCH_THIS_SERVICE(service); in PHP_METHOD()
984 service->type = SOAP_OBJECT; in PHP_METHOD()
986 zval_ptr_dtor(&service->soap_object); in PHP_METHOD()
987 ZVAL_OBJ_COPY(&service->soap_object, Z_OBJ_P(obj)); in PHP_METHOD()
997 soapServicePtr service; in PHP_METHOD() local
1006 FETCH_THIS_SERVICE(service); in PHP_METHOD()
1009 if (service->type == SOAP_OBJECT) { in PHP_METHOD()
1010 ft = &(Z_OBJCE(service->soap_object)->function_table); in PHP_METHOD()
1011 } else if (service->type == SOAP_CLASS) { in PHP_METHOD()
1012 ft = &service->soap_class.ce->function_table; in PHP_METHOD()
1013 } else if (service->soap_functions.functions_all == TRUE) { in PHP_METHOD()
1015 } else if (service->soap_functions.ft != NULL) { in PHP_METHOD()
1018 ZEND_HASH_MAP_FOREACH_VAL(service->soap_functions.ft, name) { in PHP_METHOD()
1026 …if ((service->type != SOAP_OBJECT && service->type != SOAP_CLASS) || (f->common.fn_flags & ZEND_AC… in PHP_METHOD()
1040 soapServicePtr service; in PHP_METHOD() local
1049 FETCH_THIS_SERVICE(service); in PHP_METHOD()
1054 if (service->type == SOAP_FUNCTIONS) { in PHP_METHOD()
1057 if (service->soap_functions.ft == NULL) { in PHP_METHOD()
1058 service->soap_functions.functions_all = FALSE; in PHP_METHOD()
1059 service->soap_functions.ft = zend_new_array(zend_hash_num_elements(Z_ARRVAL_P(function_name))); in PHP_METHOD()
1082 zend_hash_update(service->soap_functions.ft, key, &function_copy); in PHP_METHOD()
1099 if (service->soap_functions.ft == NULL) { in PHP_METHOD()
1100 service->soap_functions.functions_all = FALSE; in PHP_METHOD()
1101 service->soap_functions.ft = zend_new_array(0); in PHP_METHOD()
1105 zend_hash_update(service->soap_functions.ft, key, &function_copy); in PHP_METHOD()
1109 if (service->soap_functions.ft != NULL) { in PHP_METHOD()
1110 zend_hash_destroy(service->soap_functions.ft); in PHP_METHOD()
1111 efree(service->soap_functions.ft); in PHP_METHOD()
1112 service->soap_functions.ft = NULL; in PHP_METHOD()
1114 service->soap_functions.functions_all = TRUE; in PHP_METHOD()
1126 static void _soap_server_exception(soapServicePtr service, sdlFunctionPtr function, zval *this_ptr)… in _soap_server_exception() argument
1134 if (service->send_errors) { in _soap_server_exception()
1152 soapServicePtr service; local
1174 FETCH_THIS_SERVICE(service);
1175 SOAP_GLOBAL(soap_version) = service->version;
1188 if (service->sdl) {
1199 ZVAL_STRING(&param, service->sdl->source);
1302 SOAP_GLOBAL(sdl) = service->sdl;
1304 SOAP_GLOBAL(encoding) = service->encoding;
1306 SOAP_GLOBAL(class_map) = service->class_map;
1308 SOAP_GLOBAL(typemap) = service->typemap;
1310 SOAP_GLOBAL(features) = service->features;
1314 …function = deserialize_function_call(service->sdl, doc_request, service->actor, &function_name, &n…
1326 _soap_server_exception(service, function, ZEND_THIS);
1331 service->soap_headers_ptr = &soap_headers;
1334 if (service->type == SOAP_OBJECT) {
1335 soap_obj = &service->soap_object;
1337 } else if (service->type == SOAP_CLASS) {
1340 if (service->soap_class.persistence == SOAP_PERSISTENCE_SESSION) {
1354 Z_OBJCE_P(tmp_soap_p) == service->soap_class.ce) {
1362 object_init_ex(&tmp_soap, service->soap_class.ce);
1365 if (service->soap_class.ce->constructor) {
1367 service->soap_class.ce->constructor, Z_OBJ(tmp_soap), NULL,
1368 service->soap_class.argc, service->soap_class.argv);
1371 _soap_server_exception(service, function, ZEND_THIS);
1378 if (service->soap_class.persistence == SOAP_PERSISTENCE_SESSION) {
1398 if (service->soap_functions.functions_all == TRUE) {
1401 function_table = service->soap_functions.ft;
1413 if (service->sdl && !h->function && !h->hdr) {
1422 ((service->type == SOAP_CLASS || service->type == SOAP_OBJECT) &&
1424 if (service->type == SOAP_CLASS || service->type == SOAP_OBJECT) {
1437 if (service->type == SOAP_CLASS && soap_obj) {zval_ptr_dtor(soap_obj);}
1441 _soap_server_exception(service, function, ZEND_THIS);
1442 if (service->type == SOAP_CLASS && soap_obj) {zval_ptr_dtor(soap_obj);}
1452 ((service->type == SOAP_CLASS || service->type == SOAP_OBJECT) &&
1454 if (service->type == SOAP_CLASS || service->type == SOAP_OBJECT) {
1456 if (service->type == SOAP_CLASS) {
1458 if (service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) {
1477 _soap_server_exception(service, function, ZEND_THIS);
1478 if (service->type == SOAP_CLASS) {
1480 if (soap_obj && service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) {
1508 …doc_return = serialize_response_call(function, response_name, service->uri, &retval, soap_headers,…
1517 _soap_server_exception(service, function, ZEND_THIS);
1518 if (service->type == SOAP_CLASS) {
1520 if (soap_obj && service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) {
1590 service->soap_headers_ptr = NULL;
1611 soapServicePtr service; local
1621 FETCH_THIS_SERVICE(service);
1623 SOAP_GLOBAL(encoding) = service->encoding;
1635 soapServicePtr service; local
1645 FETCH_THIS_SERVICE(service);
1647 if (!service || !service->soap_headers_ptr) {
1653 p = service->soap_headers_ptr;
1771 soapServicePtr service; local
1779 (service = soap_server_object_fetch(Z_OBJ_P(error_object))->service) &&
1780 !service->send_errors) {
4382 soapServicePtr service = (soapServicePtr)data; local
4384 if (service->soap_functions.ft) {
4385 zend_hash_destroy(service->soap_functions.ft);
4386 efree(service->soap_functions.ft);
4389 if (service->typemap) {
4390 zend_hash_destroy(service->typemap);
4391 efree(service->typemap);
4394 delete_argv(&service->soap_class);
4396 if (service->actor) {
4397 efree(service->actor);
4399 if (service->uri) {
4400 efree(service->uri);
4402 if (service->sdl) {
4403 delete_sdl(service->sdl);
4405 if (service->encoding) {
4406 xmlCharEncCloseFunc(service->encoding);
4408 if (service->class_map) {
4409 zend_hash_destroy(service->class_map);
4410 FREE_HASHTABLE(service->class_map);
4412 zval_ptr_dtor(&service->soap_object);
4413 efree(service);