public interface DeployableObject
This interface is directly implemented only by the BarEntry class, which represents any deployable object that exists within a BarFile. The DeployedObject interface is a specialization of this interface that describes a specific deployed instance of a deployable object, and this is implemented in two further classes. User-written classes do not need to implement either interface.
Classes that implement this interface are able to describe lists of keywords and their values that may be associated with the deployed object. For the implementors described above, keywords and their values are embedded inside the object's file as deployed inside the broker archive file. Each keyword/value pair is found inside the contents of the deployed object's file, surrounded with an eyecatcher value. The eyecatcher begins with $MQSI, ends with MQSI$ and the keyword is separated from the value with an equals sign ('='). For example, if the following string is found within a deployed file's contents:
$MQSI apfel=strudel MQSI$
then the keyword apfel will be associated with the value
strudel for that deployed object.
Keywords should be unique within each deployed file. If a keyword is repeated, the value returned from the getKeywordValue() method will be the one associated with the earliest occurrence of the keyword in the deployed file's contents.
Leading and trailing spaces between the components of the eyecatcher are ignored, and there is an optional underscore after $MQSI. With this in mind, the case-insensitive regular expression that is used to match each keyword and value is:
\$MQSI[\s_]?[\s]*([^=]+?)[\s]*=[\s]*(.*?)[\s]*MQSI\$
The two sections of the expression in parentheses describe the keyword
and value respectively.
The keyword with the name described by VERSION_KEYWORD is embedded in compiled message flow and dictionary files by the Message Broker Toolkit, if a value has been configured in the appropriate editor. The keyword with the name described by BARNAME_KEYWORD is reserved by the broker, for describing to the IBM Integration API (CMP) the name of the broker archive file that deployed each object.
Keywords can appear anywhere in each deployed file. The most effective way of adding additional keywords to message flows is to set them as the string attribute of passthrough nodes, or in ESQL comments or strings. See the main Message Broker documentation for hints on how to effectively embed keywords in other deployable object types.
Note that when deploying artefacts that use the zip file format (e.g. .xsdzip, .jar), keywords are not extracted from the .bar file but from an optional file called META-INF/keywords.txt from within the zipped artefact.
interface
com.ibm.broker.config.proxy.DeployableObject
|
|
Responsibilities | States that implementing classes represent objects that can be deployed to execution groups. |
Internal Collaborators | None |
Change Activity: -------- ----------- ------------- ------------------------------------ Reason: Date: Originator: Comments: -------- ----------- ------------- ------------------------------------ f45166 2007-06-11 HDMPL v6.1 Release 51619.8 2008-12-16 HDMPL v7 Release (no changes)
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
BARNAME_KEYWORD
The keyword used to denote the BAR File name of a
DeployedObject.
|
static java.lang.String |
USAGE_KEYWORD
The keyword used to denote any special usage
information for the DeployedObject.
|
static java.lang.String |
VERSION_KEYWORD
The keyword used to denote the version of a
DeployedObject.
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getFileExtension()
Returns the file extension of the current
deployed object.
|
java.lang.String |
getFullName()
Returns the name of the current deployed object as it
existed in the Bar file at deployment time- including
any file extension but excluding any path information.
|
java.lang.String[] |
getKeywords()
Returns the set of keywords for this deployed object
which were found embedded in the object at deploy time.
|
java.lang.String |
getKeywordValue(java.lang.String keyword)
Returns the value of the supplied keyword.
|
java.util.Date |
getModifyTime()
Returns the time that the current deployed object was
last modified, according to the file modification date
set in the broker archive file.
|
java.lang.String |
getName()
Returns the name of the current deployed object.
|
java.lang.String |
getVersion()
Returns the value of the 'version' keyword if it
was embedded in the object at deploy time.
|
static final java.lang.String VERSION_KEYWORD
static final java.lang.String BARNAME_KEYWORD
static final java.lang.String USAGE_KEYWORD
java.lang.String getFileExtension()
java.util.Date getModifyTime()
java.lang.String getName() throws ConfigManagerProxyPropertyNotInitializedException
ConfigManagerProxyPropertyNotInitializedException
- if the value of the parameter could not be determined because
the information was not supplied from the broker before a
timeout occurred.java.lang.String getFullName() throws ConfigManagerProxyPropertyNotInitializedException
ConfigManagerProxyPropertyNotInitializedException
- if the value of the parameter could not be determined because
the information was not supplied from the broker before a
timeout occurred.java.lang.String getVersion() throws ConfigManagerProxyPropertyNotInitializedException
ConfigManagerProxyPropertyNotInitializedException
- if the value of the parameter could not be determined because
the information was not supplied from the broker before a
timeout occurred.java.lang.String[] getKeywords() throws ConfigManagerProxyPropertyNotInitializedException
See the top of this file for an overview of how to associate keywords with deployed objects.
ConfigManagerProxyPropertyNotInitializedException
- if the value of the parameter could not be determined because
the information was not supplied from the broker before a
timeout occurred.java.lang.String getKeywordValue(java.lang.String keyword) throws ConfigManagerProxyPropertyNotInitializedException
See the top of this file for an overview of how to associate keywords with deployed objects.
keyword
- The keyword to look upConfigManagerProxyPropertyNotInitializedException
- if the value of the parameter could not be determined because
the information was not supplied from the broker before a
timeout occurred.