Author: damitha
Date: Tue Sep 18 21:36:29 2007
New Revision: 577147
URL: http://svn.apache.org/viewvc?rev=577147&view=rev
Log:
Savan Filtering is now working with new changes
Modified:
webservices/savan/trunk/c/build.sh
webservices/savan/trunk/c/include/savan_util.h
webservices/savan/trunk/c/samples/client/subscriber/subscriber.c
webservices/savan/trunk/c/src/core/savan_sub_processor.c
webservices/savan/trunk/c/src/util/savan_util.c
Modified: webservices/savan/trunk/c/build.sh
URL:
http://svn.apache.org/viewvc/webservices/savan/trunk/c/build.sh?rev=577147&r1=577146&r2=577147&view=diff
==============================================================================
--- webservices/savan/trunk/c/build.sh (original)
+++ webservices/savan/trunk/c/build.sh Tue Sep 18 21:36:29 2007
@@ -1,5 +1,5 @@
#!/bin/bash
./autogen.sh
-./configure --prefix=$AXIS2C_HOME --enable-static=no
--with-axis2=${AXIS2C_HOME}/include/axis2-1.1 --enable-filtering=no
+./configure --prefix=$AXIS2C_HOME --enable-static=no
--with-axis2=${AXIS2C_HOME}/include/axis2-1.1 --enable-filtering=yes
make -j30
make install
Modified: webservices/savan/trunk/c/include/savan_util.h
URL:
http://svn.apache.org/viewvc/webservices/savan/trunk/c/include/savan_util.h?rev=577147&r1=577146&r2=577147&view=diff
==============================================================================
--- webservices/savan/trunk/c/include/savan_util.h (original)
+++ webservices/savan/trunk/c/include/savan_util.h Tue Sep 18 21:36:29 2007
@@ -129,7 +129,6 @@
axis2_status_t AXIS2_CALL
savan_util_set_filter_template_for_subscriber(
savan_subscriber_t *subscriber,
- savan_sub_processor_t *sub_processor,
const axutil_env_t *env);
#endif
Modified: webservices/savan/trunk/c/samples/client/subscriber/subscriber.c
URL:
http://svn.apache.org/viewvc/webservices/savan/trunk/c/samples/client/subscriber/subscriber.c?rev=577147&r1=577146&r2=577147&view=diff
==============================================================================
--- webservices/savan/trunk/c/samples/client/subscriber/subscriber.c (original)
+++ webservices/savan/trunk/c/samples/client/subscriber/subscriber.c Tue Sep 18
21:36:29 2007
@@ -90,11 +90,11 @@
axutil_hash_set(savan_options, SAVAN_OP_KEY_NOTIFY_EPR,
AXIS2_HASH_KEY_STRING,
"http://localhost:9090/axis2/services/listener");
- /*axutil_hash_set(savan_options, SAVAN_OP_KEY_FILTER,
AXIS2_HASH_KEY_STRING,
+ axutil_hash_set(savan_options, SAVAN_OP_KEY_FILTER, AXIS2_HASH_KEY_STRING,
"//[EMAIL PROTECTED]'5']");
axutil_hash_set(savan_options, SAVAN_OP_KEY_FILTER_DIALECT,
AXIS2_HASH_KEY_STRING,
- DEFAULT_FILTER_DIALECT);*/
+ DEFAULT_FILTER_DIALECT);
/* Create a savan client */
savan_client = savan_client_create(env);
Modified: webservices/savan/trunk/c/src/core/savan_sub_processor.c
URL:
http://svn.apache.org/viewvc/webservices/savan/trunk/c/src/core/savan_sub_processor.c?rev=577147&r1=577146&r2=577147&view=diff
==============================================================================
--- webservices/savan/trunk/c/src/core/savan_sub_processor.c (original)
+++ webservices/savan/trunk/c/src/core/savan_sub_processor.c Tue Sep 18
21:36:29 2007
@@ -120,11 +120,6 @@
/*Set the filter template file for the subscriber*/
- #ifdef SAVAN_FILTERING
- savan_util_set_filter_template_for_subscriber(subscriber,
- sub_processor, env);
- #endif
-
/* Store sub id in msg ctx to be used by the msg receiver */
id = savan_subscriber_get_id(subscriber, env);
savan_sub_processor_set_sub_id_to_msg_ctx(env, msg_ctx, id);
Modified: webservices/savan/trunk/c/src/util/savan_util.c
URL:
http://svn.apache.org/viewvc/webservices/savan/trunk/c/src/util/savan_util.c?rev=577147&r1=577146&r2=577147&view=diff
==============================================================================
--- webservices/savan/trunk/c/src/util/savan_util.c (original)
+++ webservices/savan/trunk/c/src/util/savan_util.c Tue Sep 18 21:36:29 2007
@@ -148,7 +148,6 @@
axis2_status_t AXIS2_CALL
savan_util_set_filter_template_for_subscriber(
savan_subscriber_t *subscriber,
- savan_sub_processor_t *sub_processor,
const axutil_env_t *env)
{
AXIS2_ENV_CHECK(env, NULL);
@@ -194,25 +193,38 @@
axiom_document_t *document = NULL;
axiom_node_t *node = NULL;
- if(savan_subscriber_get_filter(subscriber, env) == NULL)
+ if(!savan_subscriber_get_filter(subscriber, env))
{
return AXIS2_SUCCESS;
}
payload_string = axiom_node_to_string(payload, env);
+ AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI,
+ "[SAVAN] payload_string before applying filter:%s", payload_string);
payload_doc = (xmlDocPtr)xmlParseDoc((xmlChar*)payload_string);
+ #ifdef SAVAN_FILTERING
+ savan_util_set_filter_template_for_subscriber(subscriber, env);
+ #endif
+
xslt_template_filter =
(xsltStylesheetPtr)savan_subscriber_get_filter_template(subscriber,
env);
-
+ if(xslt_template_filter)
+ {
+ AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "came0");
+ }
xmlDocPtr result_doc = (xmlDocPtr)xsltApplyStylesheet(xslt_template_filter,
payload_doc, NULL);
if(result_doc)
+ {
+ AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "came1");
xmlDocDumpMemory(result_doc, &buffer, &size);
+ }
+ AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[SAVAN] Buffer:%s", buffer);
if(buffer)
{
reader = axiom_xml_reader_create_for_memory(env,
@@ -220,11 +232,20 @@
NULL, AXIS2_XML_PARSER_TYPE_BUFFER);
}
if(reader)
+ {
+ AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "came2");
om_builder = axiom_stax_builder_create(env, reader);
+ }
if(om_builder)
+ {
+ AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "came3");
document = axiom_stax_builder_get_document(om_builder, env);
+ }
if(document)
+ {
+ AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "came4");
node = axiom_document_build_all(document, env);
+ }
if(om_builder)
axiom_stax_builder_free_self(om_builder, env);