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/02/13 09:55:23 UTC
svn commit: r377322 [1/2] - in /webservices/axis2/trunk/c: include/
modules/core/clientapi/ modules/core/deployment/ modules/core/description/
modules/core/engine/ modules/core/receivers/ modules/core/transport/
modules/core/transport/http/ modules/cor...
Author: damitha
Date: Mon Feb 13 00:55:16 2006
New Revision: 377322
URL: http://svn.apache.org/viewcvs?rev=377322&view=rev
Log:
Fixed lot of would be bugs in deployment and description modules.
Removed dependancies between modules.
Modified:
webservices/axis2/trunk/c/include/axis2.h
webservices/axis2/trunk/c/include/axis2_arch_file_data.h
webservices/axis2/trunk/c/include/axis2_error.h
webservices/axis2/trunk/c/include/axis2_op.h
webservices/axis2/trunk/c/include/axis2_phase_holder.h
webservices/axis2/trunk/c/include/axis2_phase_resolver.h
webservices/axis2/trunk/c/include/axis2_transport_in_desc.h
webservices/axis2/trunk/c/include/axis2_transport_out_desc.h
webservices/axis2/trunk/c/include/axis2_wsdl_binding_op.h
webservices/axis2/trunk/c/include/axis2_wsdl_interface.h
webservices/axis2/trunk/c/include/axis2_wsdl_op.h
webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c
webservices/axis2/trunk/c/modules/core/deployment/Makefile.am
webservices/axis2/trunk/c/modules/core/deployment/conf_builder.c
webservices/axis2/trunk/c/modules/core/deployment/conf_init.c
webservices/axis2/trunk/c/modules/core/deployment/dep_engine.c
webservices/axis2/trunk/c/modules/core/deployment/desc_builder.c
webservices/axis2/trunk/c/modules/core/deployment/module_builder.c
webservices/axis2/trunk/c/modules/core/deployment/repos_listener.c
webservices/axis2/trunk/c/modules/core/deployment/svc_builder.c
webservices/axis2/trunk/c/modules/core/deployment/ws_info_list.c
webservices/axis2/trunk/c/modules/core/description/op.c
webservices/axis2/trunk/c/modules/core/description/param_container.c
webservices/axis2/trunk/c/modules/core/description/svc.c
webservices/axis2/trunk/c/modules/core/description/transport_in_desc.c
webservices/axis2/trunk/c/modules/core/engine/conf.c
webservices/axis2/trunk/c/modules/core/receivers/Makefile.am
webservices/axis2/trunk/c/modules/core/transport/Makefile.am
webservices/axis2/trunk/c/modules/core/transport/axis2_transport_receiver.h
webservices/axis2/trunk/c/modules/core/transport/axis2_transport_sender.h
webservices/axis2/trunk/c/modules/core/transport/http/Makefile.am
webservices/axis2/trunk/c/modules/core/transport/http/server/Makefile.am
webservices/axis2/trunk/c/modules/mod_addr/module.xml
webservices/axis2/trunk/c/modules/platforms/unix/Makefile.am
webservices/axis2/trunk/c/modules/util/Makefile.am
webservices/axis2/trunk/c/modules/util/axis2_utils.h
webservices/axis2/trunk/c/modules/util/dir_handler.c
webservices/axis2/trunk/c/modules/util/error.c
webservices/axis2/trunk/c/modules/util/utils.c
webservices/axis2/trunk/c/modules/wsdl/Makefile.am
webservices/axis2/trunk/c/modules/wsdl/wsdl_binding_op.c
webservices/axis2/trunk/c/modules/wsdl/wsdl_interface.c
webservices/axis2/trunk/c/modules/wsdl/wsdl_op.c
webservices/axis2/trunk/c/modules/wsdl/wsdl_svc.c
webservices/axis2/trunk/c/samples/server/axis2.xml
webservices/axis2/trunk/c/samples/server/echo/services.xml
webservices/axis2/trunk/c/samples/server/math/services.xml
webservices/axis2/trunk/c/test/core/deployment/Makefile.am
webservices/axis2/trunk/c/test/core/deployment/test_deployment.c
webservices/axis2/trunk/c/test/core/description/Makefile.am
webservices/axis2/trunk/c/test/unit/Makefile.am
webservices/axis2/trunk/c/test/unit/core/deployment/Makefile.am
webservices/axis2/trunk/c/test/unit/util/Makefile.am
Modified: webservices/axis2/trunk/c/include/axis2.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2.h (original)
+++ webservices/axis2/trunk/c/include/axis2.h Mon Feb 13 00:55:16 2006
@@ -94,24 +94,6 @@
*/
typedef int (*AXIS2_FREE_VOID_ARG) (void *obj_to_be_freed, axis2_env_t **env);
-
-typedef enum axis2_op_type
-{
- /** axis2_wsdl_op_t */
- AXIS2_WSDL_OP_T = 0,
- /** axis2_op_t */
- AXIS2_OP_T
-
-}axis2_op_type_t;
-
-typedef enum axis2_svc_type
-{
- /** axis2_wsdl_svc_t */
- AXIS2_WSDL_SVC_T = 0,
- /** axis2_svc_t */
- AXIS2_SVC_T
-
-}axis2_svc_type_t;
/******************************************************************************/
/********************Axis2 specific constants**********************************/
Modified: webservices/axis2/trunk/c/include/axis2_arch_file_data.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_arch_file_data.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_arch_file_data.h (original)
+++ webservices/axis2/trunk/c/include/axis2_arch_file_data.h Mon Feb 13 00:55:16 2006
@@ -205,8 +205,8 @@
#define AXIS2_ARCH_FILE_DATA_GET_MODULE_DLL_NAME(arch_file_data, env) \
((arch_file_data)->ops->get_module_dll_name (arch_file_data, env))
-#define AXIS2_ARCH_FILE_DATA_SET_MODULE_DLL_NAME(arch_file_data, env, module_name) \
- ((arch_file_data)->ops->set_module_dll_name (arch_file_data, env, module_dll_name))
+#define AXIS2_ARCH_FILE_DATA_SET_MODULE_DLL_NAME(arch_file_data, env, class_name) \
+ ((arch_file_data)->ops->set_module_dll_name (arch_file_data, env, class_name))
#define AXIS2_ARCH_FILE_DATA_ADD_SVC(arch_file_data, env, svc_desc) \
((arch_file_data)->ops->add_svc (arch_file_data, env, svc_desc))
Modified: webservices/axis2/trunk/c/include/axis2_error.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_error.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_error.h (original)
+++ webservices/axis2/trunk/c/include/axis2_error.h Mon Feb 13 00:55:16 2006
@@ -471,6 +471,10 @@
AXIS2_ERROR_NULL_IN_STREAM_IN_MSG_CTX,
/* NULL stream in the http chunked stream */
AXIS2_ERROR_NULL_STREAM_IN_CHUNKED_STREAM,
+ /* Flow type of PhaseOrder element cannot be null */
+ AXIS2_ERROR_FLOW_TYPE_CANNOT_BE_NULL,
+ /* Data element of the OM Node is null */
+ AXIS2_ERROR_DATA_ELEMENT_IS_NULL,
/** The following has to be the last error value all the time.
All other error codes should appear above this.
Modified: webservices/axis2/trunk/c/include/axis2_op.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_op.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_op.h (original)
+++ webservices/axis2/trunk/c/include/axis2_op.h Mon Feb 13 00:55:16 2006
@@ -71,12 +71,23 @@
*/
AXIS2_DECLARE_DATA struct axis2_op_ops
{
- /** De-allocate memory
+ /**
+ * De-allocate memory
* @return status code
*/
axis2_status_t (AXIS2_CALL *
free) (axis2_op_t *op,
axis2_env_t **env);
+
+ /**
+ * De-allocate memory
+ * @param void op to be freed
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free_void_arg) (void *op,
+ axis2_env_t **env);
+
/**
* Method addParameter
@@ -126,7 +137,7 @@
axis2_qname_t *qname);
axis2_qname_t *(AXIS2_CALL *
- get_qname) (axis2_op_t *op,
+ get_qname) (void *op,
axis2_env_t **env);
axis2_status_t (AXIS2_CALL *
@@ -383,8 +394,8 @@
*/
AXIS2_DECLARE_DATA struct axis2_op
{
+ axis2_wsdl_op_t base;
axis2_op_ops_t *ops;
- struct axis2_wsdl_op *wsdl_op;
struct axis2_param_container *param_container;
};
@@ -413,6 +424,10 @@
axis2_op_create_with_wsdl_op (axis2_env_t **env,
struct axis2_wsdl_op *wsdl_op);
+AXIS2_DECLARE(axis2_status_t)
+axis2_op_free_void_arg(void *op,
+ axis2_env_t **env);
+
/************************** Start of function macros **************************/
#define AXIS2_OP_FREE(op, env) \
@@ -446,7 +461,7 @@
((op)->ops->set_qname (op, env, qname))
#define AXIS2_OP_GET_QNAME(op, env) \
- ((op)->ops->get_qname (op, env))
+ (((axis2_op_t *) op)->ops->get_qname (op, env))
#define AXIS2_OP_SET_MSG_EXCHANGE_PATTERN(op , env, \
msg_exchange_pattern) \
Modified: webservices/axis2/trunk/c/include/axis2_phase_holder.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_phase_holder.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_phase_holder.h (original)
+++ webservices/axis2/trunk/c/include/axis2_phase_holder.h Mon Feb 13 00:55:16 2006
@@ -33,7 +33,6 @@
#include <axis2_phase.h>
#include <axis2_phase_rule.h>
#include <axis2_handler.h>
-#include <axis2_wsdl.h>
#ifdef __cplusplus
extern "C"
Modified: webservices/axis2/trunk/c/include/axis2_phase_resolver.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_phase_resolver.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_phase_resolver.h (original)
+++ webservices/axis2/trunk/c/include/axis2_phase_resolver.h Mon Feb 13 00:55:16 2006
@@ -38,7 +38,6 @@
#include <axis2_flow.h>
#include <axis2_module_desc.h>
#include <axis2_phase_holder.h>
-#include <axis2_wsdl.h>
#ifdef __cplusplus
extern "C"
Modified: webservices/axis2/trunk/c/include/axis2_transport_in_desc.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_transport_in_desc.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_transport_in_desc.h (original)
+++ webservices/axis2/trunk/c/include/axis2_transport_in_desc.h Mon Feb 13 00:55:16 2006
@@ -29,11 +29,10 @@
#include <axis2_allocator.h>
#include <axis2_qname.h>
#include <axis2_array_list.h>
-#include <axis2_transport_receiver.h>
+/*#include <axis2_transport_receiver.h>*/
#include <axis2_phase_meta.h>
#include <axis2_phase.h>
#include <axis2_flow.h>
-#include <axis2_wsdl.h>
#ifdef __cplusplus
extern "C"
Modified: webservices/axis2/trunk/c/include/axis2_transport_out_desc.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_transport_out_desc.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_transport_out_desc.h (original)
+++ webservices/axis2/trunk/c/include/axis2_transport_out_desc.h Mon Feb 13 00:55:16 2006
@@ -29,11 +29,10 @@
#include <axis2_allocator.h>
#include <axis2_qname.h>
#include <axis2_array_list.h>
-#include <axis2_transport_sender.h>
#include <axis2_phase_meta.h>
#include <axis2_phase.h>
#include <axis2_flow.h>
-#include <axis2_wsdl.h>
+#include <axis2_transport_sender.h>
#ifdef __cplusplus
extern "C"
@@ -99,7 +98,7 @@
/**
* @return
*/
- struct axis2_transport_sender * (AXIS2_CALL *
+ axis2_transport_sender_t * (AXIS2_CALL *
get_sender) (struct axis2_transport_out_desc *transport_out,
axis2_env_t **env);
@@ -109,7 +108,7 @@
axis2_status_t (AXIS2_CALL *
set_sender) (struct axis2_transport_out_desc *transport_out,
axis2_env_t **env,
- struct axis2_transport_sender *sender);
+ axis2_transport_sender_t *sender);
struct axis2_phase * (AXIS2_CALL *
get_out_phase) (struct axis2_transport_out_desc *transport_out,
Modified: webservices/axis2/trunk/c/include/axis2_wsdl_binding_op.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_wsdl_binding_op.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_wsdl_binding_op.h (original)
+++ webservices/axis2/trunk/c/include/axis2_wsdl_binding_op.h Mon Feb 13 00:55:16 2006
@@ -84,8 +84,8 @@
*/
axis2_status_t (AXIS2_CALL *
set_op)(axis2_wsdl_binding_op_t *binding_op,
- axis2_env_t **env,
- void *op);
+ axis2_env_t **env,
+ void *op);
/**
* Method getOutput
Modified: webservices/axis2/trunk/c/include/axis2_wsdl_interface.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_wsdl_interface.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_wsdl_interface.h (original)
+++ webservices/axis2/trunk/c/include/axis2_wsdl_interface.h Mon Feb 13 00:55:16 2006
@@ -29,7 +29,6 @@
#include <axis2_allocator.h>
#include <axis2_hash.h>
#include <axis2_wsdl_op.h>
-#include <axis2_op.h>
#include <axis2_linked_list.h>
#include <axis2_wsdl_extensible_component.h>
@@ -166,8 +165,7 @@
axis2_status_t (AXIS2_CALL *
set_op) (axis2_wsdl_interface_t *wsdl_interface,
axis2_env_t **env,
- void *op,
- axis2_op_type_t opt_type);
+ void *op);
/**
* @param list
@@ -218,7 +216,6 @@
{
axis2_wsdl_interface_ops_t *ops;
struct axis2_wsdl_extensible_component *extensible_component;
- axis2_op_type_t op_type; /*0-wsdl_op, 1-axis2_op */
};
/**
@@ -265,8 +262,8 @@
#define AXIS2_WSDL_INTERFACE_SET_OPS(wsdl_interface, env, list) \
((wsdl_interface)->ops->set_ops (wsdl_interface, env, list))
-#define AXIS2_WSDL_INTERFACE_SET_OP(wsdl_interface, env, op, op_type) \
- ((wsdl_interface)->ops->set_op (wsdl_interface, env, op, op_type))
+#define AXIS2_WSDL_INTERFACE_SET_OP(wsdl_interface, env, op) \
+ ((wsdl_interface)->ops->set_op (wsdl_interface, env, op))
#define AXIS2_WSDL_INTERFACE_SET_SUPER_INTERFACES(wsdl_interface, env, list) \
((wsdl_interface)->ops->set_super_interfaces (wsdl_interface, env, list))
Modified: webservices/axis2/trunk/c/include/axis2_wsdl_op.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_wsdl_op.h?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_wsdl_op.h (original)
+++ webservices/axis2/trunk/c/include/axis2_wsdl_op.h Mon Feb 13 00:55:16 2006
@@ -54,13 +54,23 @@
struct axis2_wsdl_op_ops
{
- /** Deallocate memory
+ /**
+ * Deallocate memory
* @return status code
*/
axis2_status_t (AXIS2_CALL *
free) (axis2_wsdl_op_t *wsdl_op,
axis2_env_t **env);
+ /**
+ * Deallocate memory
+ * @param void wsdl_op to be freed
+ * @return status code
+ */
+ axis2_status_t (AXIS2_CALL *
+ free_void_arg) (void *wsdl_op,
+ axis2_env_t **env);
+
/**
* set the message exchange pattern
* @param axis2_char_t message exchange pattern
@@ -93,7 +103,7 @@
* @return axis2_qname_t wsdl op name
*/
axis2_qname_t *(AXIS2_CALL *
- get_qname) (axis2_wsdl_op_t *wsdl_op,
+ get_qname) (void *wsdl_op,
axis2_env_t **env);
@@ -247,9 +257,13 @@
struct axis2_wsdl_extensible_component *extensible_component;
};
-AXIS2_DECLARE(axis2_wsdl_op_t *) axis2_wsdl_op_create (
- axis2_env_t **env);
+AXIS2_DECLARE(axis2_wsdl_op_t *)
+axis2_wsdl_op_create (axis2_env_t **env);
+AXIS2_DECLARE(axis2_status_t)
+axis2_wsdl_op_free_void_arg(void *wsdl_op,
+ axis2_env_t **env);
+
/**************************** Start of function macros ************************/
#define AXIS2_WSDL_OP_FREE(wsdl_op, env) \
@@ -262,7 +276,7 @@
((wsdl_op)->ops->set_msg_exchange_pattern(wsdl_op, env, pattern))
#define AXIS2_WSDL_OP_GET_QNAME(wsdl_op, env) \
- ((wsdl_op)->ops->get_qname(wsdl_op, env))
+ (((axis2_wsdl_op_t *) wsdl_op)->ops->get_qname(wsdl_op, env))
#define AXIS2_WSDL_OP_SET_QNAME(wsdl_op, env, name) \
((wsdl_op)->ops->set_qname(wsdl_op, env, name))
Modified: webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c (original)
+++ webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c Mon Feb 13 00:55:16 2006
@@ -17,6 +17,7 @@
#include <listener_manager.h>
#include <axis2.h>
#include <axis2_hash.h>
+#include <axis2_transport_receiver.h>
typedef struct axis2_listener_manager_impl
{
Modified: webservices/axis2/trunk/c/modules/core/deployment/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/Makefile.am?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/Makefile.am (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/Makefile.am Mon Feb 13 00:55:16 2006
@@ -15,11 +15,10 @@
repos_listener.c \
conf_init.c
-libaxis2_deployment_la_LIBADD =
INCLUDES = -I$(top_builddir)/include \
-I$(top_builddir)/modules/util \
- -I$(top_builddir)/modules/wsdl \
-I$(top_builddir)/modules/core/transport \
+ -I$(top_builddir)/modules/wsdl\
-I$(top_builddir)/modules/core/description \
-I$(top_builddir)/modules/core/deployment \
-I$(top_builddir)/modules/xml/parser \
Modified: webservices/axis2/trunk/c/modules/core/deployment/conf_builder.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/conf_builder.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/conf_builder.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/conf_builder.c Mon Feb 13 00:55:16 2006
@@ -19,6 +19,8 @@
#include <axis2_class_loader.h>
#include <axis2_transport_in_desc.h>
#include <axis2_transport_out_desc.h>
+#include <axis2_utils.h>
+#include <axis2_transport_receiver.h>
/**
* @brief
@@ -249,7 +251,10 @@
{
return AXIS2_FAILURE;
}
- /*log.info("no custom diaptching order found continue with default dispatcing order");*/
+ /*
+ * log.info("no custom dispatching order found continue with default
+ * dispatcing order");
+ */
}
/* Process Module refs */
@@ -287,14 +292,7 @@
AXIS2_QNAME_FREE(qphaseorder, env);
axis2_conf_builder_process_phase_orders(conf_builder, env, phase_orders);
- /* processing Axis Storages */
- /*
- OMElement storages = config_element.getFirstChildWithName(new QName(AXIS2_STORAGE)) ;
- processAxisStorage(storages);
-
- Iterator moduleConfigs = config_element.getChildrenWithName(new QName(AXIS2_MODULECONFIG));
- processModuleConfig(moduleConfigs,axisConfiguration,axisConfiguration);
- */
+ /* TODO processing Axis Storages */
return AXIS2_SUCCESS;
}
@@ -359,6 +357,8 @@
axis2_bool_t found_disp = AXIS2_FALSE;
axis2_phase_t *disp_phase = NULL;
int count = 0;
+ axis2_bool_t qname_itr_has_next = AXIS2_FALSE;
+ axis2_status_t status = AXIS2_FAILURE;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, disp_order_node, AXIS2_FAILURE);
@@ -369,19 +369,25 @@
qdisp = axis2_qname_create(env, AXIS2_DISPATCHER, NULL, NULL);
disps = AXIS2_OM_ELEMENT_GET_CHILDREN_WITH_QNAME(
disp_order_element, env, qdisp, disp_order_node);
+ AXIS2_QNAME_FREE(qdisp, env);
disp_phase = axis2_phase_create(env, AXIS2_PHASE_DISPATCH);
if(NULL == disp_phase)
{
return AXIS2_FAILURE;
}
- while (AXIS2_TRUE == AXIS2_OM_CHILDREN_QNAME_ITERATOR_HAS_NEXT(disps,
- env))
+ if(disps)
+ {
+ qname_itr_has_next = AXIS2_OM_CHILDREN_QNAME_ITERATOR_HAS_NEXT(disps,
+ env);
+ }
+ while (AXIS2_TRUE == qname_itr_has_next)
{
axis2_om_node_t *disp_node = NULL;
axis2_om_element_t *disp_element = NULL;
axis2_om_attribute_t *disp_att = NULL;
+ axis2_char_t *class_name = NULL;
axis2_char_t *dll_name = NULL;
- axis2_qname_t *qdllname = NULL;
+ axis2_qname_t *class_qname = NULL;
axis2_disp_t *disp_dll = NULL;
axis2_dll_desc_t *dll_desc = NULL;
axis2_param_t *impl_info_param = NULL;
@@ -390,17 +396,30 @@
found_disp = AXIS2_TRUE;
disp_node = (axis2_om_node_t *)
AXIS2_OM_CHILDREN_QNAME_ITERATOR_NEXT(disps, env);
- qdllname = axis2_qname_create(env, AXIS2_CLASSNAME, NULL, NULL);
- disp_att = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(disp_element, env, qdllname);
- dll_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(disp_att, env);
-
+ class_qname = axis2_qname_create(env, AXIS2_CLASSNAME, NULL, NULL);
+ disp_att = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(disp_element, env, class_qname);
+ AXIS2_QNAME_FREE(class_qname, env);
+ if(!disp_att)
+ {
+ qname_itr_has_next = AXIS2_OM_CHILDREN_QNAME_ITERATOR_HAS_NEXT(disps,
+ env);
+ continue;
+ }
+ class_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(disp_att, env);
+ dll_name = axis2_platform_get_dll_name(env, class_name);
dll_desc = axis2_dll_desc_create(env);
+ /* TODO
+ * set full dll path here instead of dll lib name only */
AXIS2_DLL_DESC_SET_NAME(dll_desc, env, dll_name);
AXIS2_DLL_DESC_SET_TYPE(dll_desc, env, AXIS2_HANDLER_DLL);
- axis2_class_loader_init(env);
impl_info_param = axis2_param_create(env, NULL, NULL);
-
+ if(!impl_info_param)
+ {
+ AXIS2_PHASE_FREE(disp_phase, env);
+ return AXIS2_FAILURE;
+ }
AXIS2_PARAM_SET_VALUE(impl_info_param, env, dll_desc);
+ axis2_class_loader_init(env);
disp_dll = (axis2_disp_t *) axis2_class_loader_create_dll(env,
impl_info_param);
@@ -409,93 +428,33 @@
/*disptachClas.getHandlerDesc().setParent(axisConfiguration); */
AXIS2_PHASE_ADD_HANDLER_AT(disp_phase, env, count, handler);
count ++;
+ qname_itr_has_next = AXIS2_OM_CHILDREN_QNAME_ITERATOR_HAS_NEXT(disps,
+ env);
- AXIS2_QNAME_FREE(qdllname, env);
}
if(AXIS2_TRUE != found_disp)
{
+ AXIS2_PHASE_FREE(disp_phase, env);
AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_NO_DISPATCHER_FOUND,
AXIS2_FAILURE);
return AXIS2_FAILURE;
}
else
{
- AXIS2_CONF_SET_DISPATCH_PHASE(builder_impl->conf, env, disp_phase);
+ status = AXIS2_CONF_SET_DISPATCH_PHASE(builder_impl->conf, env, disp_phase);
+ if(AXIS2_SUCCESS != status)
+ {
+ AXIS2_PHASE_FREE(disp_phase, env);
+ return status;
+ }
}
- AXIS2_QNAME_FREE(qdisp, env);
return AXIS2_SUCCESS;
}
-/*
-static axis2_status_t
-axis2_conf_builder_process_axis_storage(OMElement storageElement) throws DeploymentException {
- AxisStorage axisStorage;
- if(storageElement !=null){
- OMAttribute className = storageElement.getAttribute(new QName(CLASSNAME));
- if(className== null){
- throw new DeploymentException(Messages.getMessage(
- DeploymentErrorMsgs.INVALID_STORGE_CLASS));
- } else {
- String classNameStr =className.getAttributeValue();
- Class stoarge ;
- if (classNameStr != null &&!"".equals(classNameStr)) {
- try {
- stoarge = Class.forName(classNameStr,true,
- Thread.currentThread().getContextClassLoader());
- axisStorage = (AxisStorage) stoarge.newInstance();
- axisConfiguration.setAxisStorage(axisStorage);
-
- // adding storage paramters
- Iterator paramters = storageElement.getChildrenWithName(
- new QName(PARAMETERST));
- processParameters(paramters,axisStorage,axisConfiguration);
-
-
- } catch (ClassNotFoundException e) {
- throw new DeploymentException
- (Messages.getMessage(DeploymentErrorMsgs.CLASS_NOT_FOUND,
- e.getMessage()));
- } catch (InstantiationException e) {
- throw new DeploymentException
- (Messages.getMessage(DeploymentErrorMsgs.INSTANTITAIONEXP,
- e.getMessage()));
- } catch (IllegalAccessException e) {
- throw new DeploymentException
- (Messages.getMessage(DeploymentErrorMsgs.ILEGAL_ACESS,
- e.getMessage()));
- }
- } else {
- throw new DeploymentException(Messages.getMessage(
- DeploymentErrorMsgs.INVALID_STORGE_CLASS));
- }
-
- }
-
- } else {
- try {
- //Default Storeg : org.apache.axis2.storage.impl.AxisMemoryStorage
- Class stoarge = Class.forName("org.apache.axis2.storage.impl.AxisMemoryStorage",true,
- Thread.currentThread().getContextClassLoader());
- axisStorage = (AxisStorage) stoarge.newInstance();
- axisConfiguration.setAxisStorage(axisStorage);
- }catch (ClassNotFoundException e) {
- throw new DeploymentException
- (Messages.getMessage(DeploymentErrorMsgs.CLASS_NOT_FOUND,
- e.getMessage()));
- } catch (InstantiationException e) {
- throw new DeploymentException
- (Messages.getMessage(DeploymentErrorMsgs.INSTANTITAIONEXP,
- e.getMessage()));
- } catch (IllegalAccessException e) {
- throw new DeploymentException
- (Messages.getMessage(DeploymentErrorMsgs.ILEGAL_ACESS,
- e.getMessage()));
- }
- }
-
-}
-*/
+/**
+ * TODO axis2_conf_builder_process_axis_storage
+ */
/**
* To process all the phase orders which are defined in axis2.xml
@@ -526,11 +485,19 @@
phase_orders_node = (axis2_om_node_t *) AXIS2_OM_CHILDREN_ITERATOR_NEXT(
phase_orders, env);
- phase_orders_element = AXIS2_OM_NODE_GET_DATA_ELEMENT(phase_orders_node,
- env);
- qtype = axis2_qname_create(env, AXIS2_TYPE, NULL, NULL);
- phase_orders_att = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(phase_orders_element,
- env, qtype);
+ if(phase_orders_node)
+ {
+ phase_orders_element = AXIS2_OM_NODE_GET_DATA_ELEMENT(phase_orders_node,
+ env);
+ }
+ if(phase_orders_element)
+ {
+ qtype = axis2_qname_create(env, AXIS2_TYPE, NULL, NULL);
+
+ phase_orders_att = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(phase_orders_element,
+ env, qtype);
+ AXIS2_QNAME_FREE(qtype, env);
+ }
if (phase_orders_att)
{
@@ -539,23 +506,32 @@
phase_list = axis2_conf_builder_get_phase_list(conf_builder, env,
phase_orders_node);
- if(0 == AXIS2_STRCMP(AXIS2_INFLOWST, flow_type))
+ if(!phase_list)
+ {
+ axis2_status_t status_code = AXIS2_FAILURE;
+ status_code = AXIS2_ERROR_GET_STATUS_CODE((*env)->error);
+ if(AXIS2_SUCCESS != status_code)
+ {
+ return status_code;
+ }
+ return AXIS2_SUCCESS;
+ }
+ if(flow_type && 0 == AXIS2_STRCMP(AXIS2_INFLOWST, flow_type))
{
AXIS2_PHASES_INFO_SET_IN_PHASES(info, env, phase_list);
}
- else if(0 == AXIS2_STRCMP(AXIS2_IN_FAILTFLOW, flow_type))
+ else if(flow_type && 0 == AXIS2_STRCMP(AXIS2_IN_FAILTFLOW, flow_type))
{
AXIS2_PHASES_INFO_SET_IN_FAULTPHASES(info, env, phase_list);
}
- else if(0 == AXIS2_STRCMP(AXIS2_OUTFLOWST, flow_type))
+ else if(flow_type && 0 == AXIS2_STRCMP(AXIS2_OUTFLOWST, flow_type))
{
AXIS2_PHASES_INFO_SET_OUT_PHASES(info, env, phase_list);
}
- else if(0 == AXIS2_STRCMP(AXIS2_OUT_FAILTFLOW, flow_type))
+ else if(flow_type && 0 == AXIS2_STRCMP(AXIS2_OUT_FAILTFLOW, flow_type))
{
AXIS2_PHASES_INFO_SET_OUT_FAULTPHASES(info, env, phase_list);
}
- AXIS2_QNAME_FREE(qtype, env);
}
return AXIS2_SUCCESS;
}
@@ -578,10 +554,17 @@
phase_orders_element = AXIS2_OM_NODE_GET_DATA_ELEMENT(phase_orders_node,
env);
- phase_list = axis2_array_list_create(env, 10);
+ if(!phase_orders_element)
+ {
+ AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_DATA_ELEMENT_IS_NULL,
+ AXIS2_FAILURE);
+ return NULL;
+ }
+ phase_list = axis2_array_list_create(env, 0);
qphase = axis2_qname_create(env, AXIS2_PHASE, NULL, NULL);
phases = AXIS2_OM_ELEMENT_GET_CHILDREN_WITH_QNAME(phase_orders_element, env,
qphase, phase_orders_node);
+ AXIS2_QNAME_FREE(qphase, env);
while (AXIS2_TRUE == AXIS2_OM_CHILDREN_QNAME_ITERATOR_HAS_NEXT(phases, env))
{
@@ -609,11 +592,13 @@
{
att_value = AXIS2_OM_ATTRIBUTE_GET_VALUE(phase_att, env);
}
- AXIS2_ARRAY_LIST_ADD(phase_list, env, att_value);
+ if(att_value)
+ {
+ AXIS2_ARRAY_LIST_ADD(phase_list, env, att_value);
+ }
AXIS2_QNAME_FREE(qattname, env);
}
- AXIS2_QNAME_FREE(qphase, env);
return phase_list;
}
@@ -623,6 +608,7 @@
axis2_om_children_qname_iterator_t *trs_senders)
{
axis2_conf_builder_impl_t *builder_impl = NULL;
+ axis2_status_t status = AXIS2_FAILURE;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, trs_senders, AXIS2_FAILURE);
@@ -641,19 +627,32 @@
AXIS2_OM_CHILDREN_QNAME_ITERATOR_NEXT(trs_senders, env);
if (transport_node)
+ {
transport_element = (axis2_om_element_t*)
AXIS2_OM_NODE_GET_DATA_ELEMENT(transport_node, env);
+ if(!transport_element)
+ {
+ return AXIS2_FAILURE;
+ }
+ }
+ else
+ {
+ return AXIS2_FAILURE;
+ }
/* getting trsnport Name */
qattname = axis2_qname_create(env, AXIS2_ATTNAME, NULL, NULL);
if (transport_element)
+ {
trs_name = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(transport_element, env,
qattname);
+ }
if(NULL != trs_name)
{
axis2_char_t *name = NULL;
axis2_om_attribute_t *trs_dll_att = NULL;
axis2_char_t *dll_name = NULL;
+ axis2_char_t *class_name = NULL;
axis2_om_children_qname_iterator_t *itr = NULL;
axis2_qname_t *qname = NULL;
axis2_qname_t *qparamst = NULL;
@@ -672,7 +671,7 @@
axis2_om_node_t *out_fault_flow_node = NULL;
axis2_dll_desc_t *dll_desc = NULL;
axis2_param_t *impl_info_param = NULL;
- axis2_transport_sender_t *transport_sender = NULL;
+ void *transport_sender = NULL;
name = AXIS2_OM_ATTRIBUTE_GET_VALUE(trs_name, env);
qname = axis2_qname_create(env, name, NULL, NULL);
@@ -692,23 +691,30 @@
AXIS2_FAILURE);
return AXIS2_FAILURE;
}
- dll_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(trs_dll_att, env);
+ class_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(trs_dll_att, env);
+ dll_name = axis2_platform_get_dll_name(env, class_name);
dll_desc = axis2_dll_desc_create(env);
+ /* TODO
+ * set full dll path here instead of dll lib name only */
AXIS2_DLL_DESC_SET_NAME(dll_desc, env, dll_name);
AXIS2_DLL_DESC_SET_TYPE(dll_desc, env, AXIS2_TRANSPORT_SENDER_DLL);
- axis2_class_loader_init(env);
- impl_info_param = axis2_param_create(env, NULL, NULL);
-
+ impl_info_param = axis2_param_create(env, NULL, NULL);
+ if(!impl_info_param)
+ {
+ return AXIS2_FAILURE;
+ }
AXIS2_PARAM_SET_VALUE(impl_info_param, env, dll_desc);
- impl_info_param->ops->value_free =
- axis2_dll_desc_free_void_arg;
- transport_sender = (axis2_transport_sender_t *)
- axis2_class_loader_create_dll(env, impl_info_param);
- AXIS2_TRANSPORT_OUT_DESC_SET_SENDER(transport_out, env,
+ impl_info_param->ops->value_free = axis2_dll_desc_free_void_arg;
+ axis2_class_loader_init(env);
+ transport_sender = axis2_class_loader_create_dll(env, impl_info_param);
+ status = AXIS2_TRANSPORT_OUT_DESC_SET_SENDER(transport_out, env,
transport_sender);
+ if(AXIS2_SUCCESS != status)
+ {
+ return status;
+ }
- /* process Parameters */
- /* processing Paramters */
+ /* Process Parameters */
/* Processing service level paramters */
qparamst = axis2_qname_create(env, AXIS2_PARAMETERST, NULL, NULL);
itr = AXIS2_OM_ELEMENT_GET_CHILDREN_WITH_QNAME(transport_element,
@@ -737,7 +743,10 @@
flow = AXIS2_DESC_BUILDER_PROCESS_FLOW(conf_builder->desc_builder,
env, out_flow_element, builder_impl->conf->param_container,
out_flow_node);
- AXIS2_TRANSPORT_OUT_DESC_SET_OUTFLOW(transport_out, env, flow);
+ if(flow)
+ {
+ AXIS2_TRANSPORT_OUT_DESC_SET_OUTFLOW(transport_out, env, flow);
+ }
}
/* process IN FAULT FLOW */
@@ -765,7 +774,10 @@
flow = AXIS2_DESC_BUILDER_PROCESS_FLOW(conf_builder->desc_builder,
env, out_fault_flow_element, builder_impl->conf->param_container,
out_fault_flow_node);
- AXIS2_TRANSPORT_OUT_DESC_SET_FAULTFLOW(transport_out, env, flow);
+ if(flow)
+ {
+ AXIS2_TRANSPORT_OUT_DESC_SET_FAULTFLOW(transport_out, env, flow);
+ }
}
/* adding to axis config */
@@ -782,6 +794,7 @@
axis2_om_children_qname_iterator_t *trs_recvs)
{
axis2_conf_builder_impl_t *builder_impl = NULL;
+ axis2_status_t status = AXIS2_FAILURE;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, trs_recvs, AXIS2_FAILURE);
@@ -797,8 +810,20 @@
axis2_qname_t *qattname = NULL;
transport_node = (axis2_om_node_t *)
- AXIS2_OM_CHILDREN_QNAME_ITERATOR_NEXT(trs_recvs, env);
- transport_element = AXIS2_OM_NODE_GET_DATA_ELEMENT(transport_node, env);
+ AXIS2_OM_CHILDREN_QNAME_ITERATOR_NEXT(trs_recvs, env);
+ if(transport_node)
+ {
+ transport_element = AXIS2_OM_NODE_GET_DATA_ELEMENT(transport_node,
+ env);
+ if(!transport_element)
+ {
+ return AXIS2_FAILURE;
+ }
+ }
+ else
+ {
+ return AXIS2_FAILURE;
+ }
/* getting transport Name */
qattname = axis2_qname_create(env, AXIS2_ATTNAME, NULL, NULL);
@@ -809,10 +834,10 @@
if(NULL != trs_name)
{
axis2_char_t *name = NULL;
- axis2_om_attribute_t *trs_dll_name = NULL;
+ axis2_om_attribute_t *trs_class_name = NULL;
axis2_om_children_qname_iterator_t *itr = NULL;
axis2_qname_t *transport_in_desc_qname = NULL;
- axis2_qname_t *qdllname = NULL;
+ axis2_qname_t *class_qname = NULL;
axis2_qname_t *qparamst = NULL;
axis2_qname_t *qinflowst = NULL;
axis2_qname_t *qoutflowst = NULL;
@@ -835,21 +860,25 @@
AXIS2_QNAME_FREE(transport_in_desc_qname, env);
/* transport impl class */
- qdllname = axis2_qname_create(env, AXIS2_CLASSNAME, NULL, NULL);
- trs_dll_name = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(transport_element, env,
- qdllname);
- AXIS2_QNAME_FREE(qdllname, env);
+ class_qname = axis2_qname_create(env, AXIS2_CLASSNAME, NULL, NULL);
+ trs_class_name = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(transport_element, env,
+ class_qname);
+ AXIS2_QNAME_FREE(class_qname, env);
- if(NULL != trs_dll_name)
+ if(NULL != trs_class_name)
{
+ axis2_char_t *class_name = NULL;
axis2_char_t *dll_name = NULL;
axis2_dll_desc_t *dll_desc = NULL;
axis2_param_t *impl_info_param = NULL;
axis2_transport_receiver_t *recv = NULL;
axis2_status_t stat = AXIS2_FAILURE;
- dll_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(trs_dll_name, env);
+ class_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(trs_class_name, env);
+ dll_name = axis2_platform_get_dll_name(env, class_name);
dll_desc = axis2_dll_desc_create(env);
+ /* TODO
+ * set full dll path here instead of dll lib name only */
AXIS2_DLL_DESC_SET_NAME(dll_desc, env, dll_name);
AXIS2_DLL_DESC_SET_TYPE(dll_desc, env, AXIS2_TRANSPORT_RECV_DLL);
axis2_class_loader_init(env);
@@ -898,7 +927,12 @@
flow = AXIS2_DESC_BUILDER_PROCESS_FLOW(conf_builder->
desc_builder, env, out_flow_element, builder_impl->conf->
param_container, out_flow_node);
- AXIS2_TRANSPORT_IN_DESC_SET_INFLOW(transport_in, env, flow);
+ status = AXIS2_TRANSPORT_IN_DESC_SET_INFLOW(transport_in, env,
+ flow);
+ if(AXIS2_SUCCESS != status)
+ {
+ return status;
+ }
}
qinfaultflowst = axis2_qname_create(env, AXIS2_IN_FAILTFLOW, NULL,
@@ -914,7 +948,12 @@
flow = AXIS2_DESC_BUILDER_PROCESS_FLOW(conf_builder->desc_builder,
env, in_fault_flow_element, builder_impl->conf->
param_container, in_fault_flow_node);
- AXIS2_TRANSPORT_IN_DESC_SET_FAULTFLOW(transport_in, env, flow);
+ status = AXIS2_TRANSPORT_IN_DESC_SET_FAULTFLOW(transport_in,
+ env, flow);
+ if(AXIS2_SUCCESS != status)
+ {
+ return status;
+ }
}
qoutfaultflowst = axis2_qname_create(env, AXIS2_OUT_FAILTFLOW, NULL,
@@ -930,7 +969,12 @@
}
/* adding to axis config */
- AXIS2_CONF_ADD_TRANSPORT_IN(builder_impl->conf, env, transport_in);
+ status = AXIS2_CONF_ADD_TRANSPORT_IN(builder_impl->conf, env,
+ transport_in);
+ if(AXIS2_SUCCESS != status)
+ {
+ return status;
+ }
AXIS2_QNAME_FREE(qoutfaultflowst, env);
Modified: webservices/axis2/trunk/c/modules/core/deployment/conf_init.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/conf_init.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/conf_init.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/conf_init.c Mon Feb 13 00:55:16 2006
@@ -15,6 +15,8 @@
*/
#include <axis2_conf_init.h>
+#include <axis2_transport_sender.h>
+#include <axis2_transport_receiver.h>
axis2_status_t AXIS2_CALL axis2_init_modules(axis2_env_t **env,
axis2_conf_ctx_t *conf_ctx);
Modified: webservices/axis2/trunk/c/modules/core/deployment/dep_engine.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/dep_engine.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/dep_engine.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/dep_engine.c Mon Feb 13 00:55:16 2006
@@ -25,6 +25,7 @@
#include <axis2_om_node.h>
#include <axis2_class_loader.h>
#include <axis2_string.h>
+#include <axis2_utils.h>
/**
* @brief DLL Description struct impl
@@ -740,12 +741,16 @@
return NULL;
}
/*
- if (hotDeployment) {
- startSearch(this);
- } else {
+ * TODO
+ if (hot_deployment)
+ {
+ start_search();
+ }
+ else
+ {
*/
repos_listener =
- axis2_repos_listener_create_with_folder_name_and_dep_engine(env,
+ axis2_repos_listener_create_with_folder_name_and_dep_engine(env,
engine_impl->folder_name, dep_engine);
if(!repos_listener)
{
@@ -851,7 +856,7 @@
engine_impl->hot_dep = AXIS2_FALSE;
engine_impl->hot_update = AXIS2_FALSE;
repos_listener =
- axis2_repos_listener_create_with_folder_name_and_dep_engine(env,
+ axis2_repos_listener_create_with_folder_name_and_dep_engine(env,
engine_impl->folder_name, dep_engine);
}
@@ -962,23 +967,23 @@
engine_impl = AXIS2_INTF_TO_IMPL(dep_engine);
in_phases = AXIS2_PHASES_INFO_GET_IN_PHASES(engine_impl->phases_info, env);
- if (!in_phases)
- {
- return AXIS2_FAILURE;
- }
/* TODO condition checking should be otherway since null value can occur */
- phase0 = (axis2_char_t *) AXIS2_ARRAY_LIST_GET(in_phases, env, 0);
- phase1 = (axis2_char_t *) AXIS2_ARRAY_LIST_GET(in_phases, env, 1);
- phase2 = (axis2_char_t *) AXIS2_ARRAY_LIST_GET(in_phases, env, 2);
- phase3 = (axis2_char_t *) AXIS2_ARRAY_LIST_GET(in_phases, env, 3);
- if(0 != AXIS2_STRCMP(phase0, AXIS2_PHASE_TRANSPORTIN) ||
- 0 != AXIS2_STRCMP(phase1, AXIS2_PHASE_PRE_DISPATCH) ||
- 0 != AXIS2_STRCMP(phase2, AXIS2_PHASE_DISPATCH) ||
- 0 != AXIS2_STRCMP(phase3, AXIS2_PHASE_POST_DISPATCH))
+ if(in_phases)
+ {
+ phase0 = (axis2_char_t *) AXIS2_ARRAY_LIST_GET(in_phases, env, 0);
+ phase1 = (axis2_char_t *) AXIS2_ARRAY_LIST_GET(in_phases, env, 1);
+ phase2 = (axis2_char_t *) AXIS2_ARRAY_LIST_GET(in_phases, env, 2);
+ phase3 = (axis2_char_t *) AXIS2_ARRAY_LIST_GET(in_phases, env, 3);
+ }
+ if((phase0 && 0 != AXIS2_STRCMP(phase0, AXIS2_PHASE_TRANSPORTIN)) ||
+ (phase1 && 0 != AXIS2_STRCMP(phase1, AXIS2_PHASE_PRE_DISPATCH)) ||
+ (phase2 && 0 != AXIS2_STRCMP(phase2, AXIS2_PHASE_DISPATCH)) ||
+ (phase3 && 0 != AXIS2_STRCMP(phase3, AXIS2_PHASE_POST_DISPATCH)))
{
AXIS2_ERROR_SET((*env)->error, AXI2_ERROR_INVALID_PHASE, AXIS2_FAILURE);
- return AXIS2_FAILURE;
+ return AXIS2_SUCCESS;
}
+
/* ArrayList outPhaes = tempdata.getOutphases(); */
/* TODO do the validation code here */
/* ArrayList systemDefaultPhases =((AxisConfigurationImpl)axisConfig).
@@ -1189,6 +1194,7 @@
axis2_char_t *temp_path = NULL;
axis2_char_t *dll_path = NULL;
axis2_status_t status = AXIS2_FAILURE;
+ axis2_char_t *dll_name = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, module_desc, AXIS2_FAILURE);
@@ -1196,6 +1202,7 @@
read_in_dll = AXIS2_ARCH_FILE_DATA_GET_MODULE_DLL_NAME(engine_impl->
curr_file, env);
+ dll_name = axis2_platform_get_dll_name(env, read_in_dll);
dll_desc = axis2_dll_desc_create(env);
module_folder = AXIS2_ARCH_FILE_DATA_GET_FILE(engine_impl->curr_file, env);
@@ -1203,7 +1210,7 @@
AXIS2_DLL_DESC_SET_TIMESTAMP(dll_desc, env, timestamp);
module_folder_path = AXIS2_FILE_GET_PATH(module_folder, env);
temp_path = AXIS2_STRACAT(module_folder_path, AXIS2_PATH_SEP_STR, env);
- dll_path = AXIS2_STRACAT(temp_path, read_in_dll, env);
+ dll_path = AXIS2_STRACAT(temp_path, dll_name, env);
AXIS2_LOG_DEBUG((*env)->log, AXIS2_LOG_SI, "axis2_dep_engine_load_module_dll; dll path is : %s", dll_path);
status = AXIS2_DLL_DESC_SET_NAME(dll_desc, env, dll_path);
if(AXIS2_SUCCESS != status)
@@ -1281,11 +1288,13 @@
axis2_handler_desc_t *handlermd = NULL;
axis2_handler_t *handler = NULL;
axis2_char_t *handler_dll_name = NULL;
+ axis2_char_t *handler_class_name = NULL;
axis2_dll_desc_t *dll_desc = NULL;
axis2_param_t *impl_info_param = NULL;
handlermd = AXIS2_FLOW_GET_HANDLER(flow, env, j);
- handler_dll_name = AXIS2_HANDLER_DESC_GET_CLASS_NAME(handlermd, env);
+ handler_class_name = AXIS2_HANDLER_DESC_GET_CLASS_NAME(handlermd, env);
+ handler_dll_name = axis2_platform_get_dll_name(env, handler_class_name);
dll_desc = axis2_dll_desc_create(env);
/* TODO
* set full dll path here instead of dll lib name only */
@@ -1305,16 +1314,19 @@
void * AXIS2_CALL
axis2_dep_engine_get_handler_dll(axis2_dep_engine_t *dep_engine,
axis2_env_t **env,
- axis2_char_t *dll_name)
+ axis2_char_t *class_name)
{
axis2_dll_desc_t *dll_desc = NULL;
axis2_param_t *impl_info_param = NULL;
axis2_handler_t *handler = NULL;
+ axis2_char_t *dll_name = NULL;
AXIS2_ENV_CHECK(env, NULL);
- AXIS2_PARAM_CHECK((*env)->error, dll_name, NULL);
+ AXIS2_PARAM_CHECK((*env)->error, class_name, NULL);
dll_desc = axis2_dll_desc_create(env);
+ dll_name = axis2_platform_get_dll_name(env, class_name);
+ /* TODO set fill dll path here instead of dll lib name only */
AXIS2_DLL_DESC_SET_NAME(dll_desc, env, dll_name);
AXIS2_DLL_DESC_SET_TYPE(dll_desc, env, AXIS2_HANDLER_DLL);
axis2_class_loader_init(env);
Modified: webservices/axis2/trunk/c/modules/core/deployment/desc_builder.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/desc_builder.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/desc_builder.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/desc_builder.c Mon Feb 13 00:55:16 2006
@@ -17,6 +17,8 @@
#include <axis2_desc_builder.h>
#include <axis2_string.h>
#include <axis2_class_loader.h>
+#include <axis2_utils.h>
+#include <axis2_raw_xml_in_out_msg_recv.h>
/**
* @brief
@@ -360,7 +362,7 @@
axis2_om_node_t *handler_node,
struct axis2_param_container *parent)
{
- axis2_handler_desc_t *handler = NULL;
+ axis2_handler_desc_t *handler_desc = NULL;
axis2_om_attribute_t *name_attrib = NULL;
axis2_qname_t *attr_qname = NULL;
axis2_om_attribute_t *class_attrib = NULL;
@@ -376,8 +378,8 @@
AXIS2_PARAM_CHECK((*env)->error, handler_node, NULL);
AXIS2_PARAM_CHECK((*env)->error, parent, NULL);
- handler = axis2_handler_desc_create_with_qname(env, NULL);
- if(!handler)
+ handler_desc = axis2_handler_desc_create_with_qname(env, NULL);
+ if(!handler_desc)
{
return NULL;
}
@@ -391,7 +393,7 @@
if(NULL == name_attrib)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_INVALID_HANDLER_STATE,
AXIS2_FAILURE);
return NULL;
@@ -403,19 +405,18 @@
value = AXIS2_OM_ATTRIBUTE_GET_VALUE(name_attrib, env);
handler_qname = axis2_qname_create(env, value, NULL, NULL);
- status = AXIS2_HANDLER_DESC_SET_QNAME(handler, env, handler_qname);
+ status = AXIS2_HANDLER_DESC_SET_QNAME(handler_desc, env, handler_qname);
if(handler_qname)
AXIS2_QNAME_FREE(handler_qname, env);
if(AXIS2_SUCCESS != status)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
return NULL;
}
}
/*Setting Handler Class name */
-
class_qname = axis2_qname_create(env, AXIS2_CLASSNAME, NULL, NULL);
class_attrib = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(handler_element, env,
class_qname);
@@ -424,7 +425,7 @@
if(NULL == class_attrib)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_INVALID_HANDLER_STATE,
AXIS2_FAILURE);
return NULL;
@@ -432,17 +433,16 @@
else
{
attrib_value = AXIS2_OM_ATTRIBUTE_GET_VALUE(class_attrib, env);
- status = AXIS2_HANDLER_DESC_SET_CLASS_NAME(handler, env, attrib_value);
- if(AXIS2_FAILURE == status)
+ status = AXIS2_HANDLER_DESC_SET_CLASS_NAME(handler_desc, env, attrib_value);
+ /*if(AXIS2_FAILURE == status)
{
AXIS2_HANDLER_DESC_FREE(handler, env);
return NULL;
- }
+ }*/
}
/*processing phase Rules (order) */
-
-
+
order_qname = axis2_qname_create(env, AXIS2_ORDER, NULL, NULL);
order_element = AXIS2_OM_ELEMENT_GET_FIRST_CHILD_WITH_QNAME(handler_element,
env, order_qname, handler_node, &order_node);
@@ -451,7 +451,7 @@
if(NULL == order_element || NULL == order_node)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_INVALID_HANDLER_STATE,
AXIS2_FAILURE);
return NULL;
@@ -466,7 +466,7 @@
order_itr = AXIS2_OM_ELEMENT_GET_ALL_ATTRIBUTES(order_element, env);
if(!order_itr)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
return NULL;
}
@@ -484,57 +484,57 @@
order_attrib = (axis2_om_attribute_t *) v;
qname = AXIS2_OM_ATTRIBUTE_GET_QNAME(order_attrib, env);
name = AXIS2_QNAME_GET_LOCALPART(qname, env);
- /*if(qname)
- AXIS2_QNAME_FREE(qname, env);*/
value = AXIS2_OM_ATTRIBUTE_GET_VALUE(order_attrib, env);
if(0 == AXIS2_STRCMP(AXIS2_AFTER, name))
{
struct axis2_phase_rule *phase_rule = NULL;
- phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler, env);
+
+ phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler_desc, env);
status = AXIS2_PHASE_RULE_SET_AFTER(phase_rule, env, value);
if(AXIS2_FAILURE == status)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
return NULL;
}
}
if(0 == AXIS2_STRCMP(AXIS2_BEFORE, name))
{
struct axis2_phase_rule *phase_rule = NULL;
- phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler, env);
+ phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler_desc, env);
status = AXIS2_PHASE_RULE_SET_BEFORE(phase_rule, env, value);
if(AXIS2_FAILURE == status)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
return NULL;
}
}
if(0 == AXIS2_STRCMP(AXIS2_PHASE, name))
{
struct axis2_phase_rule *phase_rule = NULL;
- phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler, env);
+ phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler_desc, env);
status = AXIS2_PHASE_RULE_SET_NAME(phase_rule, env, value);
if(AXIS2_FAILURE == status)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
return NULL;
}
}
if(0 == AXIS2_STRCMP(AXIS2_PHASEFIRST, name))
{
- axis2_char_t *bool_val = axis2_desc_builder_get_value(
- desc_builder, env, value);
+ axis2_char_t *bool_val = NULL;
+ bool_val = axis2_desc_builder_get_value(desc_builder, env,
+ value);
if(0 == AXIS2_STRCMP(bool_val, "true"))
{
struct axis2_phase_rule *phase_rule = NULL;
- phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler, env);
+ phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler_desc, env);
status = AXIS2_PHASE_RULE_SET_PHASE_FIRST(phase_rule, env,
AXIS2_TRUE);
if(AXIS2_FAILURE == status)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
AXIS2_FREE((*env)->allocator, bool_val);
return NULL;
}
@@ -542,18 +542,20 @@
else if(0 == AXIS2_STRCMP(bool_val, "false"))
{
struct axis2_phase_rule *phase_rule = NULL;
- phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler, env);
+ phase_rule = AXIS2_HANDLER_DESC_GET_RULES(handler_desc, env);
status = AXIS2_PHASE_RULE_SET_PHASE_FIRST(phase_rule, env,
AXIS2_FALSE);
if(AXIS2_FAILURE == status)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
AXIS2_FREE((*env)->allocator, bool_val);
return NULL;
}
}
AXIS2_FREE((*env)->allocator, bool_val);
}
+ if(qname)
+ AXIS2_QNAME_FREE(qname, env);
index_i = axis2_hash_next (env, index_i);
}
@@ -561,22 +563,22 @@
params = AXIS2_OM_ELEMENT_GET_CHILDREN_WITH_QNAME(handler_element,
env, param_qname, handler_node);
status = axis2_desc_builder_process_params(desc_builder, env, params,
- handler->param_container, parent);
+ handler_desc->param_container, parent);
if(AXIS2_FAILURE == status)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
return NULL;
}
}
- status = AXIS2_HANDLER_DESC_SET_PARENT(handler, env, parent);
+ status = AXIS2_HANDLER_DESC_SET_PARENT(handler_desc, env, parent);
if(AXIS2_FAILURE == status)
{
- AXIS2_HANDLER_DESC_FREE(handler, env);
+ AXIS2_HANDLER_DESC_FREE(handler_desc, env);
return NULL;
}
- return handler;
+ return handler_desc;
}
axis2_status_t AXIS2_CALL
@@ -607,21 +609,21 @@
axis2_qname_t *att_qname = NULL;
axis2_char_t *pname = NULL;
- /* this is to check whether some one has locked the parmter at the top
+ /* This is to check whether some one has locked the parmter at the top
* level
*/
param_node = (axis2_om_node_t *)
AXIS2_OM_CHILDREN_QNAME_ITERATOR_NEXT(params, env);
param_element = AXIS2_OM_NODE_GET_DATA_ELEMENT(param_node, env);
param = axis2_param_create(env, NULL, NULL);
- /* setting param_element */
+ /* Setting param_element */
status = AXIS2_PARAM_SET_ELEMENT(param, env, param_node);
- if(AXIS2_FAILURE == status)
+ if(AXIS2_SUCCESS != status)
{
AXIS2_PARAM_FREE(param, env);
return status;
}
- /* setting paramter Name */
+ /* Setting paramter name */
att_qname = axis2_qname_create(env, AXIS2_ATTNAME, NULL, NULL);
para_name = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(param_element, env,
att_qname);
@@ -633,19 +635,19 @@
}
pname = AXIS2_OM_ATTRIBUTE_GET_VALUE(para_name, env);
status = AXIS2_PARAM_SET_NAME(param, env, pname);
- if(AXIS2_FAILURE == status)
+ if(AXIS2_SUCCESS != status)
{
AXIS2_PARAM_FREE(param, env);
- return AXIS2_FAILURE;
+ return status;
}
- /* setting paramter Value (the chiled elemnt of the paramter) */
+ /* Setting paramter Value (the chiled elemnt of the paramter) */
para_value = AXIS2_OM_ELEMENT_GET_FIRST_ELEMENT(param_element, env,
param_node, ¶_node);
if(NULL != para_value)
{
status = AXIS2_PARAM_SET_VALUE(param, env, param_element);
- if(AXIS2_FAILURE == status)
+ if(AXIS2_SUCCESS != status)
{
AXIS2_PARAM_FREE(param, env);
return AXIS2_FAILURE;
@@ -664,15 +666,18 @@
}
AXIS2_PARAM_SET_PARAM_TYPE(param, env, AXIS2_TEXT_PARAM);
}
- /* setting locking attrib */
+ /* Setting locking attrib */
att_locked = axis2_qname_create(env, AXIS2_ATTLOCKED, NULL, NULL);
para_locked = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(param_element, env,
att_locked);
AXIS2_QNAME_FREE(att_locked, env);
if(NULL != parent)
{
+ axis2_char_t *param_name = NULL;
+
+ param_name = AXIS2_PARAM_GET_NAME(param, env);
parent_para = AXIS2_PARAM_CONTAINER_GET_PARAM(parent, env,
- AXIS2_PARAM_GET_NAME(param, env));
+ param_name);
}
if(NULL != para_locked)
{
@@ -680,12 +685,15 @@
locked_value = AXIS2_OM_ATTRIBUTE_GET_VALUE(para_locked, env);
if(0 == AXIS2_STRCMP("true", locked_value))
{
+ axis2_char_t *param_name = NULL;
+ axis2_bool_t is_param_locked = AXIS2_FALSE;
/*if the parameter is locked at some levle paramer value replace
* by that
*/
- if(NULL != parent && AXIS2_TRUE ==
- AXIS2_PARAM_CONTAINER_IS_PARAM_LOCKED(parent, env,
- AXIS2_PARAM_GET_NAME(param, env)))
+ param_name = AXIS2_PARAM_GET_NAME(param, env);
+ is_param_locked = AXIS2_PARAM_CONTAINER_IS_PARAM_LOCKED(parent,
+ env, param_name);
+ if(NULL != parent && AXIS2_TRUE == is_param_locked)
{
AXIS2_PARAM_FREE(param, env);
AXIS2_ERROR_SET((*env)->error, AXIS2_ERROR_CONF_NOT_FOUND,
@@ -800,13 +808,14 @@
axis2_char_t *temp_path2 = NULL;
axis2_char_t *temp_path3 = NULL;
axis2_conf_t *conf = NULL;
+ axis2_char_t *msg_recv_dll_name = NULL;
AXIS2_ENV_CHECK(env, NULL);
AXIS2_PARAM_CHECK((*env)->error, recv_element, NULL);
class_qname = axis2_qname_create(env, AXIS2_CLASSNAME, NULL, NULL);
recv_name = AXIS2_OM_ELEMENT_GET_ATTRIBUTE(recv_element, env, class_qname);
class_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(recv_name, env);
-
+ msg_recv_dll_name = axis2_platform_get_dll_name(env, class_name);
conf = AXIS2_DEP_ENGINE_GET_AXIS2_CONF(desc_builder->engine, env);
if(!conf)
@@ -822,7 +831,7 @@
temp_path = AXIS2_STRACAT(repos_name, AXIS2_PATH_SEP_STR, env);
temp_path2 = AXIS2_STRACAT(temp_path, AXIS2_LIB_FOLDER, env);
temp_path3 = AXIS2_STRACAT(temp_path2, AXIS2_PATH_SEP_STR, env);
- dll_name = AXIS2_STRACAT(temp_path3, class_name, env);
+ dll_name = AXIS2_STRACAT(temp_path3, msg_recv_dll_name, env);
AXIS2_FREE((*env)->allocator, temp_path);
AXIS2_FREE((*env)->allocator, temp_path2);
AXIS2_FREE((*env)->allocator, temp_path3);
@@ -847,34 +856,9 @@
axis2_desc_builder_load_default_msg_recv(axis2_desc_builder_t *desc_builder,
axis2_env_t **env)
{
- axis2_char_t *default_msg_recv = "axis2_raw_xml_in_out_msg_recv";
axis2_msg_recv_t *msg_recv = NULL;
- axis2_param_t *impl_info_param = NULL;
- axis2_dll_desc_t *dll_desc = NULL;
- axis2_conf_t *conf = NULL;
-
- /**
- * Setting default Message Recive as Message Receiver
- */
- conf = AXIS2_DEP_ENGINE_GET_AXIS2_CONF(desc_builder->engine, env);
- impl_info_param = AXIS2_CONF_GET_PARAM(conf, env, AXIS2_MSG_RECV_PARAM);
-
- if(!impl_info_param)
- {
- dll_desc = axis2_dll_desc_create(env);
- AXIS2_DLL_DESC_SET_NAME(dll_desc, env, default_msg_recv);
- AXIS2_DLL_DESC_SET_TYPE(dll_desc, env, AXIS2_MSG_RECV_DLL);
- impl_info_param = axis2_param_create(env, AXIS2_MSG_RECV_PARAM, NULL);
- AXIS2_PARAM_SET_VALUE(impl_info_param, env, dll_desc);
- /* set the impl_info_param(which contain dll_desc as value) so that
- * loaded msg_recv can be re-used in future
- */
- AXIS2_CONF_ADD_PARAM(conf, env, impl_info_param);
- }
- axis2_class_loader_init(env);
- msg_recv = (axis2_msg_recv_t *) axis2_class_loader_create_dll(env,
- impl_info_param);
-
+
+ msg_recv = axis2_raw_xml_in_out_msg_recv_create(env);
return msg_recv;
}
Modified: webservices/axis2/trunk/c/modules/core/deployment/module_builder.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/module_builder.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/module_builder.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/module_builder.c Mon Feb 13 00:55:16 2006
@@ -166,7 +166,7 @@
axis2_om_node_t *in_fault_flow_node = NULL;
axis2_om_element_t *out_fault_flow_element = NULL;
axis2_om_node_t *out_fault_flow_node = NULL;
- struct axis2_conf *parent = NULL;
+ axis2_conf_t *parent = NULL;
axis2_array_list_t *ops = NULL;
axis2_param_container_t *parent_container = NULL;
int size = 0;
@@ -247,11 +247,11 @@
if(NULL != module_dll_att)
{
- axis2_char_t *module_dll_name = NULL;
+ axis2_char_t *class_name = NULL;
- module_dll_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(module_dll_att, env);
- if(NULL != module_dll_name && (0 != AXIS2_STRCMP("", module_dll_name)))
+ class_name = AXIS2_OM_ATTRIBUTE_GET_VALUE(module_dll_att, env);
+ if(NULL != class_name && (0 != AXIS2_STRCMP("", class_name)))
{
if(NULL != module_builder->desc_builder->engine)
{
@@ -260,7 +260,7 @@
file_data = AXIS2_DEP_ENGINE_GET_CURRENT_FILE_ITEM(
module_builder->desc_builder->engine, env);
AXIS2_ARCH_FILE_DATA_SET_MODULE_DLL_NAME(file_data, env,
- module_dll_name);
+ class_name);
}
}
Modified: webservices/axis2/trunk/c/modules/core/deployment/repos_listener.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/repos_listener.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/repos_listener.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/repos_listener.c Mon Feb 13 00:55:16 2006
@@ -274,7 +274,7 @@
status = AXIS2_WS_INFO_LIST_INIT(listener_impl->info_list, env);
if(AXIS2_SUCCESS != status)
{
- return AXIS2_FAILURE;
+ return status;
}
/* if check_modules return AXIS2_FAILURE that means
* there are no modules to load
@@ -320,11 +320,20 @@
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK((*env)->error, folder_name, AXIS2_FAILURE);
listener_impl = AXIS2_INTF_TO_IMPL(listener);
+
current_info_list = AXIS2_DIR_HANDLER_LIST_SERVICE_OR_MODULE_DIRS(env,
folder_name);
if(!current_info_list)
{
- return AXIS2_FAILURE;
+ axis2_status_t status_code = AXIS2_FAILURE;
+
+ status_code = AXIS2_ERROR_GET_STATUS_CODE((*env)->error);
+ if(AXIS2_SUCCESS != status)
+ {
+ return status;
+ }
+ AXIS2_LOG_DEBUG((*env)->log, AXIS2_LOG_SI, "No %s in the folder.", folder_name);
+ return AXIS2_SUCCESS;
}
size = AXIS2_ARRAY_LIST_SIZE(current_info_list, env);
for (i = 0; i< size; i++) /* loop until empty */
Modified: webservices/axis2/trunk/c/modules/core/deployment/svc_builder.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/svc_builder.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/svc_builder.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/svc_builder.c Mon Feb 13 00:55:16 2006
@@ -237,6 +237,7 @@
axis2_om_attribute_t *name_attr = NULL;
axis2_array_list_t *ops = NULL;
axis2_char_t *svc_name = NULL;
+ axis2_char_t *class_name = NULL;
axis2_char_t *svc_dll_name = NULL;
axis2_dll_desc_t *dll_desc = NULL;
axis2_param_t *impl_info_param = NULL;
@@ -341,7 +342,8 @@
AXIS2_DLL_DESC_FREE(dll_desc, env);
return AXIS2_FAILURE;
}
- svc_dll_name = AXIS2_PARAM_GET_VALUE(impl_info_param, env);
+ class_name = AXIS2_PARAM_GET_VALUE(impl_info_param, env);
+ svc_dll_name = axis2_platform_get_dll_name(env, class_name);
arch_file_data = AXIS2_DEP_ENGINE_GET_CURRENT_FILE_ITEM(builder_impl->
svc_builder.desc_builder->engine, env);
svc_folder = AXIS2_ARCH_FILE_DATA_GET_FILE(arch_file_data, env);
Modified: webservices/axis2/trunk/c/modules/core/deployment/ws_info_list.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/ws_info_list.c?rev=377322&r1=377321&r2=377322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/ws_info_list.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/ws_info_list.c Mon Feb 13 00:55:16 2006
@@ -227,9 +227,9 @@
info_list_impl = AXIS2_INTF_TO_IMPL(info_list);
size = AXIS2_ARRAY_LIST_SIZE(info_list_impl->info_list, env);
- if(AXIS2_TRUE != AXIS2_ERROR_GET_STATUS_CODE((*env)->error))
+ if(AXIS2_SUCCESS != AXIS2_ERROR_GET_STATUS_CODE((*env)->error))
{
- return AXIS2_FAILURE;
+ return AXIS2_ERROR_GET_STATUS_CODE((*env)->error);
}
for (i = 0; i < size; i++)