package com.mcafee.gui; import javax.naming.InitialContext; import com.mcafee.JmsDiggerException; import com.mcafee.JmsInitialContextFactory; import com.mcafee.JmsLoginInfo; /** * * @author Gursev Singh Kalra @ McAfee, Inc. * */ public class JmsConfig { private InitialContext initialContext; private JmsInitialContextFactory contextFactory; private String ctxFactoryClass; private String connFactName; private String providerUrl; private String username; private String password; private JmsLoginInfo loginInfo; private boolean finalInitContext; public JmsConfig(String ctxFactoryClass, String connFactName, String providerUrl, String username, String password) throws JmsDiggerException { this.ctxFactoryClass = ctxFactoryClass; this.connFactName = connFactName; this.providerUrl = providerUrl; this.username = username; this.password = password; contextFactory = new JmsInitialContextFactory(this.getCtxFactoryClass(), this.getProviderUrl()); contextFactory.addConnectionFactory(this.getConnFactName()); loginInfo = new JmsLoginInfo(this.username, this.password); finalInitContext = false; } public InitialContext buildInitialContext() throws JmsDiggerException { //Delaying Initial Context initialization until it is retrieved. if(!finalInitContext) initialContext = contextFactory.getInitialContext(); return initialContext; } public void addTopic(String topicName) { if(!finalInitContext) contextFactory.addTopic(topicName, "jms."+topicName); } public void addQueue(String queueName) { if(!finalInitContext) contextFactory.addQueue(queueName, "jms."+queueName); } public String getCtxFactoryClass() { return ctxFactoryClass; } public String getConnFactName() { return connFactName; } public String getProviderUrl() { return providerUrl; } public String getUsername() { return username; } public String getPassword() { return password; } public JmsLoginInfo getLoginInfo() { return loginInfo; } }