You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by da...@apache.org on 2006/03/06 04:25:28 UTC
svn commit: r383455 - in /webservices/axis2/trunk/c: include/
modules/core/clientapi/ modules/core/context/ modules/core/description/
modules/core/engine/ modules/core/receivers/ modules/core/transport/http/
modules/core/transport/http/sender/ modules/...
Author: damitha
Date: Sun Mar 5 19:25:26 2006
New Revision: 383455
URL: http://svn.apache.org/viewcvs?rev=383455&view=rev
Log:
There was this problem of freeing properties which were set
in ctx.c. I solved this by adopting the same technique as
wsdl_component.
Modified:
webservices/axis2/trunk/c/include/axis2_call.h
webservices/axis2/trunk/c/include/axis2_ctx.h
webservices/axis2/trunk/c/include/axis2_http_out_transport_info.h
webservices/axis2/trunk/c/include/axis2_msg_ctx.h
webservices/axis2/trunk/c/include/axis2_stream.h
webservices/axis2/trunk/c/include/axis2_stub.h
webservices/axis2/trunk/c/include/axis2_svc_skeleton.h
webservices/axis2/trunk/c/modules/core/clientapi/call.c
webservices/axis2/trunk/c/modules/core/clientapi/mep_client.c
webservices/axis2/trunk/c/modules/core/clientapi/stub.c
webservices/axis2/trunk/c/modules/core/context/ctx.c
webservices/axis2/trunk/c/modules/core/context/msg_ctx.c
webservices/axis2/trunk/c/modules/core/description/op.c
webservices/axis2/trunk/c/modules/core/engine/conf.c
webservices/axis2/trunk/c/modules/core/engine/engine.c
webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c
webservices/axis2/trunk/c/modules/core/transport/http/Makefile.am
webservices/axis2/trunk/c/modules/core/transport/http/http_out_transport_info.c
webservices/axis2/trunk/c/modules/core/transport/http/http_transport_utils.c
webservices/axis2/trunk/c/modules/core/transport/http/http_worker.c
webservices/axis2/trunk/c/modules/core/transport/http/sender/http_transport_sender.c
webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c
webservices/axis2/trunk/c/modules/core/util/core_utils.c
webservices/axis2/trunk/c/modules/mod_addr/addr_in_handler.c
webservices/axis2/trunk/c/modules/mod_addr/addr_out_handler.c
webservices/axis2/trunk/c/modules/util/stream.c
webservices/axis2/trunk/c/samples/server/echo/echo_skeleton.c
webservices/axis2/trunk/c/test/core/clientapi/test_clientapi.c
webservices/axis2/trunk/c/test/core/engine/test_engine.c
webservices/axis2/trunk/c/test/unit/core/phaseresolver/test_resolver.c
Modified: webservices/axis2/trunk/c/include/axis2_call.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_call.h?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_call.h (original)
+++ webservices/axis2/trunk/c/include/axis2_call.h Sun Mar 5 19:25:26 2006
@@ -28,6 +28,7 @@
#include <axis2_mep_client.h>
#include <axis2_callback.h>
#include <axis2_soap_envelope.h>
+#include <axis2_property.h>
#ifdef __cplusplus
@@ -222,7 +223,7 @@
set)(axis2_call_t *call,
axis2_env_t **env,
axis2_char_t *key,
- void *value);
+ axis2_property_t *value);
axis2_status_t (AXIS2_CALL *free)(struct axis2_call *call,
axis2_env_t **env);
Modified: webservices/axis2/trunk/c/include/axis2_ctx.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_ctx.h?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_ctx.h (original)
+++ webservices/axis2/trunk/c/include/axis2_ctx.h Sun Mar 5 19:25:26 2006
@@ -26,6 +26,7 @@
#include <axis2_defines.h>
#include <axis2_hash.h>
#include <axis2_env.h>
+#include <axis2_property.h>
#ifdef __cplusplus
extern "C"
@@ -54,14 +55,23 @@
* @param value
* @param persistent
*/
- axis2_status_t (AXIS2_CALL *set_property)(struct axis2_ctx *ctx, axis2_env_t **env, axis2_char_t *key, axis2_char_t *value, axis2_bool_t persistent);
+ axis2_status_t (AXIS2_CALL *
+ set_property)(struct axis2_ctx *ctx,
+ axis2_env_t **env,
+ axis2_char_t *key,
+ axis2_property_t *value,
+ axis2_bool_t persistent);
/**
* @param key
* @param persistent
* @return
*/
- axis2_char_t* (AXIS2_CALL *get_property)(struct axis2_ctx *ctx, axis2_env_t **env, axis2_char_t *key, axis2_bool_t persistent);
+ axis2_property_t* (AXIS2_CALL *
+ get_property)(struct axis2_ctx *ctx,
+ axis2_env_t **env,
+ axis2_char_t *key,
+ axis2_bool_t persistent);
axis2_hash_t* (AXIS2_CALL *get_non_persistent_map)(struct axis2_ctx *ctx,
axis2_env_t **env);
Modified: webservices/axis2/trunk/c/include/axis2_http_out_transport_info.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_http_out_transport_info.h?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_http_out_transport_info.h (original)
+++ webservices/axis2/trunk/c/include/axis2_http_out_transport_info.h Sun Mar 5 19:25:26 2006
@@ -74,6 +74,15 @@
axis2_http_out_transport_info_create(axis2_env_t **env,
axis2_http_simple_response_t *response);
+/**
+ * Free http_out_transport_info passed as void pointer. This will be
+ * cast into appropriate type and then pass the cast object
+ * into the http_out_transport_info structure's free method
+ */
+AXIS2_DECLARE(axis2_status_t)
+axis2_http_out_transport_info_free_void_arg (void *transport_info,
+ axis2_env_t **env);
+
/************************* Start of function macros ***************************/
#define AXIS2_HTTP_OUT_TRANSPORT_INFO_SET_CONTENT_TYPE(out_transport_info, \
Modified: webservices/axis2/trunk/c/include/axis2_msg_ctx.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_msg_ctx.h?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_msg_ctx.h (original)
+++ webservices/axis2/trunk/c/include/axis2_msg_ctx.h Sun Mar 5 19:25:26 2006
@@ -431,7 +431,7 @@
* @param persistent : need to be persistent even when server re-start
* @return Object
*/
- void* (AXIS2_CALL *get_property)(struct axis2_msg_ctx *msg_ctx,
+ axis2_property_t* (AXIS2_CALL *get_property)(struct axis2_msg_ctx *msg_ctx,
axis2_env_t **env,
axis2_char_t *key,
axis2_bool_t persistent);
@@ -439,7 +439,7 @@
axis2_status_t (AXIS2_CALL *set_property)(struct axis2_msg_ctx *msg_ctx,
axis2_env_t **env,
axis2_char_t *key,
- void *value,
+ axis2_property_t *value,
axis2_bool_t persistent);
/**
* @return
Modified: webservices/axis2/trunk/c/include/axis2_stream.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_stream.h?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_stream.h (original)
+++ webservices/axis2/trunk/c/include/axis2_stream.h Sun Mar 5 19:25:26 2006
@@ -65,6 +65,10 @@
* @return axis2_status_t AXIS2_SUCCESS on success else AXIS2_FAILURE
*/
axis2_status_t (AXIS2_CALL *free)(axis2_stream_t *stream, axis2_env_t **env);
+
+ axis2_status_t (AXIS2_CALL *
+ free_void_arg) (void *stream,
+ axis2_env_t **env);
/**
* reads from stream
@@ -155,7 +159,20 @@
AXIS2_DECLARE(axis2_stream_t *)
axis2_stream_create_socket (axis2_env_t **env, int socket);
+/**
+ * Free stream passed as void pointer. This will be
+ * cast into appropriate type and then pass the cast object
+ * into the module_desc structure's free method
+ */
+AXIS2_DECLARE(axis2_status_t)
+axis2_stream_free_void_arg (void *stream,
+ axis2_env_t **env);
+
#define AXIS2_STREAM_FREE(stream, env) ((stream->ops)->free(stream, env))
+
+#define AXIS2_STREAM_FREE_VOID_ARG(stream, env) \
+ ((stream->ops)->free_void_arg(stream, env))
+
#define AXIS2_STREAM_READ(stream, env, buffer, count) \
((stream)->ops->read(stream, env, buffer, count))
#define AXIS2_STREAM_WRITE(stream, env, buffer, count) \
Modified: webservices/axis2/trunk/c/include/axis2_stub.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_stub.h?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_stub.h (original)
+++ webservices/axis2/trunk/c/include/axis2_stub.h Sun Mar 5 19:25:26 2006
@@ -20,6 +20,7 @@
#include <axis2_endpoint_ref.h>
#include <axis2_call.h>
#include <axis2_xml_reader.h>
+#include <axis2_property.h>
#ifdef __cplusplus
@@ -83,14 +84,14 @@
put)(axis2_stub_t *stub,
axis2_env_t **env,
axis2_char_t *key,
- void *value);
+ axis2_property_t *value);
/**
*
* @param key
* @return the object
*/
- void *(AXIS2_CALL *
+ axis2_property_t *(AXIS2_CALL *
get)(axis2_stub_t *stub,
axis2_env_t **env,
axis2_char_t *key);
Modified: webservices/axis2/trunk/c/include/axis2_svc_skeleton.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_svc_skeleton.h?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_svc_skeleton.h (original)
+++ webservices/axis2/trunk/c/include/axis2_svc_skeleton.h Sun Mar 5 19:25:26 2006
@@ -49,6 +49,10 @@
free)(axis2_svc_skeleton_t *svc_skeli,
axis2_env_t **env);
+ int (AXIS2_CALL *
+ free_void_arg)(void *svc_skeli,
+ axis2_env_t **env);
+
axis2_om_node_t *(AXIS2_CALL*
invoke)(axis2_svc_skeleton_t *svc_skeli,
axis2_env_t **env,
@@ -75,6 +79,10 @@
AXIS2_DECLARE(axis2_svc_skeleton_t *)
axis2_svc_skeleton_create (axis2_env_t **env);
+AXIS2_DECLARE(axis2_status_t)
+axis2_svc_skeleton_free_void_arg(void *svc_skeleton,
+ axis2_env_t **env);
+
/*************************** Function macros **********************************/
#define AXIS2_SVC_SKELETON_INIT(svc_skeleton, env) \
@@ -82,6 +90,9 @@
#define AXIS2_SVC_SKELETON_FREE(svc_skeleton, env) \
((svc_skeleton)->ops->free (svc_skeleton, env))
+
+#define AXIS2_SVC_SKELETON_FREE_VOID_ARG(svc_skeleton, env) \
+ ((svc_skeleton)->ops->free_void_arg (svc_skeleton, env))
#define AXIS2_SVC_SKELETON_INVOKE(svc_skeleton, env, node) \
((svc_skeleton)->ops->invoke (svc_skeleton, env, node))
Modified: webservices/axis2/trunk/c/modules/core/clientapi/call.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/clientapi/call.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/clientapi/call.c (original)
+++ webservices/axis2/trunk/c/modules/core/clientapi/call.c Sun Mar 5 19:25:26 2006
@@ -150,7 +150,7 @@
axis2_call_set(axis2_call_t *call,
axis2_env_t **env,
axis2_char_t *key,
- void *value);
+ axis2_property_t *value);
/**
* Assume the values for the conf_ctx and svc_ctx to make the
@@ -351,6 +351,7 @@
axis2_svc_t *svc = NULL;
/* The message ID is sent all the time */
axis2_char_t *message_id = axis2_uuid_gen(env);
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
@@ -426,11 +427,16 @@
{
axis2_op_ctx_t *op_ctx = NULL;
axis2_msg_ctx_t *response = NULL;
- axis2_soap_envelope_t *response_envelope = NULL;
+ axis2_soap_envelope_t *response_envelope = NULL;
+ axis2_char_t *address = NULL;
/* Usual Request-Response Sync implemetation */
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ address = AXIS2_ENDPOINT_REF_GET_ADDRESS(call_impl->to, env);
+ AXIS2_PROPERTY_SET_VALUE(property, env, address);
AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env,
- AXIS2_TRANSPORT_URL, AXIS2_ENDPOINT_REF_GET_ADDRESS(call_impl->to, env), AXIS2_FALSE);
+ AXIS2_TRANSPORT_URL, property, AXIS2_FALSE);
/*AXIS2_MSG_CTX_SET_TO(msg_ctx, env, call_impl->to);*/
AXIS2_MSG_CTX_SET_SVC_CTX(msg_ctx, env, svc_ctx);
AXIS2_MSG_CTX_SET_CONF_CTX(msg_ctx, env, AXIS2_SVC_CTX_GET_CONF_CTX(svc_ctx, env));
@@ -1164,7 +1170,7 @@
axis2_call_set(axis2_call_t *call,
axis2_env_t **env,
axis2_char_t *key,
- void *value)
+ axis2_property_t *value)
{
axis2_call_impl_t *call_impl = NULL;
axis2_conf_ctx_t *conf_ctx = NULL;
Modified: webservices/axis2/trunk/c/modules/core/clientapi/mep_client.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/clientapi/mep_client.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/clientapi/mep_client.c (original)
+++ webservices/axis2/trunk/c/modules/core/clientapi/mep_client.c Sun Mar 5 19:25:26 2006
@@ -21,6 +21,7 @@
#include <axis2_soap.h>
#include <axis2_soap_body.h>
#include <axis2_http_transport_utils.h>
+#include <axis2_property.h>
typedef struct axis2_mep_client_impl
{
@@ -515,6 +516,7 @@
axis2_op_t *op = NULL;
axis2_soap_envelope_t *response_envelope = NULL;
axis2_char_t *soap_ns_uri = NULL;
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK(env, NULL);
@@ -534,9 +536,13 @@
if (!response)
return NULL;
- AXIS2_MSG_CTX_SET_PROPERTY(response, env, AXIS2_TRANSPORT_IN,
- AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_IN, AXIS2_TRUE),
- AXIS2_TRUE);
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_IN, AXIS2_TRUE);
+ if(property)
+ {
+ AXIS2_MSG_CTX_SET_PROPERTY(response, env, AXIS2_TRANSPORT_IN, property,
+ AXIS2_TRUE);
+ property = NULL;
+ }
op = AXIS2_MSG_CTX_GET_OP(msg_ctx, env);
if (op)
Modified: webservices/axis2/trunk/c/modules/core/clientapi/stub.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/clientapi/stub.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/clientapi/stub.c (original)
+++ webservices/axis2/trunk/c/modules/core/clientapi/stub.c Sun Mar 5 19:25:26 2006
@@ -94,14 +94,14 @@
axis2_stub_put(axis2_stub_t *stub,
axis2_env_t **env,
axis2_char_t *key,
- void *value);
+ axis2_property_t *value);
/**
*
* @param key
* @return the object
*/
-void *AXIS2_CALL
+axis2_property_t *AXIS2_CALL
axis2_stub_get(axis2_stub_t *stub,
axis2_env_t **env,
axis2_char_t *key);
@@ -438,7 +438,7 @@
axis2_stub_put(axis2_stub_t *stub,
axis2_env_t **env,
axis2_char_t *key,
- void *value)
+ axis2_property_t *value)
{
axis2_stub_impl_t *stub_impl = NULL;
@@ -456,7 +456,7 @@
* @param key
* @return the object
*/
-void *AXIS2_CALL
+axis2_property_t *AXIS2_CALL
axis2_stub_get(axis2_stub_t *stub,
axis2_env_t **env,
axis2_char_t *key)
@@ -645,9 +645,11 @@
{
void *key = NULL;
void *val = NULL;
+ axis2_property_t *property = NULL;
axis2_hash_this(index, &key, NULL, &val);
- AXIS2_CALL_SET(call, env, key, val);
+ property = (axis2_property_t *) val;
+ AXIS2_CALL_SET(call, env, key, property);
}
return AXIS2_SUCCESS;
Modified: webservices/axis2/trunk/c/modules/core/context/ctx.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/context/ctx.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/context/ctx.c (original)
+++ webservices/axis2/trunk/c/modules/core/context/ctx.c Sun Mar 5 19:25:26 2006
@@ -33,8 +33,19 @@
/** Interface to implementation conversion macro */
#define AXIS2_INTF_TO_IMPL(ctx) ((axis2_ctx_impl_t *)ctx)
-axis2_char_t* AXIS2_CALL axis2_ctx_get_property(struct axis2_ctx *ctx, axis2_env_t **env, axis2_char_t *key, axis2_bool_t persistent);
-axis2_status_t AXIS2_CALL axis2_ctx_set_property(struct axis2_ctx *ctx, axis2_env_t **env, axis2_char_t *key, axis2_char_t *value, axis2_bool_t persistent);
+axis2_property_t* AXIS2_CALL
+axis2_ctx_get_property(struct axis2_ctx *ctx,
+ axis2_env_t **env,
+ axis2_char_t *key,
+ axis2_bool_t persistent);
+
+axis2_status_t AXIS2_CALL
+axis2_ctx_set_property(struct axis2_ctx *ctx,
+ axis2_env_t **env,
+ axis2_char_t *key,
+ axis2_property_t *value,
+ axis2_bool_t persistent);
+
axis2_hash_t* AXIS2_CALL axis2_ctx_get_non_persistent_map(struct axis2_ctx *ctx, axis2_env_t **env);
axis2_hash_t* AXIS2_CALL axis2_ctx_get_persistent_map(struct axis2_ctx *ctx, axis2_env_t **env);
axis2_status_t AXIS2_CALL axis2_ctx_free (struct axis2_ctx *ctx,
@@ -90,7 +101,12 @@
return &(ctx_impl->ctx);
}
-axis2_status_t AXIS2_CALL axis2_ctx_set_property(struct axis2_ctx *ctx, axis2_env_t **env, axis2_char_t *key, axis2_char_t *value, axis2_bool_t persistent)
+axis2_status_t AXIS2_CALL
+axis2_ctx_set_property(struct axis2_ctx *ctx,
+ axis2_env_t **env,
+ axis2_char_t *key,
+ axis2_property_t *value,
+ axis2_bool_t persistent)
{
axis2_ctx_impl_t *ctx_impl = NULL;
@@ -111,10 +127,14 @@
return AXIS2_SUCCESS;
}
-axis2_char_t* AXIS2_CALL axis2_ctx_get_property(struct axis2_ctx *ctx, axis2_env_t **env, axis2_char_t *key, axis2_bool_t persistent)
+axis2_property_t* AXIS2_CALL
+axis2_ctx_get_property(struct axis2_ctx *ctx,
+ axis2_env_t **env,
+ axis2_char_t *key,
+ axis2_bool_t persistent)
{
axis2_ctx_impl_t *ctx_impl = NULL;
- axis2_char_t *ret = NULL;
+ axis2_property_t *ret = NULL;
AXIS2_ENV_CHECK(env, NULL);
@@ -169,12 +189,52 @@
if (ctx_impl->non_persistent_map)
{
+ axis2_hash_index_t *hi = NULL;
+ void *val = NULL;
+ const void *key = NULL;
+ for (hi = axis2_hash_first (ctx_impl->non_persistent_map, env);
+ hi; hi = axis2_hash_next ( env, hi))
+ {
+ axis2_property_t *property = NULL;
+
+ axis2_hash_this (hi, &key, NULL, &val);
+ property = (axis2_property_t *) val;
+
+ if(property)
+ {
+ AXIS2_PROPERTY_FREE(property, env);
+ property = NULL;
+ }
+
+ val = NULL;
+ key = NULL;
+ }
axis2_hash_free(ctx_impl->non_persistent_map, env);
ctx_impl->non_persistent_map = NULL;
}
if (ctx_impl->persistent_map)
{
+ axis2_hash_index_t *hi = NULL;
+ void *val = NULL;
+ const void *key = NULL;
+ for (hi = axis2_hash_first (ctx_impl->persistent_map, env);
+ hi; hi = axis2_hash_next ( env, hi))
+ {
+ axis2_property_t *property = NULL;
+
+ axis2_hash_this (hi, &key, NULL, &val);
+ property = (axis2_property_t *) val;
+
+ if(property)
+ {
+ AXIS2_PROPERTY_FREE(property, env);
+ property = NULL;
+ }
+
+ val = NULL;
+ key = NULL;
+ }
axis2_hash_free(ctx_impl->persistent_map, env);
ctx_impl->persistent_map = NULL;
}
Modified: webservices/axis2/trunk/c/modules/core/context/msg_ctx.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/context/msg_ctx.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/context/msg_ctx.c (original)
+++ webservices/axis2/trunk/c/modules/core/context/msg_ctx.c Sun Mar 5 19:25:26 2006
@@ -303,14 +303,16 @@
axis2_env_t **env,
axis2_char_t *key, axis2_char_t *module_name,
axis2_handler_desc_t *handler_desc);
-void* AXIS2_CALL
+axis2_property_t* AXIS2_CALL
axis2_msg_ctx_get_property(struct axis2_msg_ctx *msg_ctx,
axis2_env_t **env,
axis2_char_t *key, axis2_bool_t persistent);
axis2_status_t AXIS2_CALL
axis2_msg_ctx_set_property(struct axis2_msg_ctx *msg_ctx,
axis2_env_t **env,
- axis2_char_t *key, void *value, axis2_bool_t persistent);
+ axis2_char_t *key,
+ axis2_property_t *value,
+ axis2_bool_t persistent);
axis2_qname_t* AXIS2_CALL
axis2_msg_ctx_get_paused_handler_name(struct axis2_msg_ctx *msg_ctx,
axis2_env_t **env);
@@ -1524,9 +1526,10 @@
return NULL;
}
-void* AXIS2_CALL axis2_msg_ctx_get_property(struct axis2_msg_ctx *msg_ctx,
- axis2_env_t **env,
- axis2_char_t *key, axis2_bool_t persistent)
+axis2_property_t* AXIS2_CALL
+axis2_msg_ctx_get_property(struct axis2_msg_ctx *msg_ctx,
+ axis2_env_t **env,
+ axis2_char_t *key, axis2_bool_t persistent)
{
axis2_msg_ctx_impl_t *msg_ctx_impl = NULL;
void *obj = NULL;
@@ -1600,7 +1603,9 @@
axis2_status_t AXIS2_CALL axis2_msg_ctx_set_property(struct axis2_msg_ctx *msg_ctx,
axis2_env_t **env,
- axis2_char_t *key, void *value, axis2_bool_t persistent)
+ axis2_char_t *key,
+ axis2_property_t *value,
+ axis2_bool_t persistent)
{
axis2_msg_ctx_impl_t *msg_ctx_impl = NULL;
Modified: webservices/axis2/trunk/c/modules/core/description/op.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/description/op.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/description/op.c (original)
+++ webservices/axis2/trunk/c/modules/core/description/op.c Sun Mar 5 19:25:26 2006
@@ -625,14 +625,9 @@
axis2_op_free (axis2_op_t *op, axis2_env_t **env)
{
axis2_op_impl_t *op_impl = NULL;
- axis2_qname_t *op_qname = NULL;
- axis2_char_t *op_name = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
op_impl = AXIS2_INTF_TO_IMPL(op);
- op_qname = AXIS2_OP_GET_QNAME(op, env);
- op_name = AXIS2_QNAME_GET_LOCALPART(op_qname, env);
-
if(op_impl->remaining_phases_inflow)
{
int i = 0;
Modified: webservices/axis2/trunk/c/modules/core/engine/conf.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/engine/conf.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/engine/conf.c (original)
+++ webservices/axis2/trunk/c/modules/core/engine/conf.c Sun Mar 5 19:25:26 2006
@@ -1316,15 +1316,15 @@
svc_name_l = strpbrk(svc_name, SERVICE_NAME_SPLIT_CHAR);
if(NULL == svc_name_l)
{
- *(svc_name_st + 1) = AXIS2_STRDUP((*env)->allocator, svc_name);
- *(svc_name_st + 2) = AXIS2_STRDUP((*env)->allocator, svc_name);
+ *(svc_name_st + 1) = AXIS2_STRDUP(svc_name, env);
+ *(svc_name_st + 2) = AXIS2_STRDUP(svc_name, env);
return AXIS2_SUCCESS;
}
svc_name_l[0] = AXIS2_EOLN;
grp_name = AXIS2_MALLOC((*env)->allocator, strlen(svc_name));
sscanf(svc_name, "%s", grp_name);
svc_name_l = svc_name_l + 1;
- *(svc_name_st + 1) = AXIS2_STRDUP((*env)->allocator, svc_name_l);
+ *(svc_name_st + 1) = AXIS2_STRDUP(svc_name_l, env);
*(svc_name_st + 2) = grp_name;
return AXIS2_SUCCESS;
Modified: webservices/axis2/trunk/c/modules/core/engine/engine.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/engine/engine.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/engine/engine.c (original)
+++ webservices/axis2/trunk/c/modules/core/engine/engine.c Sun Mar 5 19:25:26 2006
@@ -451,6 +451,7 @@
axis2_msg_ctx_t *fault_ctx = NULL;
axis2_engine_impl_t *engine_impl = NULL;
axis2_endpoint_ref_t *fault_to = NULL;
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, processing_context, AXIS2_FAILURE);
@@ -476,11 +477,16 @@
}
else
{
- void *writer = AXIS2_MSG_CTX_GET_PROPERTY(processing_context, env, AXIS2_TRANSPORT_OUT, AXIS2_TRUE);
- if (writer)
+ void *writer;
+
+ property = AXIS2_MSG_CTX_GET_PROPERTY(processing_context, env,
+ AXIS2_TRANSPORT_OUT, AXIS2_TRUE);
+ if(property)
{
- AXIS2_MSG_CTX_SET_PROPERTY(fault_ctx, env, AXIS2_TRANSPORT_OUT, writer, AXIS2_TRUE);
- }
+ AXIS2_MSG_CTX_SET_PROPERTY(fault_ctx, env, AXIS2_TRANSPORT_OUT, property,
+ AXIS2_TRUE);
+ property = NULL;
+ }
else
{
AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_NOWHERE_TO_SEND_FAULT, AXIS2_FAILURE);
@@ -491,9 +497,15 @@
AXIS2_MSG_CTX_SET_OP_CTX(fault_ctx, env, AXIS2_MSG_CTX_GET_OP_CTX(processing_context, env));
AXIS2_MSG_CTX_SET_PROCESS_FAULT(fault_ctx, env, AXIS2_TRUE);
AXIS2_MSG_CTX_SET_SERVER_SIDE(fault_ctx, env, AXIS2_TRUE);
- AXIS2_MSG_CTX_SET_PROPERTY(fault_ctx, env, AXIS2_HTTP_OUT_TRANSPORT_INFO,
- AXIS2_MSG_CTX_GET_PROPERTY(processing_context, env, AXIS2_HTTP_OUT_TRANSPORT_INFO, AXIS2_TRUE), AXIS2_TRUE );
-
+
+ property = AXIS2_MSG_CTX_GET_PROPERTY(processing_context, env,
+ AXIS2_HTTP_OUT_TRANSPORT_INFO, AXIS2_TRUE);
+ if(property)
+ {
+ AXIS2_MSG_CTX_SET_PROPERTY(fault_ctx, env, AXIS2_HTTP_OUT_TRANSPORT_INFO,
+ property , AXIS2_TRUE );
+ property = NULL;
+ }
/*axis2_soap_envelope_t *envelope = NULL;
if (AXIS2_MSG_CTX_GET_IS_SOAP_11(processing_context, env))
Modified: webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c (original)
+++ webservices/axis2/trunk/c/modules/core/receivers/msg_recv.c Sun Mar 5 19:25:26 2006
@@ -22,6 +22,7 @@
#include <axis2_class_loader.h>
#include <axis2_engine.h>
#include <axis2_core_utils.h>
+#include <axis2_property.h>
/**
* @brief Message Receiver struct impl
@@ -216,6 +217,7 @@
struct axis2_param *scope_param = NULL;
axis2_qname_t *svc_qname = NULL;
axis2_char_t *param_value = NULL;
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK(env, NULL);
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, NULL);
@@ -263,12 +265,20 @@
global_ctx = AXIS2_MSG_CTX_GET_CONF_CTX(msg_ctx, env);
local_part = AXIS2_QNAME_GET_LOCALPART(svc_qname, env);
ctx = AXIS2_CONF_CTX_GET_BASE(global_ctx, env);
- obj = AXIS2_CTX_GET_PROPERTY(ctx, env, local_part, AXIS2_FALSE);
- if(NULL == obj)
+ property = AXIS2_CTX_GET_PROPERTY(ctx, env, local_part, AXIS2_FALSE);
+ if(property)
{
- obj = axis2_msg_recv_make_new_svc_obj(msg_recv, env, msg_ctx);
- AXIS2_CTX_SET_PROPERTY(ctx, env, local_part, obj, AXIS2_FALSE);
+ obj = AXIS2_PROPERTY_GET_VALUE(property , env);
}
+ else
+ {
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_APPLICATION);
+ obj = (axis2_svc_skeleton_t *) axis2_msg_recv_make_new_svc_obj(
+ msg_recv, env, msg_ctx);
+ AXIS2_PROPERTY_SET_VALUE(property, env, obj);
+ }
+ AXIS2_CTX_SET_PROPERTY(ctx, env, local_part, property, AXIS2_FALSE);
return obj;
}
else
Modified: webservices/axis2/trunk/c/modules/core/transport/http/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/transport/http/Makefile.am?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/transport/http/Makefile.am (original)
+++ webservices/axis2/trunk/c/modules/core/transport/http/Makefile.am Sun Mar 5 19:25:26 2006
@@ -1 +1,22 @@
TESTS =
+noinst_LTLIBRARIES = libaxis2_http.la
+
+libaxis2_http_la_SOURCES = \
+ http_worker.c \
+ http_transport_utils.c\
+ http_simple_request.c\
+ http_simple_response.c\
+ http_request_line.c\
+ http_status_line.c\
+ http_header.c\
+ url.c\
+ http_out_transport_info.c\
+ http_chunked_stream.c
+
+INCLUDES = -I$(top_builddir)/include \
+ -I$(top_builddir)/modules/util \
+ -I$(top_builddir)/modules/wsdl \
+ -I$(top_builddir)/modules/core/engine \
+ -I$(top_builddir)/modules/core/transport \
+ -I$(top_builddir)/modules/xml/parser \
+ -I$(top_builddir)/modules/platforms
Modified: webservices/axis2/trunk/c/modules/core/transport/http/http_out_transport_info.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/transport/http/http_out_transport_info.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/transport/http/http_out_transport_info.c (original)
+++ webservices/axis2/trunk/c/modules/core/transport/http/http_out_transport_info.c Sun Mar 5 19:25:26 2006
@@ -116,6 +116,16 @@
return AXIS2_SUCCESS;
}
+axis2_status_t AXIS2_CALL
+axis2_http_out_transport_info_free_void_arg (void *transport_info,
+ axis2_env_t **env)
+{
+ axis2_http_out_transport_info_t *transport_info_l = NULL;
+
+ AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+ transport_info_l = (axis2_http_out_transport_info_t *) transport_info;
+ return axis2_http_out_transport_info_free(transport_info_l, env);
+}
axis2_status_t AXIS2_CALL
axis2_http_out_transport_info_set_content_type
Modified: webservices/axis2/trunk/c/modules/core/transport/http/http_transport_utils.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/transport/http/http_transport_utils.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/transport/http/http_transport_utils.c (original)
+++ webservices/axis2/trunk/c/modules/core/transport/http/http_transport_utils.c Sun Mar 5 19:25:26 2006
@@ -30,6 +30,7 @@
#include <axis2_hash.h>
#include <axis2_soap.h>
#include <axis2_http_header.h>
+#include <axis2_property.h>
/***************************** Function headers *******************************/
@@ -118,6 +119,7 @@
axis2_hash_t *headers = NULL;
axis2_engine_t *engine = NULL;
axis2_soap_body_t *soap_body = NULL;
+ axis2_property_t *property = NULL;
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, in_stream, AXIS2_FAILURE);
@@ -146,8 +148,13 @@
soap_action_header[strlen(soap_action_header) -1] = '\0';
}
}
- headers = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_HEADERS,
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_HEADERS,
AXIS2_FALSE);
+ if(property)
+ {
+ headers = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
if(NULL != headers)
{
axis2_http_header_t *encoding_header = NULL;
@@ -178,8 +185,14 @@
AXIS2_MSG_CTX_SET_SOAP_ACTION(msg_ctx, env, soap_action_header);
AXIS2_MSG_CTX_SET_TO(msg_ctx, env, axis2_endpoint_ref_create(env,
request_uri));
+
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_stream_free_void_arg);
+ AXIS2_PROPERTY_SET_VALUE(property, env, out_stream);
AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env,
- AXIS2_TRANSPORT_OUT, out_stream, AXIS2_FALSE);
+ AXIS2_TRANSPORT_OUT, property, AXIS2_FALSE);
+
AXIS2_MSG_CTX_SET_SERVER_SIDE(msg_ctx, env, AXIS2_TRUE);
char_set = axis2_http_transport_utils_get_charset_enc(env,content_type);
@@ -191,8 +204,12 @@
return AXIS2_FAILURE;
}
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_VALUE(property, env, char_set);
AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env, AXIS2_CHARACTER_SET_ENCODING,
- char_set, AXIS2_TRUE);
+ property, AXIS2_TRUE);
+
om_builder = axis2_om_stax_builder_create(env, xml_reader);
if(NULL == om_builder)
{
@@ -332,6 +349,7 @@
{
axis2_soap_envelope_t *soap_envelope = NULL;
axis2_engine_t *engine = NULL;
+ axis2_property_t *property = NULL;
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, AXIS2_FALSE);
AXIS2_PARAM_CHECK((*env)->error, in_stream, AXIS2_FALSE);
@@ -357,8 +375,14 @@
AXIS2_MSG_CTX_SET_SOAP_ACTION(msg_ctx, env, soap_action_header);
AXIS2_MSG_CTX_SET_TO(msg_ctx, env, axis2_endpoint_ref_create(env,
request_uri));
+
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_stream_free_void_arg);
+ AXIS2_PROPERTY_SET_VALUE(property, env, out_stream);
AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env,
- AXIS2_TRANSPORT_OUT, out_stream, AXIS2_FALSE);
+ AXIS2_TRANSPORT_OUT, property, AXIS2_FALSE);
+
AXIS2_MSG_CTX_SET_SERVER_SIDE(msg_ctx, env, AXIS2_TRUE);
soap_envelope = axis2_http_transport_utils_create_envelope_from_get_request(
@@ -823,9 +847,15 @@
AXIS2_ENV_CHECK(env, NULL);
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, NULL);
AXIS2_PARAM_CHECK((*env)->error, soap_ns_uri, NULL);
+ axis2_property_t *property = NULL;
- in_stream = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_IN,
- AXIS2_FALSE);
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
+ AXIS2_TRANSPORT_IN, AXIS2_FALSE);
+ if(property)
+ {
+ in_stream = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
/* TODO free this when xml pulling is over */
callback_ctx = AXIS2_MALLOC((*env)->allocator, sizeof(axis2_callback_info_t));
if(NULL == callback_ctx)
@@ -839,8 +869,13 @@
callback_ctx->unread_len = -1;
callback_ctx->chunked_stream = NULL;
- content_length = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
AXIS2_HTTP_HEADER_CONTENT_LENGTH, AXIS2_FALSE);
+ if(property)
+ {
+ content_length = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
if(content_length != NULL)
{
callback_ctx->content_length = *content_length;
@@ -852,8 +887,13 @@
AXIS2_FAILURE);
return NULL;
}
- trans_enc = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
AXIS2_HTTP_HEADER_TRANSFER_ENCODING, AXIS2_FALSE);
+ if(property)
+ {
+ trans_enc = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
if(NULL != trans_enc && 0 == AXIS2_STRCMP(trans_enc,
AXIS2_HTTP_HEADER_TRANSFER_ENCODING_CHUNKED))
{
@@ -872,10 +912,21 @@
axis2_ctx_t *ctx = AXIS2_OP_CTX_GET_BASE(op_ctx, env);
if (NULL != ctx)
{
- char_set_enc = AXIS2_CTX_GET_PROPERTY(ctx, env,
+ property = AXIS2_CTX_GET_PROPERTY(ctx, env,
AXIS2_CHARACTER_SET_ENCODING, AXIS2_FALSE);
- content_type = AXIS2_CTX_GET_PROPERTY(ctx, env,
+ if(property)
+ {
+ char_set_enc = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
+ property = AXIS2_CTX_GET_PROPERTY(ctx, env,
MTOM_RECIVED_CONTENT_TYPE, AXIS2_FALSE);
+ if(property)
+ {
+ content_type = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
+
}
}
if(NULL == char_set_enc)
Modified: webservices/axis2/trunk/c/modules/core/transport/http/http_worker.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/transport/http/http_worker.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/transport/http/http_worker.c (original)
+++ webservices/axis2/trunk/c/modules/core/transport/http/http_worker.c Sun Mar 5 19:25:26 2006
@@ -27,6 +27,7 @@
#include <axis2_engine.h>
#include <axis2_uuid_gen.h>
#include <axis2_url.h>
+#include <axis2_property.h>
/**
* @brief HTTP Worker struct impl
@@ -155,6 +156,9 @@
axis2_op_ctx_t *op_ctx = NULL;
axis2_char_t *svr_ip = NULL;
axis2_url_t *request_url = NULL;
+ axis2_http_out_transport_info_t *http_out_transport_info = NULL;
+ axis2_hash_t *headers = NULL;
+ axis2_property_t *property = NULL;
axis2_char_t *url_external_form = NULL;
axis2_qname_t *tmp_qname = NULL;
@@ -237,16 +241,33 @@
AXIS2_HTTP_REQUEST_LINE_GET_URI(
AXIS2_HTTP_SIMPLE_REQUEST_GET_REQUEST_LINE(
simple_request, env), env));
+
url_external_form = AXIS2_URL_TO_EXTERNAL_FORM(request_url, env);
- AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_OUT, out_stream,
- AXIS2_FALSE);
- AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_HEADERS,
- axis2_http_worker_get_headers(http_worker, env,
- simple_request), AXIS2_FALSE);
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_stream_free_void_arg);
+ AXIS2_PROPERTY_SET_VALUE(property, env, out_stream);
+ AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_OUT, property,
+ AXIS2_FALSE);
+
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ headers = axis2_http_worker_get_headers(http_worker, env, simple_request);
+ AXIS2_PROPERTY_SET_VALUE(property, env, headers);
+ AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env, AXIS2_TRANSPORT_HEADERS, property,
+ AXIS2_FALSE);
+
AXIS2_MSG_CTX_SET_SVC_GRP_CTX_ID(msg_ctx, env, axis2_uuid_gen(env));
+
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_http_out_transport_info_free_void_arg);
+ http_out_transport_info = axis2_http_out_transport_info_create(env, response);
+ AXIS2_PROPERTY_SET_VALUE(property, env, http_out_transport_info);
AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env, AXIS2_HTTP_OUT_TRANSPORT_INFO,
- axis2_http_out_transport_info_create(env, response),
+ property,
AXIS2_FALSE);
+
if(NULL != AXIS2_HTTP_SIMPLE_REQUEST_GET_FIRST_HEADER(simple_request, env,
AXIS2_HTTP_HEADER_SOAP_ACTION))
{
@@ -353,8 +374,9 @@
msg_ctx, env), env);
if (NULL != ctx)
{
- ctx_written = AXIS2_CTX_GET_PROPERTY(ctx, env,
+ property = AXIS2_CTX_GET_PROPERTY(ctx, env,
AXIS2_RESPONSE_WRITTEN, AXIS2_FALSE);
+ ctx_written = AXIS2_PROPERTY_GET_VALUE(property, env);
}
}
if(NULL != ctx_written && AXIS2_STRCASECMP(ctx_written, "TRUE") == 0)
Modified: webservices/axis2/trunk/c/modules/core/transport/http/sender/http_transport_sender.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/transport/http/sender/http_transport_sender.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/transport/http/sender/http_transport_sender.c (original)
+++ webservices/axis2/trunk/c/modules/core/transport/http/sender/http_transport_sender.c Sun Mar 5 19:25:26 2006
@@ -151,6 +151,7 @@
axis2_char_t *buffer = NULL;
axis2_soap_envelope_t *soap_data_out = NULL;
axis2_bool_t do_mtom;
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, AXIS2_FAILURE);
@@ -158,8 +159,13 @@
xml_writer = axis2_xml_writer_create_for_memory(env, NULL, AXIS2_TRUE, 0);
om_output = axis2_om_output_create(env, xml_writer);
- char_set_enc = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
AXIS2_CHARACTER_SET_ENCODING, AXIS2_FALSE);
+ if(property)
+ {
+ char_set_enc = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
if(NULL == char_set_enc)
{
axis2_op_ctx_t *op_ctx = AXIS2_MSG_CTX_GET_OP_CTX(msg_ctx, env);
@@ -167,8 +173,15 @@
{
axis2_ctx_t *ctx = AXIS2_OP_CTX_GET_BASE(op_ctx, env);
if (ctx)
- char_set_enc = AXIS2_CTX_GET_PROPERTY(ctx, env,
+ {
+ property = AXIS2_CTX_GET_PROPERTY(ctx, env,
AXIS2_CHARACTER_SET_ENCODING, AXIS2_FALSE);
+ if(property)
+ {
+ char_set_enc = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
+ }
}
}
/**
@@ -186,8 +199,13 @@
AXIS2_MSG_CTX_SET_DOING_REST(msg_ctx,
env, axis2_http_transport_utils_is_doing_rest(env,
msg_ctx));
- transport_url = (axis2_char_t*)AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
+ property = (axis2_property_t*)AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
AXIS2_TRANSPORT_URL, AXIS2_FALSE);
+ if(property)
+ {
+ transport_url = (axis2_char_t *) AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
if(NULL != transport_url)
{
epr = axis2_endpoint_ref_create(env, transport_url);
@@ -236,17 +254,30 @@
}
else
{
- axis2_stream_t *out_stream = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
+ axis2_stream_t *out_stream = NULL;
+
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
AXIS2_TRANSPORT_OUT, AXIS2_FALSE);
+ if(property)
+ {
+ out_stream = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
if(AXIS2_TRUE == AXIS2_MSG_CTX_GET_SERVER_SIDE(msg_ctx, env))
{
axis2_op_ctx_t *op_ctx = NULL;
axis2_ctx_t *ctx = NULL;
-
- axis2_http_out_transport_info_t *out_info =
- (axis2_http_out_transport_info_t *)
- AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
- AXIS2_HTTP_OUT_TRANSPORT_INFO, AXIS2_FALSE);
+ axis2_http_out_transport_info_t *out_info = NULL;
+
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
+ AXIS2_HTTP_OUT_TRANSPORT_INFO, AXIS2_FALSE);
+ if(property)
+ {
+
+ out_info = (axis2_http_out_transport_info_t *)
+ AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
axis2_bool_t is_soap11 = AXIS2_FALSE;
if(NULL == out_info)
@@ -278,8 +309,14 @@
ctx = AXIS2_OP_CTX_GET_BASE(op_ctx, env);
if (ctx)
{
+ axis2_char_t *value = NULL;
+
+ value = AXIS2_STRDUP("TRUE", env);
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_VALUE(property, env, value);
AXIS2_CTX_SET_PROPERTY(ctx, env, AXIS2_RESPONSE_WRITTEN,
- "TRUE", AXIS2_FALSE);
+ property, AXIS2_FALSE);
}
}
Modified: webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c (original)
+++ webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c Sun Mar 5 19:25:26 2006
@@ -23,6 +23,7 @@
#include <axis2_ctx.h>
#include <axis2_http_client.h>
#include <axis2_xml_writer.h>
+#include <axis2_property.h>
/**
* @brief SOAP over HTTP sender struct impl
@@ -186,6 +187,7 @@
axis2_http_header_t *http_header = NULL;
axis2_http_simple_response_t *response = NULL;
axis2_char_t *content_type = NULL;
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, AXIS2_FAILURE);
@@ -212,8 +214,13 @@
}
xml_writer = AXIS2_OM_OUTPUT_GET_XML_WRITER(sender_impl->om_output, env);
- char_set_enc = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
+ property = AXIS2_MSG_CTX_GET_PROPERTY(msg_ctx, env,
AXIS2_CHARACTER_SET_ENCODING, AXIS2_FALSE);
+ if(property)
+ {
+ char_set_enc = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
if(NULL == char_set_enc)
{
char_set_enc = AXIS2_DEFAULT_CHAR_SET_ENCODING;
@@ -327,6 +334,7 @@
int i = 0;
axis2_bool_t response_chunked = AXIS2_FALSE;
int *content_length = NULL;
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, AXIS2_FAILURE);
@@ -353,9 +361,17 @@
0 == AXIS2_STRCMP(AXIS2_HTTP_HEADER_GET_VALUE(header
, env), AXIS2_HTTP_HEADER_TRANSFER_ENCODING_CHUNKED))
{
+ axis2_char_t *transfer_encoding = NULL;
+
+ transfer_encoding =
+ AXIS2_STRDUP(AXIS2_HTTP_HEADER_TRANSFER_ENCODING_CHUNKED,
+ env);
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_VALUE(property, env, transfer_encoding);
AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env,
AXIS2_HTTP_HEADER_TRANSFER_ENCODING,
- AXIS2_HTTP_HEADER_TRANSFER_ENCODING_CHUNKED,
+ property,
AXIS2_FALSE);
response_chunked = AXIS2_TRUE;
}
@@ -379,8 +395,11 @@
msg_ctx, env), env);
if(NULL != axis_ctx)
{
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_VALUE(property, env, charset);
AXIS2_CTX_SET_PROPERTY(axis_ctx, env, AXIS2_CHARACTER_SET_ENCODING,
- (void*)charset, AXIS2_FALSE);
+ property, AXIS2_FALSE);
}
}
if(AXIS2_FALSE == response_chunked)
@@ -393,8 +412,11 @@
}
tmp_len = AXIS2_HTTP_SIMPLE_RESPONSE_GET_CONTENT_LENGTH(response, env);
memcpy(content_length, &tmp_len, sizeof(int));
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_VALUE(property, env, content_length);
AXIS2_MSG_CTX_SET_PROPERTY(msg_ctx, env,
- AXIS2_HTTP_HEADER_CONTENT_LENGTH, content_length,
+ AXIS2_HTTP_HEADER_CONTENT_LENGTH, property,
AXIS2_FALSE);
}
return AXIS2_SUCCESS;
@@ -408,6 +430,7 @@
{
axis2_stream_t *in_stream = NULL;
axis2_ctx_t *axis_ctx = NULL;
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, AXIS2_FAILURE);
@@ -424,7 +447,11 @@
axis2_soap_over_http_sender_get_header_info(sender, env, msg_ctx, response);
axis_ctx = AXIS2_OP_CTX_GET_BASE(AXIS2_MSG_CTX_GET_OP_CTX(msg_ctx, env),
env);
- AXIS2_CTX_SET_PROPERTY(axis_ctx, env, AXIS2_TRANSPORT_IN, (void *)in_stream,
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_FREE_FUNC(property, env, axis2_stream_free_void_arg);
+ AXIS2_PROPERTY_SET_VALUE(property, env, in_stream);
+ AXIS2_CTX_SET_PROPERTY(axis_ctx, env, AXIS2_TRANSPORT_IN, property,
AXIS2_FALSE);
return AXIS2_SUCCESS;
}
Modified: webservices/axis2/trunk/c/modules/core/util/core_utils.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/util/core_utils.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/util/core_utils.c (original)
+++ webservices/axis2/trunk/c/modules/core/util/core_utils.c Sun Mar 5 19:25:26 2006
@@ -21,6 +21,7 @@
#include <axis2_addr.h>
#include <axis2_http_transport.h>
#include <axis2_uuid_gen.h>
+#include <axis2_property.h>
AXIS2_DECLARE(axis2_msg_ctx_t *)
axis2_core_utils_create_out_msg_ctx(axis2_env_t **env,
@@ -40,13 +41,11 @@
axis2_char_t *action = NULL;
axis2_op_ctx_t *op_ctx = NULL;
axis2_svc_ctx_t *svc_ctx = NULL;
- void *trt_property = NULL;
- void *trt_out_info_property = NULL;
- void *char_set_encoding_property = NULL;
axis2_bool_t doing_rest = AXIS2_FALSE;
axis2_bool_t doing_mtom = AXIS2_FALSE;
axis2_bool_t server_side = AXIS2_FALSE;
axis2_svc_grp_ctx_t *svc_grp_ctx = NULL;
+ axis2_property_t *property = NULL;
AXIS2_PARAM_CHECK((*env)->error, in_msg_ctx, NULL);
@@ -94,24 +93,35 @@
svc_ctx = AXIS2_MSG_CTX_GET_SVC_CTX(in_msg_ctx, env);
AXIS2_MSG_CTX_SET_SVC_CTX(new_msg_ctx, env, svc_ctx);
- trt_property = AXIS2_MSG_CTX_GET_PROPERTY(in_msg_ctx, env,
+ property = AXIS2_MSG_CTX_GET_PROPERTY(in_msg_ctx, env,
AXIS2_TRANSPORT_OUT, AXIS2_FALSE);
+ if(property)
+ {
+ AXIS2_MSG_CTX_SET_PROPERTY(new_msg_ctx, env, AXIS2_TRANSPORT_OUT, property,
+ AXIS2_FALSE);
+ property = NULL;
+ }
- AXIS2_MSG_CTX_SET_PROPERTY(new_msg_ctx, env, AXIS2_TRANSPORT_OUT, trt_property,
- AXIS2_FALSE);
- trt_out_info_property = AXIS2_MSG_CTX_GET_PROPERTY(in_msg_ctx, env,
+ property = AXIS2_MSG_CTX_GET_PROPERTY(in_msg_ctx, env,
AXIS2_HTTP_OUT_TRANSPORT_INFO, AXIS2_FALSE);
-
- AXIS2_MSG_CTX_SET_PROPERTY(new_msg_ctx, env, AXIS2_HTTP_OUT_TRANSPORT_INFO,
- trt_out_info_property, AXIS2_FALSE);
+ if(property)
+ {
+ AXIS2_MSG_CTX_SET_PROPERTY(new_msg_ctx, env, AXIS2_HTTP_OUT_TRANSPORT_INFO,
+ property, AXIS2_FALSE);
+ property = NULL;
+ }
/* Setting the charater set encoding */
- char_set_encoding_property = AXIS2_MSG_CTX_GET_PROPERTY(in_msg_ctx, env,
+ property = AXIS2_MSG_CTX_GET_PROPERTY(in_msg_ctx, env,
AXIS2_CHARACTER_SET_ENCODING, AXIS2_FALSE);
- AXIS2_MSG_CTX_SET_PROPERTY(new_msg_ctx, env, AXIS2_CHARACTER_SET_ENCODING,
- char_set_encoding_property, AXIS2_FALSE);
+ if(property)
+ {
+ AXIS2_MSG_CTX_SET_PROPERTY(new_msg_ctx, env, AXIS2_CHARACTER_SET_ENCODING,
+ property, AXIS2_FALSE);
+ property = NULL;
+ }
doing_rest = AXIS2_MSG_CTX_GET_DOING_REST(in_msg_ctx, env);
AXIS2_MSG_CTX_SET_DOING_REST(new_msg_ctx, env, doing_rest);
Modified: webservices/axis2/trunk/c/modules/mod_addr/addr_in_handler.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/mod_addr/addr_in_handler.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/mod_addr/addr_in_handler.c (original)
+++ webservices/axis2/trunk/c/modules/mod_addr/addr_in_handler.c Sun Mar 5 19:25:26 2006
@@ -24,6 +24,7 @@
#include <axis2_op.h>
#include <axis2_msg_ctx.h>
#include <axis2_msg_info_headers.h>
+#include <axis2_property.h>
axis2_status_t AXIS2_CALL
axis2_addr_in_handler_invoke(struct axis2_handler *handler,
@@ -139,6 +140,7 @@
{
axis2_soap_envelope_t *soap_envelope = NULL;
axis2_soap_header_t *soap_header = NULL;
+ axis2_property_t *property = NULL;
AXIS2_ENV_CHECK( env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, msg_ctx, AXIS2_FAILURE);
@@ -163,7 +165,7 @@
addr_headers = AXIS2_SOAP_HEADER_GET_HEADER_BLOCKS_WITH_NAMESPACE_URI(soap_header, env, AXIS2_WSA_NAMESPACE_SUBMISSION);
if (addr_headers)
{
- addr_ns_str = AXIS2_WSA_NAMESPACE_SUBMISSION;
+ addr_ns_str = AXIS2_STRDUP(AXIS2_WSA_NAMESPACE_SUBMISSION, env);
axis2_addr_in_extract_addr_submission_info(env,
soap_header,
&msg_info_headers,
@@ -174,7 +176,7 @@
addr_headers = AXIS2_SOAP_HEADER_GET_HEADER_BLOCKS_WITH_NAMESPACE_URI(soap_header, env, AXIS2_WSA_NAMESPACE);
if (addr_headers)
{
- addr_ns_str = AXIS2_WSA_NAMESPACE;
+ addr_ns_str = AXIS2_STRDUP(AXIS2_WSA_NAMESPACE, env);
axis2_addr_in_extract_addr_final_info(env,
soap_header,
&msg_info_headers,
@@ -197,7 +199,10 @@
ctx = AXIS2_MSG_CTX_GET_BASE(msg_ctx, env);
if (ctx)
{
- AXIS2_CTX_SET_PROPERTY(ctx, env, AXIS2_WSA_VERSION, addr_ns_str, AXIS2_TRUE);
+ property = axis2_property_create(env);
+ AXIS2_PROPERTY_SET_SCOPE(property, env, AXIS2_SCOPE_REQUEST);
+ AXIS2_PROPERTY_SET_VALUE(property, env, addr_ns_str);
+ AXIS2_CTX_SET_PROPERTY(ctx, env, AXIS2_WSA_VERSION, property, AXIS2_TRUE);
}
/* extract service group context, if available */
Modified: webservices/axis2/trunk/c/modules/mod_addr/addr_out_handler.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/mod_addr/addr_out_handler.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/mod_addr/addr_out_handler.c (original)
+++ webservices/axis2/trunk/c/modules/mod_addr/addr_out_handler.c Sun Mar 5 19:25:26 2006
@@ -21,6 +21,7 @@
#include <axis2_addr.h>
#include <axis2_soap_header_block.h>
#include <axis2_endpoint_ref.h>
+#include <axis2_property.h>
axis2_status_t AXIS2_CALL
axis2_addr_out_handler_invoke (struct axis2_handler *handler,
@@ -130,7 +131,8 @@
axis2_om_node_t *soap_header_node = NULL;
axis2_om_element_t *soap_header_ele = NULL;
axis2_endpoint_ref_t *epr = NULL;
-
+ axis2_property_t *property = NULL;
+
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK ((*env)->error, msg_ctx, AXIS2_FAILURE);
@@ -139,8 +141,14 @@
return AXIS2_FAILURE;
ctx = AXIS2_MSG_CTX_GET_BASE (msg_ctx, env);
- addressing_version_from_msg_ctx =
+ property =
AXIS2_CTX_GET_PROPERTY (ctx, env, AXIS2_WSA_VERSION, AXIS2_FALSE);
+ if(property)
+ {
+ addressing_version_from_msg_ctx = AXIS2_PROPERTY_GET_VALUE(property,
+ env);
+ property = NULL;
+ }
if (addressing_version_from_msg_ctx)
{
@@ -175,9 +183,14 @@
axis2_ctx_t *in_ctx = NULL;
in_ctx = AXIS2_MSG_CTX_GET_BASE (in_msg_ctx, env);
- addr_ns =
+ property =
AXIS2_CTX_GET_PROPERTY (in_ctx, env, AXIS2_WSA_VERSION,
AXIS2_FALSE);
+ if(property)
+ {
+ addr_ns = AXIS2_PROPERTY_GET_VALUE(property, env);
+ property = NULL;
+ }
if (!addr_ns)
{
Modified: webservices/axis2/trunk/c/modules/util/stream.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/util/stream.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/util/stream.c (original)
+++ webservices/axis2/trunk/c/modules/util/stream.c Sun Mar 5 19:25:26 2006
@@ -137,6 +137,7 @@
stream_impl->stream.axis2_eof = EOF;
stream_impl->stream.ops->free = axis2_stream_free;
+ stream_impl->stream.ops->free_void_arg = axis2_stream_free_void_arg;
return &(stream_impl->stream);
}
@@ -186,6 +187,17 @@
AXIS2_FREE((*env)->allocator, stream_impl);
return AXIS2_SUCCESS;
+}
+
+axis2_status_t AXIS2_CALL
+axis2_stream_free_void_arg (void *stream,
+ axis2_env_t **env)
+{
+ axis2_stream_t *stream_l = NULL;
+
+ AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+ stream_l = (axis2_stream_t *) stream;
+ return axis2_stream_free(stream_l, env);
}
axis2_stream_type_t AXIS2_CALL
Modified: webservices/axis2/trunk/c/samples/server/echo/echo_skeleton.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/samples/server/echo/echo_skeleton.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/samples/server/echo/echo_skeleton.c (original)
+++ webservices/axis2/trunk/c/samples/server/echo/echo_skeleton.c Sun Mar 5 19:25:26 2006
@@ -21,6 +21,10 @@
echo_free(axis2_svc_skeleton_t *svc_skeleton,
axis2_env_t **env);
+axis2_status_t AXIS2_CALL
+echo_free_void_arg(void *svc_skeleton,
+ axis2_env_t **env);
+
/*
* This method invokes the right service method
*/
@@ -47,6 +51,7 @@
(*env)->allocator, sizeof(axis2_svc_skeleton_ops_t));
svc_skeleton->ops->free = echo_free;
+ svc_skeleton->ops->free_void_arg = echo_free_void_arg;
svc_skeleton->ops->init = echo_init;
svc_skeleton->ops->invoke = echo_invoke;
/*svc_skeleton->ops->on_fault = echo_on_fault;*/
@@ -87,6 +92,17 @@
svc_skeleton = NULL;
}
return AXIS2_SUCCESS;
+}
+
+axis2_status_t AXIS2_CALL
+echo_free_void_arg(void *svc_skeleton,
+ axis2_env_t **env)
+{
+ axis2_svc_skeleton_t *svc_skeleton_l = NULL;
+ AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+
+ svc_skeleton_l = (axis2_svc_skeleton_t *) svc_skeleton;
+ return echo_free(svc_skeleton_l ,env);
}
/*
Modified: webservices/axis2/trunk/c/test/core/clientapi/test_clientapi.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/test/core/clientapi/test_clientapi.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/test/core/clientapi/test_clientapi.c (original)
+++ webservices/axis2/trunk/c/test/core/clientapi/test_clientapi.c Sun Mar 5 19:25:26 2006
@@ -49,22 +49,20 @@
msg_ctx = axis2_msg_ctx_create(&env, conf_ctx, NULL, NULL);
- /*msg_ctx_res = AXIS2_CALL_INVOKE_BLOCKING(call, &env, op, msg_ctx);*/
+ msg_ctx_res = AXIS2_CALL_INVOKE_BLOCKING(call, &env, op, msg_ctx);
if (msg_ctx_res)
printf("axis2_test_call_invoke_blocking SUCCESS\n");
else
printf("axis2_test_call_invoke_blocking FAILURE\n");
- AXIS2_CONF_CTX_FREE(conf_ctx, &env);
- AXIS2_CONF_FREE(conf, &env);
+ AXIS2_CALL_FREE(call, &env);
AXIS2_MSG_CTX_FREE(msg_ctx, &env);
AXIS2_QNAME_FREE(qname, &env);
AXIS2_SVC_GRP_CTX_FREE(svc_grp_ctx, &env);
AXIS2_SVC_CTX_FREE(svc_ctx, &env);
AXIS2_SVC_FREE(svc, &env);
AXIS2_OP_FREE(op, &env);
- AXIS2_CALL_FREE(call, &env);
}
Modified: webservices/axis2/trunk/c/test/core/engine/test_engine.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/test/core/engine/test_engine.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/test/core/engine/test_engine.c (original)
+++ webservices/axis2/trunk/c/test/core/engine/test_engine.c Sun Mar 5 19:25:26 2006
@@ -51,7 +51,6 @@
printf("axis2_test_engine_send SUCCESS\n");
AXIS2_CONF_CTX_FREE(conf_ctx, &env);
- AXIS2_CONF_FREE(conf, &env);
AXIS2_MSG_CTX_FREE(msg_ctx, &env);
AXIS2_QNAME_FREE(qname, &env);
AXIS2_SVC_GRP_CTX_FREE(svc_grp_ctx, &env);
@@ -87,7 +86,6 @@
else
printf("axis2_test_engine_receive SUCCESS\n");
AXIS2_CONF_CTX_FREE(conf_ctx, &env);
- AXIS2_CONF_FREE(conf, &env);
AXIS2_MSG_CTX_FREE(msg_ctx, &env);
AXIS2_ENGINE_FREE(engine, &env);
return 0;
Modified: webservices/axis2/trunk/c/test/unit/core/phaseresolver/test_resolver.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/test/unit/core/phaseresolver/test_resolver.c?rev=383455&r1=383454&r2=383455&view=diff
==============================================================================
--- webservices/axis2/trunk/c/test/unit/core/phaseresolver/test_resolver.c (original)
+++ webservices/axis2/trunk/c/test/unit/core/phaseresolver/test_resolver.c Sun Mar 5 19:25:26 2006
@@ -74,7 +74,6 @@
actual = AXIS2_PHASE_RESOLVER_ENGAGE_MODULE_TO_OP(resolver, &env, optr,
module_desc);
- AXIS2_FLOW_FREE(flow, &env);
AXIS2_OP_FREE(optr, &env);
AXIS2_MODULE_DESC_FREE(module_desc, &env);
AXIS2_PHASE_RESOLVER_FREE(resolver, &env);