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);


Reply via email to