001: /*
002: * JBoss, Home of Professional Open Source.
003: * Copyright 2006, Red Hat Middleware LLC, and individual contributors
004: * as indicated by the @author tags. See the copyright.txt file in the
005: * distribution for a full listing of individual contributors.
006: *
007: * This is free software; you can redistribute it and/or modify it
008: * under the terms of the GNU Lesser General Public License as
009: * published by the Free Software Foundation; either version 2.1 of
010: * the License, or (at your option) any later version.
011: *
012: * This software is distributed in the hope that it will be useful,
013: * but WITHOUT ANY WARRANTY; without even the implied warranty of
014: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
015: * Lesser General Public License for more details.
016: *
017: * You should have received a copy of the GNU Lesser General Public
018: * License along with this software; if not, write to the Free
019: * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
020: * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
021: */
022: package org.jboss.jms.jndi;
023:
024: import javax.naming.Context;
025: import javax.naming.NamingException;
026: import java.io.Serializable;
027: import java.util.Properties;
028:
029: /**
030: * JMS Provider Adapter
031: *
032: * @author <a href="mailto:cojonudo14@hotmail.com">Hiram Chirino</a>
033: * @author <a href="mailto:jason@planet57.com">Jason Dillon</a>
034: * @author <a href="mailto:adrian@jboss.com">Adrian Brock</a>
035: * @version $Revision: 57209 $
036: */
037: public interface JMSProviderAdapter extends Serializable {
038: /**
039: * This must return a context which can be closed.
040: *
041: * @return the context
042: */
043: Context getInitialContext() throws NamingException;
044:
045: /**
046: * Set the provider name
047: *
048: * @param name the name
049: */
050: void setName(String name);
051:
052: /**
053: * Get the provider name
054: *
055: * @return the name
056: */
057: String getName();
058:
059: /**
060: * Set the properties
061: *
062: * @param properties the properties
063: */
064: void setProperties(Properties properties);
065:
066: /**
067: * Get the properties
068: *
069: * @return the properties
070: */
071: Properties getProperties();
072:
073: /**
074: * Get the jndi binding of the combined connection factory
075: *
076: * @return the jndi binding
077: */
078: String getFactoryRef();
079:
080: /**
081: * Get the jndi binding of the queue connection factory
082: *
083: * @return the jndi binding
084: */
085: String getQueueFactoryRef();
086:
087: /**
088: * Get the jndi binding of the topic connection factory
089: *
090: * @return the jndi binding
091: */
092: String getTopicFactoryRef();
093:
094: /**
095: * Set the jndi binding of the combined connection factory
096: *
097: * @param newFactoryRef the jndi binding
098: */
099: void setFactoryRef(String newFactoryRef);
100:
101: /**
102: * Set the jndi binding of the queue connection factory
103: *
104: * @param newQueueFactoryRef the jndi binding
105: */
106: void setQueueFactoryRef(String newQueueFactoryRef);
107:
108: /**
109: * Set the jndi binding of the topic connection factory
110: *
111: * @param newTopicFactoryRef the jndi binding
112: */
113: void setTopicFactoryRef(String newTopicFactoryRef);
114: }
|