axis2_status_t wsf_wsdl_util_insert_policy_to_svc_client( const axutil_env_t* env, neethi_policy_t* merged_input_neethi_policy, axis2_svc_client_t* svc_client) { axis2_desc_t *desc = NULL; axis2_policy_include_t *policy_include = NULL; axis2_svc_t *svc = NULL; svc = axis2_svc_client_get_svc (svc_client, env); if (!svc) { AXIS2_LOG_DEBUG_MSG(env->log, "Service is NULL"); return AXIS2_FAILURE; } desc = axis2_svc_get_base (svc, env); if (!desc) { AXIS2_LOG_DEBUG_MSG(env->log, "Description is NULL"); return AXIS2_FAILURE; } policy_include = axis2_desc_get_policy_include (desc, env); if (!policy_include) { AXIS2_LOG_DEBUG_MSG(env->log, "Policy Include is NULL"); return AXIS2_FAILURE; } return axis2_policy_include_add_policy_element (policy_include, env, AXIS2_SERVICE_POLICY, merged_input_neethi_policy); }
void axis2_stub_populate_services_for_CallbackServiceUserStubService(axis2_stub_t *stub, const axutil_env_t *env) { axis2_svc_client_t *svc_client = NULL; axutil_qname_t *svc_qname = NULL; axutil_qname_t *op_qname = NULL; axis2_svc_t *svc = NULL; axis2_op_t *op = NULL; axis2_op_t *annon_op = NULL; axis2_msg_t *msg_out = NULL; axis2_msg_t *msg_in = NULL; axis2_msg_t *msg_out_fault = NULL; axis2_msg_t *msg_in_fault = NULL; /* Modifying the Service */ svc_client = axis2_stub_get_svc_client (stub, env ); svc = (axis2_svc_t*)axis2_svc_client_get_svc( svc_client, env ); annon_op = axis2_svc_get_op_with_name(svc, env, AXIS2_ANON_OUT_IN_OP); msg_out = axis2_op_get_msg(annon_op, env, AXIS2_MSG_OUT); msg_in = axis2_op_get_msg(annon_op, env, AXIS2_MSG_IN); msg_out_fault = axis2_op_get_msg(annon_op, env, AXIS2_MSG_OUT_FAULT); msg_in_fault = axis2_op_get_msg(annon_op, env, AXIS2_MSG_IN_FAULT); svc_qname = axutil_qname_create(env,"CallbackServiceUserStubService" ,NULL, NULL); axis2_svc_set_qname (svc, env, svc_qname); /* creating the operations*/ op_qname = axutil_qname_create(env, "getEvents" , "http://esb.callbackservice.services.hdviper.psnc.pl/", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_IN); axis2_msg_increment_ref(msg_out, env); axis2_msg_increment_ref(msg_in, env); axis2_msg_increment_ref(msg_out_fault, env); axis2_msg_increment_ref(msg_in_fault, env); axis2_op_add_msg(op, env, AXIS2_MSG_OUT, msg_out); axis2_op_add_msg(op, env, AXIS2_MSG_IN, msg_in); axis2_op_add_msg(op, env, AXIS2_MSG_OUT_FAULT, msg_out_fault); axis2_op_add_msg(op, env, AXIS2_MSG_IN_FAULT, msg_in_fault); axis2_svc_add_op(svc, env, op); }
AXIS2_EXTERN axis2_status_t AXIS2_CALL axis2_svc_client_set_policy( axis2_svc_client_t * svc_client, const axutil_env_t * env, neethi_policy_t * policy) { axis2_svc_t *svc = NULL; axis2_desc_t *desc = NULL; axis2_policy_include_t *policy_include = NULL; AXIS2_PARAM_CHECK(env->error, svc_client, AXIS2_FAILURE); AXIS2_PARAM_CHECK(env->error, policy, AXIS2_FAILURE); svc = axis2_svc_client_get_svc(svc_client, env); if(!svc) { AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Cannot find service of service client. Cannot set policy."); return AXIS2_FAILURE; } desc = axis2_svc_get_base(svc, env); if(!desc) { AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Cannot find service description of service client. Cannot set policy."); return AXIS2_FAILURE; } policy_include = axis2_desc_get_policy_include(desc, env); if(!policy_include) { AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Cannot find policy include. Cannot set policy."); return AXIS2_FAILURE; } axis2_policy_include_add_policy_element(policy_include, env, AXIS2_SERVICE_POLICY, policy); return AXIS2_SUCCESS; }
void axis2_populate_axis_service( axis2_stub_t * stub, const axutil_env_t * env) { axis2_svc_client_t *svc_client = NULL; axutil_qname_t *op_qname = NULL; axis2_svc_t *svc = NULL; axis2_op_t *op = NULL; /*Modifying the Service */ svc_client = axis2_stub_get_svc_client(stub, env); svc = axis2_svc_client_get_svc(svc_client, env); /*creating the operations */ op_qname = axutil_qname_create(env, "add", "", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_IN); axis2_svc_add_op(svc, env, op); axutil_qname_free(op_qname, env); op_qname = axutil_qname_create(env, "sub", "", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_IN); axis2_svc_add_op(svc, env, op); axutil_qname_free(op_qname, env); op_qname = axutil_qname_create(env, "mul", "", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_IN); axis2_svc_add_op(svc, env, op); axutil_qname_free(op_qname, env); op_qname = axutil_qname_create(env, "div", "", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_IN); axis2_svc_add_op(svc, env, op); axutil_qname_free(op_qname, env); }
void AXIS2_CALL axis2_stub_populate_services_for_IIp2Location(axis2_stub_t *stub, const axutil_env_t *env) { axis2_svc_client_t *svc_client = NULL; axutil_qname_t *svc_qname = NULL; axutil_qname_t *op_qname = NULL; axis2_svc_t *svc = NULL; axis2_op_t *op = NULL; axis2_op_t *annon_op = NULL; axis2_msg_t *msg_out = NULL; axis2_msg_t *msg_in = NULL; axis2_msg_t *msg_out_fault = NULL; axis2_msg_t *msg_in_fault = NULL; axis2_policy_include_t *policy_include = NULL; axis2_desc_t *desc = NULL; axiom_node_t *policy_node = NULL; axiom_element_t *policy_root_ele = NULL; neethi_policy_t *neethi_policy = NULL; axis2_status_t status; /* Modifying the Service */ svc_client = axis2_stub_get_svc_client (stub, env ); svc = (axis2_svc_t*)axis2_svc_client_get_svc( svc_client, env ); annon_op = axis2_svc_get_op_with_name(svc, env, AXIS2_ANON_OUT_IN_OP); msg_out = axis2_op_get_msg(annon_op, env, AXIS2_MSG_OUT); msg_in = axis2_op_get_msg(annon_op, env, AXIS2_MSG_IN); msg_out_fault = axis2_op_get_msg(annon_op, env, AXIS2_MSG_OUT_FAULT); msg_in_fault = axis2_op_get_msg(annon_op, env, AXIS2_MSG_IN_FAULT); svc_qname = axutil_qname_create(env,"IIp2Location" ,NULL, NULL); axis2_svc_set_qname (svc, env, svc_qname); axutil_qname_free(svc_qname,env); /* creating the operations*/ op_qname = axutil_qname_create(env, "get" , "http://ws.apache.org/axis2", NULL); op = axis2_op_create_with_qname(env, op_qname); axutil_qname_free(op_qname,env); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_IN); axis2_msg_increment_ref(msg_out, env); axis2_msg_increment_ref(msg_in, env); axis2_msg_increment_ref(msg_out_fault, env); axis2_msg_increment_ref(msg_in_fault, env); axis2_op_add_msg(op, env, AXIS2_MSG_OUT, msg_out); axis2_op_add_msg(op, env, AXIS2_MSG_IN, msg_in); axis2_op_add_msg(op, env, AXIS2_MSG_OUT_FAULT, msg_out_fault); axis2_op_add_msg(op, env, AXIS2_MSG_IN_FAULT, msg_in_fault); axis2_svc_add_op(svc, env, op); op_qname = axutil_qname_create(env, "add" , "http://ws.apache.org/axis2", NULL); op = axis2_op_create_with_qname(env, op_qname); axutil_qname_free(op_qname,env); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_ONLY); axis2_msg_increment_ref(msg_out, env); axis2_msg_increment_ref(msg_in, env); axis2_msg_increment_ref(msg_out_fault, env); axis2_msg_increment_ref(msg_in_fault, env); axis2_op_add_msg(op, env, AXIS2_MSG_OUT, msg_out); axis2_op_add_msg(op, env, AXIS2_MSG_IN, msg_in); axis2_op_add_msg(op, env, AXIS2_MSG_OUT_FAULT, msg_out_fault); axis2_op_add_msg(op, env, AXIS2_MSG_IN_FAULT, msg_in_fault); axis2_svc_add_op(svc, env, op); }
void axis2_stub_ExchangeTrader_populate_services( axis2_stub_t *stub, const axutil_env_t *env) { axis2_svc_client_t *svc_client = NULL; axutil_qname_t *svc_qname = NULL; axutil_qname_t *op_qname = NULL; axis2_svc_t *svc = NULL; axis2_op_t *op = NULL; /* Modifying the Service */ svc_client = axis2_stub_get_svc_client (stub, env ); svc = (axis2_svc_t*)axis2_svc_client_get_svc( svc_client, env ); axutil_qname_create(env,"ExchangeTrader" ,NULL, NULL); axis2_svc_set_qname (svc, env, svc_qname); /* creating the operations*/ op_qname = axutil_qname_create(env, "buy" , "http://www.wso2.org", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_ONLY); axis2_svc_add_op(svc, env, op); op_qname = axutil_qname_create(env, "login" , "http://www.wso2.org", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_ONLY); axis2_svc_add_op(svc, env, op); op_qname = axutil_qname_create(env, "registerClient" , "http://www.wso2.org", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_IN); axis2_svc_add_op(svc, env, op); op_qname = axutil_qname_create(env, "registerFeedTarget" , "http://www.wso2.org", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_ONLY); axis2_svc_add_op(svc, env, op); op_qname = axutil_qname_create(env, "sell" , "http://www.wso2.org", NULL); op = axis2_op_create_with_qname(env, op_qname); axis2_op_set_msg_exchange_pattern(op, env, AXIS2_MEP_URI_OUT_ONLY); axis2_svc_add_op(svc, env, op); }
AXIS2_EXTERN axis2_status_t AXIS2_CALL axis2_svc_client_send_robust_with_op_qname( axis2_svc_client_t * svc_client, const axutil_env_t * env, const axutil_qname_t * op_qname, const axiom_node_t * payload) { axis2_msg_ctx_t *msg_ctx = NULL; axis2_status_t status = AXIS2_FAILURE; axis2_bool_t qname_free_flag = AXIS2_FALSE; AXIS2_PARAM_CHECK(env->error, svc_client, AXIS2_FAILURE); if(!op_qname) { op_qname = axutil_qname_create(env, AXIS2_ANON_ROBUST_OUT_ONLY_OP, NULL, NULL); if(!op_qname) { return AXIS2_FAILURE; } qname_free_flag = AXIS2_TRUE; } else { axis2_op_t *op = NULL; axis2_char_t *mep = NULL; axis2_svc_t *svc = NULL; svc = axis2_svc_client_get_svc(svc_client, env); if(!svc) { return AXIS2_FAILURE; } op = axis2_svc_get_op_with_qname(svc, env, op_qname); if(!op) { return AXIS2_FAILURE; } mep = (axis2_char_t *)axis2_op_get_msg_exchange_pattern(op, env); if(!mep || axutil_strcmp(AXIS2_MEP_URI_OUT_ONLY, mep) != 0) { AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "%s%s", "To use this method opeation uri should be", AXIS2_MEP_URI_OUT_ONLY); return AXIS2_FAILURE; } } svc_client->auth_failed = AXIS2_FALSE; svc_client->required_auth_is_http = AXIS2_FALSE; if(svc_client->auth_type) { AXIS2_FREE(env->allocator, svc_client->auth_type); } svc_client->auth_type = NULL; msg_ctx = axis2_msg_ctx_create(env, axis2_svc_ctx_get_conf_ctx(svc_client->svc_ctx, env), NULL, NULL); if(!axis2_svc_client_fill_soap_envelope(env, svc_client, msg_ctx, payload)) { return AXIS2_FAILURE; } if(!axis2_svc_client_create_op_client(svc_client, env, op_qname)) { return AXIS2_FAILURE; } axis2_op_client_add_out_msg_ctx(svc_client->op_client, env, msg_ctx); status = axis2_op_client_execute(svc_client->op_client, env, AXIS2_TRUE); axis2_svc_client_set_http_info(svc_client, env, msg_ctx); svc_client->auth_failed = axis2_msg_ctx_get_auth_failed(msg_ctx, env); svc_client->required_auth_is_http = axis2_msg_ctx_get_required_auth_is_http(msg_ctx, env); if(axis2_msg_ctx_get_auth_type(msg_ctx, env)) { svc_client->auth_type = axutil_strdup(env, axis2_msg_ctx_get_auth_type(msg_ctx, env)); } if(qname_free_flag) { axutil_qname_free((axutil_qname_t *)op_qname, env); } return status; }