AXIS2_EXTERN int AXIS2_CALL axis2_amqp_util_get_in_desc_conf_value_int( axis2_transport_in_desc_t* in_desc, const axutil_env_t* env, const axis2_char_t* param_name) { axis2_char_t* value_str = NULL; int value = AXIS2_QPID_NULL_CONF_INT; value_str = axis2_amqp_util_get_in_desc_conf_value_string(in_desc, env, param_name); if(value_str) { value = atoi(value_str); } return value; }
AXIS2_EXTERN axis2_status_t AXIS2_CALL axis2_amqp_receiver_init( axis2_transport_receiver_t* receiver, const axutil_env_t* env, axis2_conf_ctx_t* conf_ctx, axis2_transport_in_desc_t* in_desc) { axis2_amqp_receiver_resource_pack_t* receiver_resource_pack = NULL; axutil_property_t* property = NULL; const axis2_char_t* broker_ip = NULL; int* broker_port = (int*)AXIS2_MALLOC(env->allocator, sizeof(int)); *broker_port = AXIS2_QPID_NULL_CONF_INT; AXIS2_ENV_CHECK(env, AXIS2_FAILURE); receiver_resource_pack = AXIS2_AMQP_RECEIVER_TO_RESOURCE_PACK(receiver); receiver_resource_pack->conf_ctx = conf_ctx; /* Set broker IP */ broker_ip = axis2_amqp_util_get_in_desc_conf_value_string(in_desc, env, AXIS2_AMQP_CONF_QPID_BROKER_IP); if(!broker_ip) { broker_ip = AXIS2_QPID_DEFAULT_BROKER_IP; } property = axutil_property_create_with_args(env, AXIS2_SCOPE_APPLICATION, 0, 0, (void*)broker_ip); axis2_conf_ctx_set_property(receiver_resource_pack->conf_ctx, env, AXIS2_AMQP_CONF_CTX_PROPERTY_BROKER_IP, property); /* Set broker port */ *broker_port = axis2_amqp_util_get_in_desc_conf_value_int(in_desc, env, AXIS2_AMQP_CONF_QPID_BROKER_PORT); if(*broker_port == AXIS2_QPID_NULL_CONF_INT) { *broker_port = AXIS2_QPID_DEFAULT_BROKER_PORT; } property = axutil_property_create_with_args(env, AXIS2_SCOPE_APPLICATION, 0, 0, (void*)broker_port); axis2_conf_ctx_set_property(receiver_resource_pack->conf_ctx, env, AXIS2_AMQP_CONF_CTX_PROPERTY_BROKER_PORT, property); return AXIS2_SUCCESS; }