com.ibm.broker.config.proxy
Class MQPropertyFileConfigManagerConnectionParameters

java.lang.Object
  extended by com.ibm.broker.config.proxy.MQPropertyFileConfigManagerConnectionParameters
All Implemented Interfaces:
ConfigManagerConnectionParameters

public class MQPropertyFileConfigManagerConnectionParameters
extends java.lang.Object
implements ConfigManagerConnectionParameters

Provides the connection parameters to a Configuration Manager by reading a properties file that contains the hostname, queue manager, port and security exit information. The class is able to parse *.configmgr files (as created in the toolkit) as well as the mqsicfgutil.ini format.

There are two ways of connecting to a Configuration Manager using this class. The preferred method is by specifying the location of a *.configmgr file:

     ConfigManagerConnectionParameters cmcp = new
         MQPropertyFileConfigManagerConnectionParameters("cm1.configmgr");
     ConfigManagerProxy.getInstance(cmcp);
 
However, the empty constructor may also be used, which will attempt to connect to a Configuration Manager using the information in the file mqsicfgutil.ini. This method is not recommended for new applications.
    ConfigManagerProxy.getInstance(
        new MQPropertyFileConfigManagerConnectionParameters() );
 

NOTE: As the .configmgr file is XML, an XML parser is needs to be available on the CLASSPATH in order to load such a file. Configuration Manager Proxy applications using a v1.3-based JRE will need to manually add such a parser to the CLASSPATH in order to use this class.

class com.ibm.broker.config.proxy.MQPropertyFileConfigManagerConnectionParameters implements com.ibm.broker.config.proxy.ConfigManagerConnectionParameters

Responsibilities Represents a set of connection parameters to a WebSphere MQ based Configuration Manager.
Collaborators MQConfigManagerConnectionParameters

 Change Activity:
 -------- ----------- -------------   ------------------------------------
 Reason:  Date:       Originator:     Comments:
 -------- ----------- -------------   ------------------------------------
 25103.7  2004-03-24  HDMPL           v6 Release
 47371    2007-07-30  HDMPL           v6.1 Release

 

Version:
Config/com/ibm/broker/config/proxy/MQPropertyFileConfigManagerConnectionParameters.java, CMP, S000 1.23

Constructor Summary
MQPropertyFileConfigManagerConnectionParameters()
          Constructs a new instance that refers to connection properties in the file 'mqsicfgutil.ini' in the JRE's current directory.
MQPropertyFileConfigManagerConnectionParameters(java.lang.String filename)
          Constructs a new instance that refers to connection properties in the file with the supplied fully qualified name.
 
Method Summary
 void disableDomainAwareness()
          Prevents Windows domain awareness support from initializing for this instance.
static void disableMQJavaClientTracing()
          Disables WebSphere MQ Java Client tracing
static void enableMQJavaClientTracing(java.lang.String filename)
          Sends level 5 WebSphere MQ Java Client tracing to the specified file.
 java.lang.String generateUniqueDeployID()
          Sets the deploy ID for the current connection to a unique String and returns it.
 java.lang.String getDeployID()
          Returns the string used to uniquely map each deployment request back to this ConfigManagerProxy connection.
 java.lang.String getHostname()
          Returns the Configuration Manager's IP address or host name as stored in the properties file.
 int getPort()
          Returns the Configuration Manager's port as stored in the properties file.
 com.ibm.broker.config.common.CommsMessageSerializer getProtocol()
          This method is required by the Configuration Manager Proxy and should not be called by user applications.
 java.lang.String getQueueManager()
          Returns the Configuration Manager's queue manager as stored in the properties file.
 com.ibm.broker.config.proxy.Receiver getReceiver()
          This method is required by the Configuration Manager Proxy and should not be called by user applications.
 java.lang.String getSecExit()
          Returns the Configuration Manager's security exit as stored in the properties file.
 java.net.URL getSecExitURL()
          Returns the Configuration Manager's security exit URL as stored in the properties file.
 com.ibm.broker.config.proxy.Sender getSender()
          This method is required by the Configuration Manager Proxy and should not be called by user applications.
 java.lang.String getSessionIDString()
          Returns a String representation of the Session ID for this MQ Connection.
 java.lang.String getSSLCipherSuite()
          Returns the Configuration Manager's SSL cipher suite as stored in the properties file.
 java.lang.String getSSLCRLLDAPList()
          Returns the Configuration Manager's SSL CRL LDAP list as stored in the properties file.
 java.lang.String getSSLKeyStore()
          Returns the Configuration Manager's SSL key store as stored in the properties file.
 java.lang.String getSSLPeerName()
          Returns the Configuration Manager's SSL peer name as stored in the properties file.
 java.lang.String getSSLTrustStore()
          Returns the Configuration Manager's SSL trust store as stored in the properties file.
 java.lang.String getUserID()
          Crosses the JNI to return the correctly formatted MQSeries userId & domain.
 void setAdvancedConnectionParameters(java.lang.String channelName, java.lang.String requestQueueName, java.lang.String responseQueueName, int maxRetries, int retryWaitMillis, java.lang.String deployID, byte[] sessionID)
          Sets the 'advanced' options for a connection to MQ.
 java.lang.String toString()
          For diagnostic information, this method displays the current connection parameters.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MQPropertyFileConfigManagerConnectionParameters

public MQPropertyFileConfigManagerConnectionParameters(java.lang.String filename)
Constructs a new instance that refers to connection properties in the file with the supplied fully qualified name. If the file cannot be read for whatever reason, the call to ConfigManagerProxy.getInstance() will throw a ConfigManagerProxyLoggedException.

Parameters:
filename - Path and file name of the parameter file, which must be in the *.configmgr format. Supplying a null or blank parameter here has the same effect as calling the empty constructor.

MQPropertyFileConfigManagerConnectionParameters

public MQPropertyFileConfigManagerConnectionParameters()
Constructs a new instance that refers to connection properties in the file 'mqsicfgutil.ini' in the JRE's current directory. If the file cannot be read for whatever reason, the call to ConfigManagerProxy.getInstance() will throw a ConfigManagerProxyLoggedException.

Method Detail

getHostname

public java.lang.String getHostname()
Returns the Configuration Manager's IP address or host name as stored in the properties file.

Returns:
String hostname

getPort

public int getPort()
Returns the Configuration Manager's port as stored in the properties file. If no port was specified, the default value of 1414 will be returned.

Returns:
int port

getQueueManager

public java.lang.String getQueueManager()
Returns the Configuration Manager's queue manager as stored in the properties file.

Returns:
String Queue Manager

getSecExit

public java.lang.String getSecExit()
Returns the Configuration Manager's security exit as stored in the properties file. If no security exit is defined, null or the empty string is returned.

Returns:
String Security Exit

getSecExitURL

public java.net.URL getSecExitURL()
Returns the Configuration Manager's security exit URL as stored in the properties file. If no security exit URL was defined, or an invalid security exit JAR was defined, null is returned.

Returns:
URL Security Exit

getSSLCipherSuite

public java.lang.String getSSLCipherSuite()
Returns the Configuration Manager's SSL cipher suite as stored in the properties file. If this parameter is not defined for this connection, null or the empty string is returned.

Returns:
String SSL cipher suite

getSSLCRLLDAPList

public java.lang.String getSSLCRLLDAPList()
Returns the Configuration Manager's SSL CRL LDAP list as stored in the properties file. If this parameter is not defined for this connection, null or the empty string is returned.

Returns:
String SSL CRL LDAP list

getSSLKeyStore

public java.lang.String getSSLKeyStore()
Returns the Configuration Manager's SSL key store as stored in the properties file. If this parameter is not defined for this connection, null or the empty string is returned.

Returns:
String SSL key store

getSSLPeerName

public java.lang.String getSSLPeerName()
Returns the Configuration Manager's SSL peer name as stored in the properties file. If this parameter is not defined for this connection, null or the empty string is returned.

Returns:
String SSL peer name

getSSLTrustStore

public java.lang.String getSSLTrustStore()
Returns the Configuration Manager's SSL trust store as stored in the properties file. If this parameter is not defined for this connection, null or the empty string is returned.

Returns:
String SSL trust store

setAdvancedConnectionParameters

public void setAdvancedConnectionParameters(java.lang.String channelName,
                                            java.lang.String requestQueueName,
                                            java.lang.String responseQueueName,
                                            int maxRetries,
                                            int retryWaitMillis,
                                            java.lang.String deployID,
                                            byte[] sessionID)
Sets the 'advanced' options for a connection to MQ.

Parameters:
channelName - The name of the MQSeries Server Connection channel to use. If this is set to null, the existing value will be used.
requestQueueName - The name of the MQSeries queue to which messages will be put. If this is set to null, the existing value will be used.
responseQueueName - The name of the MQSeries queue from which messages will be got. If this is set to null, the existing value will be used.
maxRetries - The number of times the MQSender should retry after consecutive failures. If this is set to -1, the existing value will be used.
retryWaitMillis - The time (in milliseconds) the MQSender should wait inbetween retries. If this is set to -1, the existing value will be used.
deployID - The String used to map deployment requests uniquely back to this connection. If this is set to null the existing value will be used.
sessionID - A byte array containing an identifier that uniquely identifies this connection to the Configuration Manager. This will be used as a correlId, and so should be no longer than 24 bytes. If this is set to null, the existing value will be used.

getSender

public com.ibm.broker.config.proxy.Sender getSender()
                                             throws ConfigManagerProxyLoggedException
This method is required by the Configuration Manager Proxy and should not be called by user applications. Returns an instance of the Sender associated with this type.

Specified by:
getSender in interface ConfigManagerConnectionParameters
Returns:
Sender an object capable of transmitting a byte array to a Configuration Manager.
Throws:
ConfigManagerProxyLoggedException - if the security exit could not be instantiated

getReceiver

public com.ibm.broker.config.proxy.Receiver getReceiver()
                                                 throws ConfigManagerProxyLoggedException
This method is required by the Configuration Manager Proxy and should not be called by user applications. Returns an instance of the Receiver associated with this type.

Specified by:
getReceiver in interface ConfigManagerConnectionParameters
Returns:
Sender an object capable of receiving byte arrays from a Config Manager.
Throws:
ConfigManagerProxyLoggedException - if the security exit could not be instantiated

getProtocol

public com.ibm.broker.config.common.CommsMessageSerializer getProtocol()
This method is required by the Configuration Manager Proxy and should not be called by user applications. Returns an instance of the wire protocol associated with this connection.

Specified by:
getProtocol in interface ConfigManagerConnectionParameters
Returns:
CommsMessageSerializer an object capable of turning Comms Messages into byte streams.

toString

public java.lang.String toString()
For diagnostic information, this method displays the current connection parameters.

Overrides:
toString in class java.lang.Object

getDeployID

public java.lang.String getDeployID()
Returns the string used to uniquely map each deployment request back to this ConfigManagerProxy connection. Most of the time the current userid is a sufficient deployID, as the field is only used to get back the correct log records related to each deployment.

Specified by:
getDeployID in interface ConfigManagerConnectionParameters
Returns:
String Deployment identifier

disableDomainAwareness

public void disableDomainAwareness()
Prevents Windows domain awareness support from initializing for this instance. If disabled, the userid will be obtained from the user.name property in the JVM. If required, this method must be called before ConfigManagerProxy.getInstance().


getUserID

public java.lang.String getUserID()
Crosses the JNI to return the correctly formatted MQSeries userId & domain. If domain awareness has been disabled, or if the LogonInfo classes or DLL could not be loaded, the value of the system property 'user.name' will be returned.

Specified by:
getUserID in interface ConfigManagerConnectionParameters
Returns:
String userId (and possibly domain, using '@' as a separator).

enableMQJavaClientTracing

public static final void enableMQJavaClientTracing(java.lang.String filename)
Sends level 5 WebSphere MQ Java Client tracing to the specified file.

Parameters:
filename - of the trace file

disableMQJavaClientTracing

public static final void disableMQJavaClientTracing()
Disables WebSphere MQ Java Client tracing


getSessionIDString

public java.lang.String getSessionIDString()
Returns a String representation of the Session ID for this MQ Connection.

Returns:
String representation of the session ID.

generateUniqueDeployID

public java.lang.String generateUniqueDeployID()
Sets the deploy ID for the current connection to a unique String and returns it.

Returns:
String the generated deploy ID