Interface OrchConfigurator<InputType>

All Known Implementing Classes:
OrchConfiguratorBase, XmlOrchConfigurator

public interface OrchConfigurator<InputType>
Reads the configuration of the Orchestration possibly from multiple sources and makes it available for anyone to use it. The signatures support a notion of flow Id which is considered optional. If the entire application is considered as one flow then flow Id is not required. (i.e. every request starts with the same command and culminates in the correct sequence of commands being executed)

However, if different flows in the application start with different commands then the notion of flow Id can be useful.

Author:
Raja Shankar Kolluru
  • Method Details

    • obtainFirstCommand

      Command<InputType> obtainFirstCommand(String flowId)
      Obtain the first command for the given flow Id. Then the execute method can be called to obtain the results.
      Parameters:
      flowId - is the name of the flow for which the first command is to be obtained
      Returns:
      the first command for the passed flow Id.
    • obtainFirstCommandInfo

      CommandDescriptor<InputType> obtainFirstCommandInfo(String flowId)
      This method is useful for insrumentation purposes.
      Parameters:
      flowId - is the name of the flow for which the first command info is to be obtained
      Returns:
      the meta data about the flow.
    • obtainCommandInfo

      CommandDescriptor<InputType> obtainCommandInfo(String flowId, String commandId)
      This method is useful for insrumentation purposes.
      Parameters:
      flowId - is the name of the flow to which the command belongs
      commandId - is the name of the command for which the information is to be obtained
      Returns:
      the command configuration information for the combination of flow and command Ids.
    • obtainFirstCommand

      Command<InputType> obtainFirstCommand()
    • obtainFirstCommandInfo

      CommandDescriptor<InputType> obtainFirstCommandInfo()
    • obtainCommandInfo

      CommandDescriptor<InputType> obtainCommandInfo(String commandId)
    • toXml

      String toXml()
      Useful for debugging purposes.
      Returns:
      an xml representation of the entire flow (or multiple flows if more than one are configured)