*
* @param eventSource Synapse event source from which to obtain the event source description
* @return an event source description
*/
private EventSourceDTO buildEventSourceDTO(SynapseEventSource eventSource) {
EventSourceDTO eventSourceDTO = new EventSourceDTO();
eventSourceDTO.setName(eventSource.getName());
eventSourceDTO.setClassName(eventSource.getSubscriptionManager().getClass().getName());
/*Properties properties = new Properties();
properties.setProperty("topicHeaderName", eventSource.getSubscriptionManager().getPropertyValue("topicHeaderName"));
properties.setProperty("topicHeaderNS", eventSource.getSubscriptionManager().getPropertyValue("topicHeaderNS"));*/
eventSourceDTO.setTopicHeaderName(eventSource.getSubscriptionManager().getPropertyValue(
"topicHeaderName")); //TODO add to constants
eventSourceDTO.setTopicHeaderNS(
eventSource.getSubscriptionManager().getPropertyValue("topicHeaderNS"));
if (eventSourceDTO.getClassName()
.equals("org.apache.synapse.eventing.managers.DefaultInMemorySubscriptionManager")) {
eventSourceDTO.setType("DefaultInMemory");
}else if (eventSourceDTO.getClassName()
.equals("org.apache.synapse.eventing.managers.org.wso2.carbon.eventing.impl.EmbeddedRegistryBasedSubscriptionManager")) {
eventSourceDTO.setType("EmbRegistry");
} else {
eventSourceDTO.setType(
"Registry"); //TODO this needs to be change to support any Subscription manager inherit from Subacription Manager
eventSourceDTO.setRegistryUrl(
eventSource.getSubscriptionManager().getPropertyValue("registryURL"));
eventSourceDTO
.setUsername(eventSource.getSubscriptionManager().getPropertyValue("username"));
eventSourceDTO
.setPassword(eventSource.getSubscriptionManager().getPropertyValue("password"));
}
return eventSourceDTO;
}