Class CatalogBase

  • All Implemented Interfaces:
    Catalog

    public class CatalogBase
    extends java.lang.Object
    implements Catalog

    Simple in-memory implementation of Catalog. This class can also be used as the basis for more advanced implementations.

    This implementation is thread-safe.

    Version:
    $Revision: 480477 $ $Date: 2006-11-29 08:34:52 +0000 (Wed, 29 Nov 2006) $
    Author:
    Craig R. McClanahan, Matthew J. Sgarlata
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.util.Map commands
      The map of named Commands, keyed by name.
    • Constructor Summary

      Constructors 
      Constructor Description
      CatalogBase()
      Create an empty catalog.
      CatalogBase​(java.util.Map commands)
      Create a catalog whose commands are those specified in the given Map.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addCommand​(java.lang.String name, Command command)
      Add a new name and associated Command to the set of named commands known to this Catalog, replacing any previous command for that name.
      Command getCommand​(java.lang.String name)
      Return the Command associated with the specified name, if any; otherwise, return null.
      java.util.Iterator getNames()
      Return an Iterator over the set of named commands known to this Catalog.
      java.lang.String toString()
      Converts this Catalog to a String.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • commands

        protected java.util.Map commands

        The map of named Commands, keyed by name.

    • Constructor Detail

      • CatalogBase

        public CatalogBase()
        Create an empty catalog.
      • CatalogBase

        public CatalogBase​(java.util.Map commands)

        Create a catalog whose commands are those specified in the given Map. All Map keys should be String and all values should be Command.

        Parameters:
        commands - Map of Commands.
        Since:
        Chain 1.1
    • Method Detail

      • addCommand

        public void addCommand​(java.lang.String name,
                               Command command)

        Add a new name and associated Command to the set of named commands known to this Catalog, replacing any previous command for that name.

        Specified by:
        addCommand in interface Catalog
        Parameters:
        name - Name of the new command
        command - Command to be returned for later lookups on this name
      • getCommand

        public Command getCommand​(java.lang.String name)

        Return the Command associated with the specified name, if any; otherwise, return null.

        Specified by:
        getCommand in interface Catalog
        Parameters:
        name - Name for which a Command should be retrieved
        Returns:
        The Command associated with the specified name.
      • getNames

        public java.util.Iterator getNames()

        Return an Iterator over the set of named commands known to this Catalog. If there are no known commands, an empty Iterator is returned.

        Specified by:
        getNames in interface Catalog
        Returns:
        An iterator of the names in this Catalog.
      • toString

        public java.lang.String toString()
        Converts this Catalog to a String. Useful for debugging purposes.
        Overrides:
        toString in class java.lang.Object
        Returns:
        a representation of this catalog as a String