Author: asankaa Date: Sun Nov 23 09:11:36 2008 New Revision: 24620 URL: http://wso2.org/svn/browse/wso2?view=rev&revision=24620
Log: remove eventsource reference from the same object (can access the local vars) Modified: branches/synapse/1.2.wso2v1/modules/core/src/main/java/org/apache/synapse/eventing/EventSource.java Modified: branches/synapse/1.2.wso2v1/modules/core/src/main/java/org/apache/synapse/eventing/EventSource.java URL: http://wso2.org/svn/browse/wso2/branches/synapse/1.2.wso2v1/modules/core/src/main/java/org/apache/synapse/eventing/EventSource.java?rev=24620&r1=24619&r2=24620&view=diff ============================================================================== --- branches/synapse/1.2.wso2v1/modules/core/src/main/java/org/apache/synapse/eventing/EventSource.java (original) +++ branches/synapse/1.2.wso2v1/modules/core/src/main/java/org/apache/synapse/eventing/EventSource.java Sun Nov 23 09:11:36 2008 @@ -19,6 +19,7 @@ package org.apache.synapse.eventing; +import org.apache.axiom.soap.SOAPEnvelope; import org.apache.axis2.AxisFault; import org.apache.axis2.addressing.EndpointReference; import org.apache.axis2.context.MessageContext; @@ -27,17 +28,17 @@ import org.apache.axis2.description.InOutAxisOperation; import org.apache.axis2.engine.AxisConfiguration; import org.apache.synapse.SynapseConstants; -import org.apache.synapse.util.MessageHelper; +import org.apache.synapse.config.SynapseConfiguration; +import org.apache.synapse.core.SynapseEnvironment; +import org.apache.synapse.core.axis2.Axis2MessageContext; +import org.apache.synapse.core.axis2.SynapseMessageReceiver; import org.apache.synapse.endpoints.AddressEndpoint; import org.apache.synapse.endpoints.EndpointDefinition; -import org.apache.synapse.eventing.builders.SubscriptionMessageBuilder; import org.apache.synapse.eventing.builders.ResponseMessageBuilder; -import org.apache.synapse.config.SynapseConfiguration; -import org.apache.synapse.core.axis2.SynapseMessageReceiver; -import org.apache.synapse.core.axis2.Axis2MessageContext; -import org.apache.synapse.core.SynapseEnvironment; -import org.apache.axiom.soap.SOAPEnvelope; +import org.apache.synapse.eventing.builders.SubscriptionMessageBuilder; +import org.apache.synapse.util.MessageHelper; import org.wso2.eventing.EventingConstants; + import javax.xml.namespace.QName; import java.util.List; @@ -48,7 +49,7 @@ private String name; private SubscriptionManager subscriptionManager; - private EventSource eventSource; + public EventSource(String name) { this.name = name; @@ -75,10 +76,7 @@ eventSourceService.setName(this.name); AxisOperation mediateOperation = new InOutAxisOperation(SynapseConstants.SYNAPSE_OPERATION_NAME); AxisOperation subscribeOperation = new InOutAxisOperation(new QName("subscribe")); - // Set the names of the two messages so that Axis2 is able to produce a WSDL (see SYNAPSE-366): -// mediateOperation.getMessage(WSDLConstants.MESSAGE_LABEL_IN_VALUE).setName("in"); -// mediateOperation.getMessage(WSDLConstants.MESSAGE_LABEL_OUT_VALUE).setName("out"); - this.setEventSource(this); + mediateOperation.setMessageReceiver(this); subscribeOperation.setMessageReceiver(this); subscribeOperation.setSoapAction(EventingConstants.WSE_SUBSCRIBE); @@ -89,21 +87,11 @@ } /** - * - * @return + * Override the Message reciver method to accept subscriptions and events + * @param mc + * @throws AxisFault */ - public EventSource getEventSource() { - return eventSource; - } - - /** - * - * @param eventSource - */ - public void setEventSource(EventSource eventSource) { - this.eventSource = eventSource; - } - public void receive(MessageContext mc) throws AxisFault { + public void receive(MessageContext mc) throws AxisFault { SynapseConfiguration synCfg = (SynapseConfiguration) mc.getConfigurationContext() .getAxisConfiguration().getParameter(SynapseConstants.SYNAPSE_CONFIG).getValue(); SynapseEnvironment synEnv = (SynapseEnvironment) mc.getConfigurationContext() @@ -111,7 +99,7 @@ org.apache.synapse.MessageContext smc = new Axis2MessageContext(mc, synCfg, synEnv); if (EventingConstants.WSE_SUBSCRIBE.equals(mc.getWSAAction())) { Subscription subscription = SubscriptionMessageBuilder.createSubscription(smc); - eventSource.getSubscriptionManager().addSubscription(subscription); + subscriptionManager.addSubscription(subscription); ResponseMessageBuilder messageBuilder = new ResponseMessageBuilder(mc); SOAPEnvelope soapEnvelope = messageBuilder.genSubscriptionResponse(subscription); String replyAddress = mc.getOptions().getReplyTo().getAddress(); @@ -123,17 +111,17 @@ rmc.setTo(new EndpointReference(replyAddress)); rmc.setEnvelope(soapEnvelope); endpoint.send(MessageHelper.cloneMessageContext(rmc)); - }else if (EventingConstants.WSE_UNSUBSCRIBE.equals(mc.getWSAAction())) { + } else if (EventingConstants.WSE_UNSUBSCRIBE.equals(mc.getWSAAction())) { // Unsubscribe for responce - }else if (EventingConstants.WSE_GET_STATUS.equals(mc.getWSAAction())) { + } else if (EventingConstants.WSE_GET_STATUS.equals(mc.getWSAAction())) { // Get responce status - }else if (EventingConstants.WSE_RENEW.equals(mc.getWSAAction())) { + } else if (EventingConstants.WSE_RENEW.equals(mc.getWSAAction())) { // Renew subscription } else { // Treat as an Event - List<Subscription> subscribers = eventSource.getSubscriptionManager().getMatchingSubscribers(smc); + List<Subscription> subscribers = subscriptionManager.getMatchingSubscribers(smc); for (Subscription subscription : subscribers) { - smc.setProperty("OUT_ONLY","true"); // Set one way message for events + smc.setProperty("OUT_ONLY", "true"); // Set one way message for events subscription.getEndpoint().send(MessageHelper.cloneMessageContext(smc)); } } _______________________________________________ Esb-java-dev mailing list [email protected] https://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev
