Author: asanka
Date: Thu Apr 30 03:21:02 2009
New Revision: 770046
URL: http://svn.apache.org/viewvc?rev=770046&view=rev
Log:
Remove synapse based sub-man, make the sub-man impl generic by avoiding getters
and setters, parameters will be store and access by using a map.
Remove unused imports from the previous commit.
Removed:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/SynapseSubscriptionManager.java
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceFactory.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceSerializer.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/SynapseEventSource.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/managers/DefaultInMemorySubscriptionManager.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eventing/EventPublisherMediator.java
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceFactory.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceFactory.java?rev=770046&r1=770045&r2=770046&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceFactory.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceFactory.java
Thu Apr 30 03:21:02 2009
@@ -25,16 +25,11 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.synapse.SynapseException;
-import org.apache.synapse.config.xml.PropertyHelper;
import org.apache.synapse.config.xml.XMLConfigConstants;
-import org.apache.synapse.endpoints.AddressEndpoint;
-import org.apache.synapse.endpoints.EndpointDefinition;
import org.apache.synapse.eventing.SynapseEventSource;
import org.apache.synapse.eventing.SynapseEventingConstants;
import org.apache.synapse.eventing.SynapseSubscription;
-import org.apache.synapse.eventing.SynapseSubscriptionManager;
-import org.apache.synapse.eventing.filters.XPathBasedEventFilter;
-import org.wso2.eventing.SubscriptionData;
+import org.wso2.eventing.SubscriptionManager;
import org.wso2.eventing.exceptions.EventException;
import javax.xml.namespace.QName;
@@ -96,8 +91,8 @@
String className = clazz.getAttributeValue();
try {
Class subscriptionManagerClass = Class.forName(className);
- SynapseSubscriptionManager manager =
- (SynapseSubscriptionManager)
subscriptionManagerClass.newInstance();
+ SubscriptionManager manager =
+ (SubscriptionManager)
subscriptionManagerClass.newInstance();
Iterator itr =
subscriptionManagerElem.getChildrenWithName(PROPERTIES_QNAME);
while (itr.hasNext()) {
OMElement propElem = (OMElement) itr.next();
@@ -106,17 +101,16 @@
String propValue =
propElem.getAttribute(new
QName("value")).getAttributeValue();
manager.addProperty(propName, propValue);
- PropertyHelper.setStaticProperty(propElem, manager);
}
eventSource.setSubscriptionManager(manager);
eventSource.getSubscriptionManager()
.init(); // Initialise before doing further
processing, required for static subscriptions
} catch (ClassNotFoundException e) {
- handleException("SynapseSubscriptionManager class not
found", e);
+ handleException("SubscriptionManager class not found", e);
} catch (IllegalAccessException e) {
- handleException("Unable to access the
SynapseSubscriptionManager object", e);
+ handleException("Unable to access the SubscriptionManager
object", e);
} catch (InstantiationException e) {
- handleException("Unable to instantiate the
SynapseSubscriptionManager object",
+ handleException("Unable to instantiate the
SubscriptionManager object",
e);
}
} else {
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceSerializer.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceSerializer.java?rev=770046&r1=770045&r2=770046&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceSerializer.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/eventing/EventSourceSerializer.java
Thu Apr 30 03:21:02 2009
@@ -30,6 +30,7 @@
import java.util.Iterator;
import java.util.List;
+import java.util.Collection;
/**
* <eventSource name="blah">
@@ -62,7 +63,7 @@
XMLConfigConstants.SYNAPSE_OMNAMESPACE);
subManagerElem.addAttribute(fac.createOMAttribute("class", nullNS,
eventSource.getSubscriptionManager().getClass().getName()));
- for (String name :
eventSource.getSubscriptionManager().getPropertyNames()) {
+ for (String name :
(Collection<String>)eventSource.getSubscriptionManager().getPropertyNames()) {
OMElement propElem =
fac.createOMElement("property",
XMLConfigConstants.SYNAPSE_OMNAMESPACE);
propElem.addAttribute(fac.createOMAttribute("name", nullNS,
name));
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/SynapseEventSource.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/SynapseEventSource.java?rev=770046&r1=770045&r2=770046&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/SynapseEventSource.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/SynapseEventSource.java
Thu Apr 30 03:21:02 2009
@@ -45,6 +45,7 @@
import org.wso2.eventing.EventingConstants;
import org.wso2.eventing.Subscription;
import org.wso2.eventing.Event;
+import org.wso2.eventing.SubscriptionManager;
import org.wso2.eventing.exceptions.EventException;
import javax.xml.namespace.QName;
@@ -62,7 +63,7 @@
public class SynapseEventSource extends SynapseMessageReceiver {
private String name;
- private SynapseSubscriptionManager subscriptionManager;
+ private SubscriptionManager subscriptionManager;
private static final Log log = LogFactory.getLog(SynapseEventSource.class);
public SynapseEventSource(String name) {
@@ -77,11 +78,11 @@
this.name = name;
}
- public SynapseSubscriptionManager getSubscriptionManager() {
+ public SubscriptionManager getSubscriptionManager() {
return subscriptionManager;
}
- public void setSubscriptionManager(SynapseSubscriptionManager
subscriptionManager) {
+ public void setSubscriptionManager(SubscriptionManager
subscriptionManager) {
this.subscriptionManager = subscriptionManager;
}
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/managers/DefaultInMemorySubscriptionManager.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/managers/DefaultInMemorySubscriptionManager.java?rev=770046&r1=770045&r2=770046&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/managers/DefaultInMemorySubscriptionManager.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/eventing/managers/DefaultInMemorySubscriptionManager.java
Thu Apr 30 03:21:02 2009
@@ -23,34 +23,29 @@
import org.apache.commons.logging.LogFactory;
import org.apache.synapse.MessageContext;
import org.apache.synapse.SynapseException;
-import org.apache.synapse.eventing.SynapseSubscription;
-import org.apache.synapse.eventing.SynapseSubscriptionManager;
import org.apache.synapse.eventing.SynapseEventingConstants;
-import org.apache.synapse.eventing.filters.XPathBasedEventFilter;
import org.apache.synapse.eventing.filters.TopicBasedEventFilter;
import org.apache.synapse.util.xpath.SynapseXPath;
import org.jaxen.JaxenException;
-import org.wso2.eventing.Subscription;
import org.wso2.eventing.Event;
-import org.wso2.eventing.EventFilter;
+import org.wso2.eventing.Subscription;
+import org.wso2.eventing.SubscriptionManager;
import org.wso2.eventing.exceptions.EventException;
-import java.util.Calendar;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
/**
*
*/
-public class DefaultInMemorySubscriptionManager extends
SynapseSubscriptionManager {
+public class DefaultInMemorySubscriptionManager implements
SubscriptionManager<MessageContext> {
private final Map<String, Subscription> store =
new ConcurrentHashMap<String, Subscription>();
private String topicHeaderName;
private String topicHeaderNS;
private SynapseXPath topicXPath;
+ private final Map<String, String> properties = new HashMap<String,
String>();
private static final Log log =
LogFactory.getLog(DefaultInMemorySubscriptionManager.class);
public List<Subscription> getStaticSubscriptions() {
@@ -147,18 +142,18 @@
return null; //To change body of implemented methods use File |
Settings | File Templates.
}
- public void setParameter(String paramName, String paramValue) throws
EventException {
- //To change body of implemented methods use File | Settings | File
Templates.
- }
-
- public String getParameter(String paramName) throws EventException {
- return null; //To change body of implemented methods use File |
Settings | File Templates.
- }
-
public void init() {
try {
//TODO: pick values from the constants
+ topicHeaderName = getPropertyValue("topicHeaderName");
+ if(topicHeaderName==null){
+ handleException("Unable to create topic header topic header
name is null");
+ }
+ topicHeaderNS = getPropertyValue("topicHeaderNS");
+ if(topicHeaderNS==null){
+ handleException("Unable to create topic header topic header
namespace is null");
+ }
topicXPath = new SynapseXPath(
"s11:Header/ns:" + topicHeaderName + " | s12:Header/ns:" +
topicHeaderName);
topicXPath.addNamespace("s11",
"http://schemas.xmlsoap.org/soap/envelope/");
@@ -167,24 +162,18 @@
} catch (JaxenException e) {
handleException("Unable to create the topic header XPath", e);
}
-
-
- }
-
- public String getTopicHeaderName() {
- return topicHeaderName;
}
- public void setTopicHeaderName(String topicHeaderName) {
- this.topicHeaderName = topicHeaderName;
+ public void addProperty(String name, String value) {
+ properties.put(name, value);
}
- public String getTopicHeaderNS() {
- return topicHeaderNS;
+ public Collection<String> getPropertyNames() {
+ return properties.keySet();
}
- public void setTopicHeaderNS(String topicHeaderNS) {
- this.topicHeaderNS = topicHeaderNS;
+ public String getPropertyValue(String name) {
+ return properties.get(name);
}
private void handleException(String message) {
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eventing/EventPublisherMediator.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eventing/EventPublisherMediator.java?rev=770046&r1=770045&r2=770046&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eventing/EventPublisherMediator.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eventing/EventPublisherMediator.java
Thu Apr 30 03:21:02 2009
@@ -18,18 +18,11 @@
* under the License.
*/
-import org.apache.axis2.AxisFault;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.synapse.MessageContext;
-import org.apache.synapse.SynapseConstants;
import org.apache.synapse.eventing.SynapseEventSource;
-import org.apache.synapse.eventing.SynapseSubscription;
-import org.apache.synapse.eventing.SynapseSubscriptionManager;
import org.apache.synapse.mediators.AbstractMediator;
-import org.apache.synapse.util.MessageHelper;
-
-import java.util.List;
public class EventPublisherMediator extends AbstractMediator {
private static final Log log =
LogFactory.getLog(EventPublisherMediator.class);