<savan-config>

    <protocols>
        <protocol>
        	<name>eventing</name>
        	<utilFactory>org.apache.savan.eventing.EventingUtilFactory</utilFactory>
        	<mapping-rules>
                <action>http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</action>
                <action>http://schemas.xmlsoap.org/ws/2004/08/eventing/Renew</action>
                <action>http://schemas.xmlsoap.org/ws/2004/08/eventing/GetStatus</action>
                <action>http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</action>
                <action>http://wso2.com/ws/2007/05/eventing/Publish</action>
        	</mapping-rules>
        	<defaultSubscriber>eventing</defaultSubscriber>
        	<defaultFilter>empty</defaultFilter>
        	<!--
        	<parameters>
        	    <parameter>
        	        <name>eventing-topic-subscriber</name>
        	        <value>eventing-topic</value>
        	    </parameter>
        	</parameters>
        	-->
        </protocol>
		<protocol>
        	<name>atom</name>
        	<utilFactory>org.apache.savan.atom.AtomUtilFactory</utilFactory>
        	<mapping-rules>
                <action>http://wso2.com/eventing/Subscribe</action>
                <action>http://wso2.com/eventing/Renew</action>
                <action>http://wso2.com/eventing/Unsubscribe</action>
        	</mapping-rules>
        	<defaultSubscriber>atom-subscriber</defaultSubscriber>
        	<defaultFilter>empty</defaultFilter>
        </protocol>        
    </protocols>
    
    <subscriberStores>
    	<subscriberStore>
    		<key>default</key>
    		<class>org.apache.savan.storage.DefaultSubscriberStore</class>
    	</subscriberStore>
    </subscriberStores>
    
    <filters>
        <filter>
            <name>empty</name>
    		<identifier>empty</identifier>
    		<class>org.apache.savan.filters.EmptyFilter</class>
    	</filter>
    	<filter>
    	    <name>xpath</name>
    		<identifier>http://www.w3.org/TR/1999/REC-xpath-19991116</identifier>
    		<class>org.apache.savan.filters.XPathBasedFilter</class>
    	</filter>
    </filters>
    
    <subscribers>
    	<subscriber>
    		<name>eventing</name>
    		<class>org.apache.savan.eventing.subscribers.EventingSubscriber</class>
    	</subscriber>
		<subscriber>
    		<name>atom-subscriber</name>
    		<class>org.apache.savan.atom.AtomSubscriber</class>
    	</subscriber>    	
    </subscribers>
    
</savan-config>