com.ibm.broker.config.proxy

Class MessageFlowDependency

  • java.lang.Object
    • com.ibm.broker.config.proxy.MessageFlowDependency
  • All Implemented Interfaces:
    DeployableObject, DeployedObject


    public class MessageFlowDependency
    extends java.lang.Object
    implements DeployedObject
    Represents an object deployed to an execution group that is required in order for it to process message flow logic.

    In order to use MessageFlowDependency objects, applications must first obtain handles to them. Here is an example of how to do this:

         BrokerProxy b = BrokerProxy.getInstance(
             new IntegrationNodeConnectionParameters("localhost", 4414)); 
         ExecutionGroupProxy e = b.getExecutionGroupByName("default");
         MessageFlowDependency mfd = e.getMessageFlowDependencyByName("mrm.dictionary");
     
    Unlike MessageFlowProxy and other AdministeredObject children, MessageFlowDependency is a short-lived class. Instances are generated on demand to represent data logically owned by, and updated in, the ExecutionGroupProxy object. This means that the information described in each MessageFlowDependency does not get updated once it has been initially populated, and any changes to dependencies are sent to AdministeredObjectListener instances registered on the ExecutionGroupProxy object.

    com.ibm.broker.config.proxy.MessageFlowDependency implements com.ibm.broker.config.proxy.DeployedObject

    Responsibilities Represents an object deployed to an execution group that is required in order for it to process message flow logic.
    Internal Collaborators None
    
     Change Activity:
     -------- ----------- -------------   ------------------------------------
     Reason:  Date:       Originator:     Comments:
     -------- ----------- -------------   ------------------------------------
     25103.8  2004-03-18  HDMPL           v6 Release
     44739.7  2007-07-30  HDMPL           v6.1 Release
     51619.8  2008-12-16  HDMPL           v7 Release
     80006    2011-05-13  HDCAB           v8 release:                                        
                                             Added equals() method.
    
     
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      boolean equals(java.lang.Object obj)
      Compares this MessageFlowDependency with the Object passed in.
      boolean fullNameMatches(java.lang.String fileName)
      Tests if the name of this deployed object matches the fileName passed in.
      java.lang.String getBARFileName()
      Returns the name of the Bar file that was used to deploy the dependency to the execution group.
      java.util.Properties getDeployProperties()
      Returns a list of the properties associated with the deployment of this dependency.
      java.util.Date getDeployTime()
      Returns the time that the current dependency was last deployed.
      ExecutionGroupProxy getExecutionGroup()
      Returns a reference to the execution group on which this dependency was deployed.
      java.lang.String getFileExtension()
      Returns the file extension of the current dependency.
      java.lang.String getFullName()
      Returns the name of the current dependency 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 dependency 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 dependency was last modified, according to the file modification date set in the Bar file.
      java.lang.String getName()
      Returns the name of the current dependency.
      DeployedObjectGroupProxy getParent()
      Returns a reference to the execution group, application or library on which this dependency was deployed.
      java.lang.String getVersion()
      Returns the version string for this dependency as it was set at deploy time.
      java.lang.String toString()
      Returns a string representation of the object.
      • Methods inherited from class java.lang.Object

        getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Method Detail

      • getFileExtension

        public java.lang.String getFileExtension()
        Returns the file extension of the current dependency. The String returned is taken from the name of the file as it existed in the BAR file at deployment time- from the first character after the last period ('.') to the end of the filename.
        Specified by:
        getFileExtension in interface DeployableObject
        Returns:
        String file extension, or the empty string if the file did not have any extension.
      • getDeployTime

        public java.util.Date getDeployTime()
        Returns the time that the current dependency was last deployed.
        Specified by:
        getDeployTime in interface DeployedObject
        Returns:
        Date the time of the most recent deployment, or null if the information is not available.
      • getModifyTime

        public java.util.Date getModifyTime()
        Returns the time that the current dependency was last modified, according to the file modification date set in the Bar file.
        Specified by:
        getModifyTime in interface DeployableObject
        Returns:
        Date the time of the most last modification, or null if the information is not available.
      • fullNameMatches

        public boolean fullNameMatches(java.lang.String fileName)
                                throws ConfigManagerProxyPropertyNotInitializedException
        Tests if the name of this deployed object matches the fileName passed in. This method returns true if the deployed object name matches either with the source extension or the compiled resource extension
        Specified by:
        fullNameMatches in interface DeployedObject
        Returns:
        boolean true if the fileName matches the deployed resource name
        Throws:
        ConfigManagerProxyPropertyNotInitializedException - if the parent object is not immediately available and has to be requested from the broker, but the request could not be sent to the broker.
      • getDeployProperties

        public java.util.Properties getDeployProperties()
                                                 throws ConfigManagerProxyPropertyNotInitializedException
        Returns a list of the properties associated with the deployment of this dependency.

        This method will pause until the object has received at least one update from the broker. If an update is not received before the timeout specified in BrokerProxy.setRetryCharacteristics() is reached, AdministeredObject.hasBeenPopulatedByBroker() will return false and the returned Properties object will be null.

        Specified by:
        getDeployProperties in interface DeployedObject
        Returns:
        Properties where each key is a deploy related property with its associated value. Keywords are not returned as part of the returned properties. Returns null if no deploy related properties are found.
        Throws:
        ConfigManagerProxyPropertyNotInitializedException
      • getParent

        public DeployedObjectGroupProxy getParent()
        Returns a reference to the execution group, application or library on which this dependency was deployed.
        Returns:
        DeployedObjectGroupProxy
      • toString

        public java.lang.String toString()
        Returns a string representation of the object.
        Overrides:
        toString in class java.lang.Object
        Returns:
        String
      • getBARFileName

        public java.lang.String getBARFileName()
                                        throws ConfigManagerProxyPropertyNotInitializedException
        Returns the name of the Bar file that was used to deploy the dependency to the execution group. This method will return null if the Bar file was deployed by specifying an InputStream parameter to ExecutionGroupProxy.deploy() and a valid Bar file label was not supplied.
        Specified by:
        getBARFileName in interface DeployedObject
        Returns:
        String name of the BAR file that deployed the object
        Throws:
        ConfigManagerProxyPropertyNotInitializedException - if the Bar file name could not be determined because the information was not supplied from the broker before a timeout occurred.
      • equals

        public boolean equals(java.lang.Object obj)
        Compares this MessageFlowDependency with the Object passed in.

        Two instances of a MessageFlowDependency are equal if and only if they are both MessageFlowDependencies and they have the same name and AdministeredObject parent.

        Overrides:
        equals in class java.lang.Object
        Parameters:
        obj - - the object that is to be compared with this one.
        Returns:
        true if the two MessageFlowDependency objects are equal