TIBCO Enterprise Message Service
Version 4.3.0

com.tibco.tibjms.naming
Class TibjmsContext

java.lang.Object
  extended bycom.tibco.tibjms.naming.TibjmsContext
All Implemented Interfaces:
javax.naming.Context, javax.naming.Referenceable

public class TibjmsContext
extends java.lang.Object
implements javax.naming.Context, javax.naming.Referenceable

Implements the Context interface for lookups of information stored in the JNDI supported by TIBCO Enterprise Message Service.

TIBCO Enterprise Message Service implements proprietary JNDI which can be used by JMS clients to use JNDI lookup calls in order to load ConnectionFactories and Destinations. Notice that this class supports only lookup() methods and does not support bind(), unbind(), list() and other methods used to store objects into JNDI store or perform complex lookup operations.

Administered objects can be placed into the server JNDI configuration using the TIBCO Enterprise Message Service Administration Tool or from a Java program using TIBCO Enterprise Message Service Administration API.

This class allows to use secure SSL connection to the JMS server while performing JNDI lookups. To set up SSL connection to the JNDI backend supported by the server, the application should set appropriate SSL properties into the environment used to create this Context. Description of SSL properties is provided with this class but more detailed description of possible values and other information is provided with the com.tibco.tibjms.TibjmsSSL class.

This class also allows to perform fault-tolerant connection to JNDI backend. This means that JMS application may specify several server URLs in the PROVIDER_URL property.


Field Summary
static java.lang.String PROPERTY_URL_LIST
          Constant that holds the name of the environment property for specifying multiple server URL's to provide fault tolerance on JNDI lookups.
static java.lang.String SECURITY_PROTOCOL
          Constant that holds the name of the environment property for specifying the security protocol to use in Tibjms JNDI lookups.
static java.lang.String SSL_AUTH_ONLY
          Constant that holds the name of SSL property specifying if client should use SSL for authentication only.
static java.lang.String SSL_CIPHER_SUITES
          Constant that holds the name of SSL property specifying the set of cipher suites to be used by the SSL connection in Tibjms JNDI lookups.
static java.lang.String SSL_DEBUG_TRACE
          Constant that holds the name of SSL property specifying if client debug trace is required in Tibjms JNDI lookups.
static java.lang.String SSL_ENABLE_VERIFY_HOST
          Constant that holds the name of SSL property specifying if client should verify the common name in the server certificate in Tibjms JNDI lookups.
static java.lang.String SSL_ENABLE_VERIFY_HOST_NAME
          Constant that holds the name of SSL property specifying if client should verify the common name in the server certificate in Tibjms JNDI lookups.
static java.lang.String SSL_EXPECTED_HOST_NAME
          Constant that holds the name of SSL property specifying the common name in the server certificate in Tibjms JNDI lookups.
static java.lang.String SSL_HOST_NAME_VERIFIER
          Constant that holds the name of SSL property specifying the custom host name verifier in Tibjms JNDI lookups.
static java.lang.String SSL_IDENTITY
          Constant that holds the name of SSL property specifying the client-side identity in Tibjms JNDI lookups.
static java.lang.String SSL_IDENTITY_ENCODING
          Constant that holds the name of SSL property specifying the encoding of the data presented by IDENTITY property in Tibjms JNDI lookups.
static java.lang.String SSL_ISSUER_CERTIFICATES
          Constant that holds the name of SSL property specifying the additional issuer certificates for the client certificate in Tibjms JNDI lookups.
static java.lang.String SSL_PASSWORD
          Constant that holds the name of SSL property specifying the password for the private key or the identity store in Tibjms JNDI lookups.
static java.lang.String SSL_PRIVATE_KEY
          Constant that holds the name of SSL property specifying the private key for the client certificate in Tibjms JNDI lookups.
static java.lang.String SSL_PRIVATE_KEY_ENCODING
          Constant that holds the name of SSL property specifying the encoding of the data presented by PRIVATE_KEY property in Tibjms JNDI lookups.
static java.lang.String SSL_RENEGOTIATE_INTERVAL
          Deprecated. This property is no longer supported, and may be removed from future versions of EMS.
static java.lang.String SSL_RENEGOTIATE_SIZE
          Deprecated. This property is no longer supported, and may be removed from future versions of EMS.
static java.lang.String SSL_TRACE
          Constant that holds the name of SSL property specifying if client trace is required in Tibjms JNDI lookups.
static java.lang.String SSL_TRUSTED_CERTIFICATES
          Constant that holds the name of SSL property specifying the set of trusted certificates in Tibjms JNDI lookups.
static java.lang.String SSL_VENDOR
          Constant that holds the name of SSL property specifying the SSL vendor to be used in Tibjms JNDI lookups.
 
Fields inherited from interface javax.naming.Context
APPLET, AUTHORITATIVE, BATCHSIZE, DNS_URL, INITIAL_CONTEXT_FACTORY, LANGUAGE, OBJECT_FACTORIES, PROVIDER_URL, REFERRAL, SECURITY_AUTHENTICATION, SECURITY_CREDENTIALS, SECURITY_PRINCIPAL, STATE_FACTORIES, URL_PKG_PREFIXES
 
Method Summary
 java.lang.Object addToEnvironment(java.lang.String propName, java.lang.Object propValue)
           
 void bind(javax.naming.Name name, java.lang.Object value)
           
 void bind(java.lang.String name, java.lang.Object value)
           
 void close()
           
 javax.naming.Name composeName(javax.naming.Name name, javax.naming.Name prefix)
           
 java.lang.String composeName(java.lang.String name, java.lang.String prefix)
           
 javax.naming.Context createSubcontext(javax.naming.Name name)
           
 javax.naming.Context createSubcontext(java.lang.String name)
           
 void destroySubcontext(javax.naming.Name name)
           
 void destroySubcontext(java.lang.String name)
           
 java.util.Hashtable getEnvironment()
           
 java.lang.String getNameInNamespace()
           
 javax.naming.NameParser getNameParser(javax.naming.Name name)
           
 javax.naming.NameParser getNameParser(java.lang.String name)
           
 javax.naming.Reference getReference()
           
 javax.naming.NamingEnumeration list(javax.naming.Name name)
           
 javax.naming.NamingEnumeration list(java.lang.String name)
           
 javax.naming.NamingEnumeration listBindings(javax.naming.Name name)
           
 javax.naming.NamingEnumeration listBindings(java.lang.String name)
           
 java.lang.Object lookup(javax.naming.Name name)
           
 java.lang.Object lookup(java.lang.String nameString)
           
 java.lang.Object lookupLink(javax.naming.Name name)
           
 java.lang.Object lookupLink(java.lang.String name)
           
 void rebind(javax.naming.Name name, java.lang.Object value)
           
 void rebind(java.lang.String name, java.lang.Object value)
           
 java.lang.Object removeFromEnvironment(java.lang.String propName)
           
 void rename(javax.naming.Name oldName, javax.naming.Name newName)
           
 void rename(java.lang.String oldName, java.lang.String newName)
           
 void unbind(javax.naming.Name name)
           
 void unbind(java.lang.String name)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PROPERTY_URL_LIST

public static final java.lang.String PROPERTY_URL_LIST
Constant that holds the name of the environment property for specifying multiple server URL's to provide fault tolerance on JNDI lookups. The value can be a Vector or a String of comma separated URL's.

This name is defined as "com.tibco.tibjms.naming.url.list".

See Also:
Constant Field Values

SECURITY_PROTOCOL

public static final java.lang.String SECURITY_PROTOCOL
Constant that holds the name of the environment property for specifying the security protocol to use in Tibjms JNDI lookups. The only value currently recognized is the String "ssl", therefore, this property acts as a flag to turn ssl encryption on or off in JNDI lookups.

This name is defined as "com.tibco.tibjms.naming.security_protocol".

See Also:
Constant Field Values

SSL_VENDOR

public static final java.lang.String SSL_VENDOR
Constant that holds the name of SSL property specifying the SSL vendor to be used in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_vendor".

See Also:
TibjmsSSL.VENDOR, Constant Field Values

SSL_TRACE

public static final java.lang.String SSL_TRACE
Constant that holds the name of SSL property specifying if client trace is required in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_trace".

See Also:
TibjmsSSL.TRACE, Constant Field Values

SSL_DEBUG_TRACE

public static final java.lang.String SSL_DEBUG_TRACE
Constant that holds the name of SSL property specifying if client debug trace is required in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_debug_trace".

See Also:
TibjmsSSL.DEBUG_TRACE, Constant Field Values

SSL_ENABLE_VERIFY_HOST

public static final java.lang.String SSL_ENABLE_VERIFY_HOST
Constant that holds the name of SSL property specifying if client should verify the common name in the server certificate in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_enable_verify_host".

See Also:
TibjmsSSL.ENABLE_VERIFY_HOST, Constant Field Values

SSL_ENABLE_VERIFY_HOST_NAME

public static final java.lang.String SSL_ENABLE_VERIFY_HOST_NAME
Constant that holds the name of SSL property specifying if client should verify the common name in the server certificate in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_enable_verify_hostname".

See Also:
TibjmsSSL.ENABLE_VERIFY_HOST_NAME, Constant Field Values

SSL_EXPECTED_HOST_NAME

public static final java.lang.String SSL_EXPECTED_HOST_NAME
Constant that holds the name of SSL property specifying the common name in the server certificate in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_expected_hostname".

See Also:
TibjmsSSL.EXPECTED_HOST_NAME, Constant Field Values

SSL_AUTH_ONLY

public static final java.lang.String SSL_AUTH_ONLY
Constant that holds the name of SSL property specifying if client should use SSL for authentication only.
This name is defined as "com.tibco.tibjms.naming.ssl_auth_only".

See Also:
Constant Field Values

SSL_TRUSTED_CERTIFICATES

public static final java.lang.String SSL_TRUSTED_CERTIFICATES
Constant that holds the name of SSL property specifying the set of trusted certificates in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_trusted_certs".

See Also:
TibjmsSSL.TRUSTED_CERTIFICATES, Constant Field Values

SSL_HOST_NAME_VERIFIER

public static final java.lang.String SSL_HOST_NAME_VERIFIER
Constant that holds the name of SSL property specifying the custom host name verifier in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_hostname_verifier".

See Also:
TibjmsSSL.HOST_NAME_VERIFIER, Constant Field Values

SSL_IDENTITY

public static final java.lang.String SSL_IDENTITY
Constant that holds the name of SSL property specifying the client-side identity in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_identity".

See Also:
TibjmsSSL.IDENTITY, Constant Field Values

SSL_IDENTITY_ENCODING

public static final java.lang.String SSL_IDENTITY_ENCODING
Constant that holds the name of SSL property specifying the encoding of the data presented by IDENTITY property in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_identity_encoding".

See Also:
TibjmsSSL.IDENTITY_ENCODING, Constant Field Values

SSL_ISSUER_CERTIFICATES

public static final java.lang.String SSL_ISSUER_CERTIFICATES
Constant that holds the name of SSL property specifying the additional issuer certificates for the client certificate in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_issuer_certs".

See Also:
TibjmsSSL.ISSUER_CERTIFICATES, Constant Field Values

SSL_PRIVATE_KEY

public static final java.lang.String SSL_PRIVATE_KEY
Constant that holds the name of SSL property specifying the private key for the client certificate in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_private_key".

See Also:
TibjmsSSL.PRIVATE_KEY, Constant Field Values

SSL_PRIVATE_KEY_ENCODING

public static final java.lang.String SSL_PRIVATE_KEY_ENCODING
Constant that holds the name of SSL property specifying the encoding of the data presented by PRIVATE_KEY property in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_private_key_encoding".

See Also:
TibjmsSSL.PRIVATE_KEY_ENCODING, Constant Field Values

SSL_PASSWORD

public static final java.lang.String SSL_PASSWORD
Constant that holds the name of SSL property specifying the password for the private key or the identity store in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_password".

See Also:
TibjmsSSL.PASSWORD, Constant Field Values

SSL_RENEGOTIATE_SIZE

public static final java.lang.String SSL_RENEGOTIATE_SIZE
Deprecated. This property is no longer supported, and may be removed from future versions of EMS.

Constant that holds the name of SSL property specifying the renegotiation size in bytes in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_renegotiate_size".

See Also:
TibjmsSSL.RENEGOTIATE_SIZE, Constant Field Values

SSL_RENEGOTIATE_INTERVAL

public static final java.lang.String SSL_RENEGOTIATE_INTERVAL
Deprecated. This property is no longer supported, and may be removed from future versions of EMS.

Constant that holds the name of SSL property specifying the renegotiation interval in milliseconds in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_renegotiate_interval".

See Also:
TibjmsSSL.RENEGOTIATE_INTERVAL, Constant Field Values

SSL_CIPHER_SUITES

public static final java.lang.String SSL_CIPHER_SUITES
Constant that holds the name of SSL property specifying the set of cipher suites to be used by the SSL connection in Tibjms JNDI lookups.
This name is defined as "com.tibco.tibjms.naming.ssl_cipher_suites".

See Also:
TibjmsSSL.CIPHER_SUITES, Constant Field Values
Method Detail

getReference

public javax.naming.Reference getReference()
                                    throws javax.naming.NamingException
Specified by:
getReference in interface javax.naming.Referenceable
Throws:
javax.naming.NamingException

addToEnvironment

public java.lang.Object addToEnvironment(java.lang.String propName,
                                         java.lang.Object propValue)
                                  throws javax.naming.NamingException
Specified by:
addToEnvironment in interface javax.naming.Context
Throws:
javax.naming.NamingException

getEnvironment

public java.util.Hashtable getEnvironment()
                                   throws javax.naming.NamingException
Specified by:
getEnvironment in interface javax.naming.Context
Throws:
javax.naming.NamingException

removeFromEnvironment

public java.lang.Object removeFromEnvironment(java.lang.String propName)
                                       throws javax.naming.NamingException
Specified by:
removeFromEnvironment in interface javax.naming.Context
Throws:
javax.naming.NamingException

composeName

public javax.naming.Name composeName(javax.naming.Name name,
                                     javax.naming.Name prefix)
                              throws javax.naming.NamingException
Specified by:
composeName in interface javax.naming.Context
Throws:
javax.naming.NamingException

composeName

public java.lang.String composeName(java.lang.String name,
                                    java.lang.String prefix)
                             throws javax.naming.NamingException
Specified by:
composeName in interface javax.naming.Context
Throws:
javax.naming.NamingException

getNameInNamespace

public java.lang.String getNameInNamespace()
                                    throws javax.naming.NamingException
Specified by:
getNameInNamespace in interface javax.naming.Context
Throws:
javax.naming.NamingException

getNameParser

public javax.naming.NameParser getNameParser(java.lang.String name)
                                      throws javax.naming.NamingException
Specified by:
getNameParser in interface javax.naming.Context
Throws:
javax.naming.NamingException

getNameParser

public javax.naming.NameParser getNameParser(javax.naming.Name name)
                                      throws javax.naming.NamingException
Specified by:
getNameParser in interface javax.naming.Context
Throws:
javax.naming.NamingException

list

public javax.naming.NamingEnumeration list(java.lang.String name)
                                    throws javax.naming.NamingException
Specified by:
list in interface javax.naming.Context
Throws:
javax.naming.NamingException

lookup

public java.lang.Object lookup(java.lang.String nameString)
                        throws javax.naming.NamingException
Specified by:
lookup in interface javax.naming.Context
Throws:
javax.naming.NamingException

lookup

public java.lang.Object lookup(javax.naming.Name name)
                        throws javax.naming.NamingException
Specified by:
lookup in interface javax.naming.Context
Throws:
javax.naming.NamingException

lookupLink

public java.lang.Object lookupLink(java.lang.String name)
                            throws javax.naming.NamingException
Specified by:
lookupLink in interface javax.naming.Context
Throws:
javax.naming.NamingException

lookupLink

public java.lang.Object lookupLink(javax.naming.Name name)
                            throws javax.naming.NamingException
Specified by:
lookupLink in interface javax.naming.Context
Throws:
javax.naming.NamingException

close

public void close()
           throws javax.naming.NamingException
Specified by:
close in interface javax.naming.Context
Throws:
javax.naming.NamingException

list

public javax.naming.NamingEnumeration list(javax.naming.Name name)
                                    throws javax.naming.NamingException
Specified by:
list in interface javax.naming.Context
Throws:
javax.naming.NamingException

listBindings

public javax.naming.NamingEnumeration listBindings(java.lang.String name)
                                            throws javax.naming.NamingException
Specified by:
listBindings in interface javax.naming.Context
Throws:
javax.naming.NamingException

listBindings

public javax.naming.NamingEnumeration listBindings(javax.naming.Name name)
                                            throws javax.naming.NamingException
Specified by:
listBindings in interface javax.naming.Context
Throws:
javax.naming.NamingException

createSubcontext

public javax.naming.Context createSubcontext(javax.naming.Name name)
                                      throws javax.naming.NamingException
Specified by:
createSubcontext in interface javax.naming.Context
Throws:
javax.naming.NamingException

createSubcontext

public javax.naming.Context createSubcontext(java.lang.String name)
                                      throws javax.naming.NamingException
Specified by:
createSubcontext in interface javax.naming.Context
Throws:
javax.naming.NamingException

destroySubcontext

public void destroySubcontext(javax.naming.Name name)
                       throws javax.naming.NamingException
Specified by:
destroySubcontext in interface javax.naming.Context
Throws:
javax.naming.NamingException

destroySubcontext

public void destroySubcontext(java.lang.String name)
                       throws javax.naming.NamingException
Specified by:
destroySubcontext in interface javax.naming.Context
Throws:
javax.naming.NamingException

bind

public void bind(java.lang.String name,
                 java.lang.Object value)
          throws javax.naming.NamingException
Specified by:
bind in interface javax.naming.Context
Throws:
javax.naming.NamingException

bind

public void bind(javax.naming.Name name,
                 java.lang.Object value)
          throws javax.naming.NamingException
Specified by:
bind in interface javax.naming.Context
Throws:
javax.naming.NamingException

rebind

public void rebind(java.lang.String name,
                   java.lang.Object value)
            throws javax.naming.NamingException
Specified by:
rebind in interface javax.naming.Context
Throws:
javax.naming.NamingException

rebind

public void rebind(javax.naming.Name name,
                   java.lang.Object value)
            throws javax.naming.NamingException
Specified by:
rebind in interface javax.naming.Context
Throws:
javax.naming.NamingException

rename

public void rename(java.lang.String oldName,
                   java.lang.String newName)
            throws javax.naming.NamingException
Specified by:
rename in interface javax.naming.Context
Throws:
javax.naming.NamingException

rename

public void rename(javax.naming.Name oldName,
                   javax.naming.Name newName)
            throws javax.naming.NamingException
Specified by:
rename in interface javax.naming.Context
Throws:
javax.naming.NamingException

unbind

public void unbind(java.lang.String name)
            throws javax.naming.NamingException
Specified by:
unbind in interface javax.naming.Context
Throws:
javax.naming.NamingException

unbind

public void unbind(javax.naming.Name name)
            throws javax.naming.NamingException
Specified by:
unbind in interface javax.naming.Context
Throws:
javax.naming.NamingException

TIBCO Enterprise Message Service
Version 4.3.0

Copyright © TIBCO Software Inc. All rights reserved