* @param publisherURI URI of the publisher
* @return JMSConnectionInfo to connect to the JMS server that the publisher publishes to
*/
public JMSConnectionInfo getJMSConnectionInfo(URI publisherURI) {
String publisherAuthority = publisherURI.getAuthority();
JMSConnectionInfo connInfo = null;
if (publisherJMSConnInfoMap.containsKey(publisherAuthority)) {
connInfo = publisherJMSConnInfoMap.get(publisherAuthority);
}
else {
String schemeWithAuthority = publisherURI.getScheme() + "://" + publisherAuthority;
for (MappingRule mr : mappingRules) {
String jndiPropertiesString = mr.applyRule(schemeWithAuthority);
if (jndiPropertiesString != null) {
connInfo = new JMSConnectionInfo(jndiPropertiesString);
publisherJMSConnInfoMap.put(publisherAuthority, connInfo);
LOG.info("Adding hcat server [{0}] to the list of JMS publishers", schemeWithAuthority);
break;
}
}