You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by da...@apache.org on 2006/03/29 11:34:36 UTC
svn commit: r389726 - in /webservices/axis2/trunk/c: ./ include/
modules/core/clientapi/ modules/core/description/ modules/core/engine/
modules/util/ samples/client/dynamic_invocation/ test/unit/util/
Author: damitha
Date: Wed Mar 29 01:34:33 2006
New Revision: 389726
URL: http://svn.apache.org/viewcvs?rev=389726&view=rev
Log:
Files related to dynamic invocation
Added:
webservices/axis2/trunk/c/include/axis2_di_client.h
webservices/axis2/trunk/c/modules/util/dll_desc.c
- copied unchanged from r389684, webservices/axis2/trunk/c/modules/core/description/dll_desc.c
webservices/axis2/trunk/c/modules/util/param.c
- copied unchanged from r389684, webservices/axis2/trunk/c/modules/core/description/param.c
webservices/axis2/trunk/c/modules/util/param_container.c
- copied unchanged from r389684, webservices/axis2/trunk/c/modules/core/description/param_container.c
webservices/axis2/trunk/c/samples/client/dynamic_invocation/echo_client.c
- copied, changed from r389686, webservices/axis2/trunk/c/samples/client/dynamic_invocation/main.c
Removed:
webservices/axis2/trunk/c/modules/core/clientapi/di_client.c
webservices/axis2/trunk/c/modules/core/description/dll_desc.c
webservices/axis2/trunk/c/modules/core/description/param.c
webservices/axis2/trunk/c/modules/core/description/param_container.c
webservices/axis2/trunk/c/samples/client/dynamic_invocation/di_client.c
webservices/axis2/trunk/c/samples/client/dynamic_invocation/main.c
Modified:
webservices/axis2/trunk/c/build.sh
webservices/axis2/trunk/c/configure.ac
webservices/axis2/trunk/c/modules/core/clientapi/Makefile.am
webservices/axis2/trunk/c/modules/core/description/Makefile.am
webservices/axis2/trunk/c/modules/core/engine/Makefile.am
webservices/axis2/trunk/c/modules/util/Makefile.am
webservices/axis2/trunk/c/samples/client/dynamic_invocation/Makefile.am
webservices/axis2/trunk/c/test/unit/util/Makefile.am
Modified: webservices/axis2/trunk/c/build.sh
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/build.sh?rev=389726&r1=389725&r2=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/build.sh (original)
+++ webservices/axis2/trunk/c/build.sh Wed Mar 29 01:34:33 2006
@@ -2,6 +2,6 @@
./autogen.sh
AXIS2C_HOME=`pwd`/deploy
export AXIS2C_HOME
-./configure --prefix=${AXIS2C_HOME} --enable-tests=yes --enable-trace=yes --with-apache2=/usr/include/apache2 --with-apr=/usr/include/apr-0
+./configure --prefix=${AXIS2C_HOME} --enable-tests=yes --enable-trace=yes --with-apache2=/usr/include/apache2 --with-apr=/usr/include/apr-0 --enable-diclient=yes
make
make install
Modified: webservices/axis2/trunk/c/configure.ac
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/configure.ac?rev=389726&r1=389725&r2=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/configure.ac (original)
+++ webservices/axis2/trunk/c/configure.ac Wed Mar 29 01:34:33 2006
@@ -172,6 +172,23 @@
CFLAGS="$CFLAGS"
)
+AC_MSG_CHECKING(whether to build dynamic invocation client library)
+AC_ARG_ENABLE(diclient, [ --enable-diclient build diclient library wrapper. default=no],
+[ case "${enableval}" in
+ no)
+ AC_MSG_RESULT(no)
+ DICLIENT_DIR=""
+ ;;
+ *)
+ AC_MSG_RESULT(yes)
+ DICLIENT_DIR="diclient"
+
+ ;;
+ esac ],
+ AC_MSG_RESULT(yes)
+ DICLIENT_DIR="diclient"
+)
+
PKG_CHECK_MODULES(LIBXML2, libxml-2.0)
CFLAGS="$CFLAGS $LIBXML2_CFLAGS $GUTHTHILA_CFLAGS"
@@ -183,6 +200,7 @@
AC_SUBST(LIBXML2_CFLAGS)
AC_SUBST(LIBXML2_LIBS)
AC_SUBST(LIBXML2_DIR)
+AC_SUBST(DICLIENT_DIR)
AC_SUBST(GUTHTHILA_DIR)
AC_SUBST(GUTHTHILA_LIBS)
AC_SUBST(TESTDIR)
@@ -206,6 +224,7 @@
modules/core/transport/http/server/apache2/Makefile \
modules/core/deployment/Makefile \
modules/core/clientapi/Makefile \
+ modules/core/clientapi/diclient/Makefile \
modules/core/receivers/Makefile \
modules/core/util/Makefile \
modules/xml/Makefile \
Added: webservices/axis2/trunk/c/include/axis2_di_client.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_di_client.h?rev=389726&view=auto
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_di_client.h (added)
+++ webservices/axis2/trunk/c/include/axis2_di_client.h Wed Mar 29 01:34:33 2006
@@ -0,0 +1,90 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXIS2_DI_CLIENT_H
+#define AXIS2_DI_CLIENT_H
+
+
+/**
+ * @file axis2_di_client.h
+ * @brief axis2 Dynamic Invocation Client interface
+ */
+
+#include <axis2_defines.h>
+#include <axis2_env.h>
+#include <axis2_error.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/** @defgroup axis2_di_client Dynamic Invocation Client
+ * @ingroup axis2_core_clientapi
+ * @{
+ */
+
+typedef struct axis2_di_client_ops axis2_di_client_ops_t;
+typedef struct axis2_di_client axis2_di_client_t;
+
+struct axis2_om_node;
+
+/**
+ * @brief Dynamic Invocation Client ops struct
+ * Encapsulator struct for ops of axis2_di_client
+ */
+struct axis2_di_client_ops
+{
+ axis2_status_t (AXIS2_CALL *
+ free)(struct axis2_di_client *di_client,
+ axis2_env_t **env);
+
+ axis2_status_t (AXIS2_CALL *
+ invoke) (axis2_di_client_t *di_client,
+ axis2_env_t **env,
+ axis2_char_t *wsdl_file_name,
+ axis2_om_node_t *node);
+};
+
+/**
+ * @brief Dynamic Invocation Client struct
+ * Axis2 Dynamic Invocation Client
+ */
+struct axis2_di_client
+{
+ axis2_di_client_ops_t *ops;
+};
+
+AXIS2_DECLARE(axis2_di_client_t*)
+axis2_di_client_create(axis2_env_t **env);
+
+/************************** Start of function macros **************************/
+
+#define AXIS2_DI_CLIENT_FREE(di_client, env) \
+ ((di_client)->ops->free (di_client, env))
+
+#define AXIS2_DI_CLIENT_INVOKE(di_client, env, wsdl_file_name, node) \
+ ((di_client)->ops->invoke (di_client, env, wsdl_file_name, node))
+
+/************************** End of function macros ****************************/
+
+/** @} */
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* AXIS2_DI_CLIENT_H */
+
Modified: webservices/axis2/trunk/c/modules/core/clientapi/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/clientapi/Makefile.am?rev=389726&r1=389725&r2=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/clientapi/Makefile.am (original)
+++ webservices/axis2/trunk/c/modules/core/clientapi/Makefile.am Wed Mar 29 01:34:33 2006
@@ -1,4 +1,5 @@
TESTS =
+SUBDIRS = $(DICLIENT_DIR)
noinst_LTLIBRARIES = libaxis2_clientapi.la
libaxis2_clientapi_la_SOURCES = \
async_result.c \
Modified: webservices/axis2/trunk/c/modules/core/description/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/description/Makefile.am?rev=389726&r1=389725&r2=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/description/Makefile.am (original)
+++ webservices/axis2/trunk/c/modules/core/description/Makefile.am Wed Mar 29 01:34:33 2006
@@ -2,20 +2,17 @@
noinst_LTLIBRARIES = libaxis2_description.la
libaxis2_description_la_SOURCES = \
- param_container.c \
op.c \
svc.c \
module.c \
module_desc.c \
- param.c \
svc_grp.c \
phase_rule.c \
handler_desc.c \
flow.c \
flow_container.c \
transport_in_desc.c \
- transport_out_desc.c \
- dll_desc.c
+ transport_out_desc.c
INCLUDES = -I$(top_builddir)/include \
-I$(top_builddir)/modules/util \
Modified: webservices/axis2/trunk/c/modules/core/engine/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/engine/Makefile.am?rev=389726&r1=389725&r2=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/engine/Makefile.am (original)
+++ webservices/axis2/trunk/c/modules/core/engine/Makefile.am Wed Mar 29 01:34:33 2006
@@ -15,12 +15,10 @@
soap_body_disp.c \
ctx_handler.c \
engine.c \
- ../description/param_container.c \
../description/op.c \
../description/svc.c \
../description/module.c \
../description/module_desc.c \
- ../description/param.c \
../description/svc_grp.c \
../description/phase_rule.c \
../description/handler_desc.c \
@@ -28,7 +26,6 @@
../description/flow_container.c \
../description/transport_in_desc.c \
../description/transport_out_desc.c \
- ../description/dll_desc.c \
../receivers/msg_recv.c \
../receivers/raw_xml_in_out_msg_recv.c \
../receivers/svr_callback.c \
Modified: webservices/axis2/trunk/c/modules/util/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/util/Makefile.am?rev=389726&r1=389725&r2=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/util/Makefile.am (original)
+++ webservices/axis2/trunk/c/modules/util/Makefile.am Wed Mar 29 01:34:33 2006
@@ -29,7 +29,10 @@
uuid_gen.c\
thread_pool.c \
property.c \
- types.c
+ types.c \
+ param.c \
+ param_container.c \
+ dll_desc.c
INCLUDES = -I$(top_builddir)/include \
-I$(top_builddir)/modules/util \
Modified: webservices/axis2/trunk/c/samples/client/dynamic_invocation/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/samples/client/dynamic_invocation/Makefile.am?rev=389726&r1=389725&r2=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/samples/client/dynamic_invocation/Makefile.am (original)
+++ webservices/axis2/trunk/c/samples/client/dynamic_invocation/Makefile.am Wed Mar 29 01:34:33 2006
@@ -1,11 +1,9 @@
prgbindir=$(prefix)/bin/samples
-prgbin_PROGRAMS = di_client
+prgbin_PROGRAMS = echo_client
samplesdir=$(prefix)/samples/client/dynamic_invocation
-samples_DATA=di_client.c
-di_client_SOURCES = di_client.c \
- main.c
-
-di_client_LDADD = \
+samples_DATA=echo_client.c
+echo_client_SOURCES = echo_client.c
+echo_client_LDADD = \
-laxis2_util \
-laxis2_om \
-laxis2_wsdl \
Copied: webservices/axis2/trunk/c/samples/client/dynamic_invocation/echo_client.c (from r389686, webservices/axis2/trunk/c/samples/client/dynamic_invocation/main.c)
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/samples/client/dynamic_invocation/echo_client.c?p2=webservices/axis2/trunk/c/samples/client/dynamic_invocation/echo_client.c&p1=webservices/axis2/trunk/c/samples/client/dynamic_invocation/main.c&r1=389686&r2=389726&rev=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/samples/client/dynamic_invocation/main.c (original)
+++ webservices/axis2/trunk/c/samples/client/dynamic_invocation/echo_client.c Wed Mar 29 01:34:33 2006
@@ -20,7 +20,7 @@
#include <axis2_stream.h>
#include <axis2_log_default.h>
#include <axis2_error_default.h>
-#include "di_client.h"
+#include <axis2_di_client.h>
#include <stdlib.h>
#include <stdio.h>
@@ -36,6 +36,7 @@
axis2_error_t *error = NULL;
axis2_log_t *log = NULL;
axis2_allocator_t *allocator = NULL;
+ char *wsdl_file_name = NULL;
/* set up the envioronment with allocator and log*/
allocator = axis2_allocator_init (NULL);
@@ -50,10 +51,10 @@
printf("Usage: print <wsdl_File_Name>\n");
return 1;
}
- wp = axis2_wsdl4c_parser_create(argv[1], "");
/* build the SOAP request message content using OM API.*/
node = build_om_programatically(&env);
- status = axis2_di_client_invoke(&env, wp, node);
+ wsdl_file_name = argv[1];
+ status = axis2_di_client_invoke(&env, wsdl_file_name, node);
if(AXIS2_SUCCESS == status)
printf("status:%s\n", "Success");
else
Modified: webservices/axis2/trunk/c/test/unit/util/Makefile.am
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/test/unit/util/Makefile.am?rev=389726&r1=389725&r2=389726&view=diff
==============================================================================
--- webservices/axis2/trunk/c/test/unit/util/Makefile.am (original)
+++ webservices/axis2/trunk/c/test/unit/util/Makefile.am Wed Mar 29 01:34:33 2006
@@ -18,15 +18,6 @@
INCLUDES = -I$(top_builddir)/include \
-I${CUTEST_HOME}/include \
-I$(top_builddir)/modules/util \
- -I$(top_builddir)/modules/core/description \
- -I$(top_builddir)/modules/core/context \
- -I$(top_builddir)/modules/core/phaseresolver \
- -I$(top_builddir)/modules/core/deployment \
- -I$(top_builddir)/modules/core/transport \
- -I$(top_builddir)/modules/core/engine \
- -I$(top_builddir)/modules/core/clientapi \
- -I$(top_builddir)/modules/wsdl \
- -I$(top_builddir)/modules/xml/parser \
-I$(top_builddir)/modules/platforms
prgbin_PROGRAMS = util_test
@@ -38,11 +29,6 @@
$(top_builddir)/test/unit/util/libtest_util.la \
$(top_builddir)/modules/util/libaxis2_util.la \
$(top_builddir)/modules/platforms/unix/libaxis2_unix.la \
- $(top_builddir)/modules/xml/om/libaxis2_om.la \
- $(top_builddir)/modules/xml/soap/libaxis2_soap.la \
- $(top_builddir)/modules/core/engine/libaxis2_engine.la \
- $(top_builddir)/modules/wsdl/libaxis2_wsdl.la \
- $(top_builddir)/modules/xml/parser/libxml2/libaxis2_parser.la \
-lpthread \
$(GUTHTHILA_LIBS) \
$(LIBXML2_LIBS)