Class NamedObjectRegistry<T>


  • @AlfrescoPublicApi
    public class NamedObjectRegistry<T>
    extends Object
    An generic registry of objects held by name. This is effectively a strongly-typed, synchronized map.
    Since:
    3.2
    Author:
    Derek Hulley
    • Method Detail

      • setStorageType

        public void setStorageType​(Class<T> clazz)
        Set the type of class that the registry holds. Any attempt to register a an instance of another type will be rejected.
        Parameters:
        clazz - the type to store
      • setNamePattern

        public void setNamePattern​(String namePattern)
        Optionally set a pattern to which all object names must conform
        Parameters:
        namePattern - a regular expression
      • register

        public void register​(String name,
                             T object)
        Register a named object instance.
        Parameters:
        name - the name of the object
        object - the instance to register, which correspond to the type
      • getNamedObject

        public T getNamedObject​(String name)
        Get a named object if it has been registered
        Parameters:
        name - the name of the object to retrieve
        Returns:
        Returns the instance of the object, which will necessarily be of the correct type, or null
      • getAllNamedObjects

        public Map<String,​T> getAllNamedObjects()
        Returns:
        Returns a copy of the map of instances
      • reset

        public void reset()