Package org.apache.synapse.eventing

Examples of org.apache.synapse.eventing.SynapseEventSource$EventDispatcher


    public void saveEventSource(EventSourceDTO eventsource) {
        final Lock lock = getLock();
        try {
            lock.lock();
            SynapseConfiguration synapseConfiguration = getSynapseConfiguration();
            SynapseEventSource oldEventSrc = synapseConfiguration.getEventSource(eventsource.getName());
            if (oldEventSrc == null) {
                log.warn("No event source exists by the name : " + eventsource.getName());
                return;
            }

            AxisConfiguration axisCfg = getSynapseConfiguration().getAxisConfiguration();
            axisCfg.removeService(eventsource.getName());
            SynapseEventSource synapseEventSource = buildEventSource(eventsource);
            synapseEventSource.buildService(axisCfg);
            synapseEventSource.setFileName(oldEventSrc.getFileName());
            synapseConfiguration.removeEventSource(eventsource.getName());
            synapseConfiguration.addEventSource(eventsource.getName(), synapseEventSource);
            persistEventSource(synapseEventSource);
        } catch (Exception e) {
            log.error("Configuration creation error" + e.toString());
View Full Code Here


    public void removeEventSource(String eventsourceName) {
        final Lock lock = getLock();
        try {
            lock.lock();
            SynapseConfiguration synapseConfiguration = getSynapseConfiguration();
            SynapseEventSource eventSource = synapseConfiguration.getEventSource(eventsourceName);
            if (eventSource != null) {
                synapseConfiguration.removeEventSource(eventsourceName);
                MediationPersistenceManager pm = getMediationPersistenceManager();
                pm.deleteItem(eventsourceName, eventSource.getFileName(),
                        ServiceBusConstants.ITEM_TYPE_EVENT_SRC);
            } else {
                log.warn("No event source exists by the name : " + eventsourceName);
            }
        } catch (Exception e) {
View Full Code Here

     *
     * @param eventSourceDTO Event source description to be built
     * @return a Synapse event source instance
     */
    private SynapseEventSource buildEventSource(EventSourceDTO eventSourceDTO) {
        SynapseEventSource synapseEventSource = new SynapseEventSource(eventSourceDTO.getName());
        SubscriptionManager subscriptionManager;
        try {
            if (eventSourceDTO.getType().equals("DefaultInMemory")) {
                subscriptionManager = new DefaultInMemorySubscriptionManager();
            }else  if (eventSourceDTO.getType().equals("EmbRegistry")) {
                subscriptionManager = (SubscriptionManager) Class.forName(
                        "org.wso2.carbon.eventing.impl.EmbeddedRegistryBasedSubscriptionManager")
                        .newInstance();
                subscriptionManager.init();
            } else {
                subscriptionManager = (SubscriptionManager) Class.forName(
                        "org.wso2.carbon.eventing.impl.RemoteRegistryBasedSubscriptionManager")
                        .newInstance();
            }
            subscriptionManager
                    .addProperty("topicHeaderName", eventSourceDTO.getTopicHeaderName());
            subscriptionManager
                    .addProperty("topicHeaderNS", eventSourceDTO.getTopicHeaderNS());
            //TODO this needs to be change to support any Subscription manager inherit from Subacription Manager
            if (eventSourceDTO.getType().equals("Registry")) {
                if (eventSourceDTO.getRegistryUrl() != null) {
                    subscriptionManager
                            .addProperty("registryURL", eventSourceDTO.getRegistryUrl());
                }
                if (eventSourceDTO.getUsername() != null) {
                    subscriptionManager
                            .addProperty("username", eventSourceDTO.getUsername());
                }
                if (eventSourceDTO.getRegistryUrl() != null) {
                    subscriptionManager
                            .addProperty("password", eventSourceDTO.getPassword());
                }
            }
            synapseEventSource.setSubscriptionManager(subscriptionManager);
        } catch (ClassNotFoundException e) {
            log.error("Subscription manager cannot create " + e.toString());
        } catch (IllegalAccessException e) {
            log.error("Subscription manager cannot create " + e.toString());
        } catch (InstantiationException e) {
View Full Code Here

     * exist a runtime exception is thrown.
     *
     * @param name name of the event source to be removed
     */
    public synchronized void removeEventSource(String name) {
        SynapseEventSource eventSource = eventSources.get(name);
        if (eventSource == null) {
            handleException("No event source exists by the name : " + name);
        } else {
            try {
                if (getAxisConfiguration().getServiceForActivation(name) != null) {
View Full Code Here

    private static final QName EP_URI_QNAME = new QName("uri");

    @SuppressWarnings({"UnusedDeclaration"})
    public static SynapseEventSource createEventSource(OMElement elem, Properties properties) {

        SynapseEventSource eventSource = null;

        OMAttribute name = elem.getAttribute(new QName(XMLConfigConstants.NULL_NAMESPACE, "name"));
        if (name == null) {
            handleException("The 'name' attribute is required for a event source de");
        } else {
            eventSource = new SynapseEventSource(name.getAttributeValue());
        }

        OMElement subscriptionManagerElem = elem.getFirstChildWithName(SUBSCRIPTION_MANAGER_QNAME);
        if (eventSource != null && subscriptionManagerElem != null) {

            OMAttribute clazz = subscriptionManagerElem
                    .getAttribute(new QName(XMLConfigConstants.NULL_NAMESPACE, "class"));
            if (clazz != null) {
                String className = clazz.getAttributeValue();
                try {
                    Class subscriptionManagerClass = Class.forName(className);
                    SubscriptionManager manager =
                            (SubscriptionManager) subscriptionManagerClass.newInstance();
                    Iterator itr = subscriptionManagerElem.getChildrenWithName(PROPERTIES_QNAME);
                    while (itr.hasNext()) {
                        OMElement propElem = (OMElement) itr.next();
                        String propName =
                                propElem.getAttribute(new QName("name")).getAttributeValue();
                        String propValue =
                                propElem.getAttribute(new QName("value")).getAttributeValue();
                        if (propName != null && !"".equals(propName.trim()) &&
                                propValue != null && !"".equals(propValue.trim())) {

                            propName = propName.trim();
                            propValue = propValue.trim();

                            PasswordManager passwordManager =
                                    PasswordManager.getInstance();
                            String key = eventSource.getName() + "." + propName;

                            if (passwordManager.isInitialized()
                                    && passwordManager.isTokenProtected(key)) {
                                eventSource.putConfigurationProperty(propName, propValue);
                                propValue = passwordManager.resolve(propValue);
                            }

                            manager.addProperty(propName, propValue);
                        }
                    }
                    eventSource.setSubscriptionManager(manager);
                    eventSource.getSubscriptionManager()
                            .init(); // Initialise before doing further processing, required for static subscriptions
                } catch (ClassNotFoundException e) {
                    handleException("SubscriptionManager class not found", e);
                } catch (IllegalAccessException e) {
                    handleException("Unable to access the SubscriptionManager object", e);
View Full Code Here

            Iterator events = FileUtils.iterateFiles(eventsDir, extensions, false);
            while (events.hasNext()) {
                File file = (File) events.next();
                OMElement document = getOMElement(file);
                SynapseEventSource eventSource = SynapseXMLConfigurationFactory.
                        defineEventSource(synapseConfig, document, properties);
                if (eventSource != null) {
                    eventSource.setFileName(file.getName());
                    synapseConfig.getArtifactDeploymentStore().addArtifact(
                            file.getAbsolutePath(), eventSource.getName());
                }
            }
        }
    }
View Full Code Here

    }

    public static SynapseEventSource defineEventSource(SynapseConfiguration config,
                                                       OMElement elem, Properties properties) {

        SynapseEventSource eventSource = null;

        try {
            eventSource = EventSourceFactory.createEventSource(elem, properties);
            if (eventSource != null) {
                config.addEventSource(eventSource.getName(), eventSource);
            }
        } catch (Exception e) {
            String msg = "Event Source configuration cannot be built";
            handleConfigurationError(SynapseConstants.FAIL_SAFE_MODE_EVENT_SOURCE, msg, e);
        }
View Full Code Here

            }
        }

        Collection<SynapseEventSource> eventSources = newConfig.getEventSources();
        for (SynapseEventSource eventSource : eventSources) {
            SynapseEventSource oldEventSource = currentConfig.getEventSource(eventSource.getName());
            if (oldEventSource != null) {
                eventSource.setFileName(oldEventSource.getFileName());
            }
        }

        Collection<PriorityExecutor> executors = newConfig.getPriorityExecutors().values();
        for (PriorityExecutor exec : executors) {
View Full Code Here

TOP

Related Classes of org.apache.synapse.eventing.SynapseEventSource$EventDispatcher

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.