Interface HubProfileFactory

All Known Implementing Classes:
StandardHubProfileFactory, WebHubProfileFactory

public interface HubProfileFactory
Factory to produce hub profiles of a particular type. Used with the command-line invocation of the hub.
Since:
31 Jan 2011
Author:
Mark Taylor
  • Method Summary

    Modifier and Type
    Method
    Description
    Creates a HubProfile perhaps configured using a supplied list of flags.
    Returns an array of strings, each describing one command-line flag which will be consumed by the createProfile method.
    Returns a HubProfile subclass with a no-arg constructor which, when invoked, will produce a basic instance of the HubProfile represented by this factory.
    Returns the name used to identify this profile.
  • Method Details

    • getName

      String getName()
      Returns the name used to identify this profile.
      Returns:
      short name
    • getFlagsUsage

      String[] getFlagsUsage()
      Returns an array of strings, each describing one command-line flag which will be consumed by the createProfile method.
      Returns:
      array of plain-text strings suitable for use as part of a usage message
    • createHubProfile

      HubProfile createHubProfile(List flagList) throws IOException
      Creates a HubProfile perhaps configured using a supplied list of flags. Any flags which match those described by the getFlagsUsage() command are used for configuration of the returned hub, and must be removed from the flagList list. Unrecognised flags should be ignored and left in the list. Flags which are recognised but badly formed should raise a RuntimeException with a helpful message.
      Parameters:
      flagList - mutable list of Strings giving command-ilne flags, some of which may be intended for configuring a profile
      Returns:
      new profile
      Throws:
      IOException
    • getHubProfileClass

      Class getHubProfileClass()
      Returns a HubProfile subclass with a no-arg constructor which, when invoked, will produce a basic instance of the HubProfile represented by this factory. The instance thus produced will typically be similar to that produced by invoking createHubProfile(java.util.List) with an empty flag list.
      Returns:
      HubProfile subclass with a public no-arg constructor