Class RegistryServiceImpl

  • All Implemented Interfaces:
    RegistryService

    public class RegistryServiceImpl
    extends java.lang.Object
    implements RegistryService
    Implementation of registry service to provide generic storage and retrieval of system-related metadata.
    Author:
    Derek Hulley
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addProperty​(RegistryKey key, java.io.Serializable value)
      Assign a value to the registry key, which must be of the form /a/b/c.
      void copy​(RegistryKey sourceKey, RegistryKey targetKey)
      Copies the path or value from the source to the target location.
      void delete​(RegistryKey key)
      Delete the path element or value described by the key.
      java.util.Collection<java.lang.String> getChildElements​(RegistryKey key)
      Fetches all child elements for the given path.
      java.io.Serializable getProperty​(RegistryKey key)  
      void init()  
      void setNamespaceService​(org.alfresco.service.namespace.NamespaceService namespaceService)  
      void setNodeService​(org.alfresco.service.cmr.repository.NodeService nodeService)  
      void setRegistryRootPath​(java.lang.String registryRootPath)
      A root path e.g.
      void setRegistryStore​(java.lang.String registryStore)  
      void setRegistryStoreRef​(org.alfresco.service.cmr.repository.StoreRef registryStoreRef)  
      void setSearchService​(org.alfresco.service.cmr.search.SearchService searchService)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RegistryServiceImpl

        public RegistryServiceImpl()
    • Method Detail

      • setNamespaceService

        public void setNamespaceService​(org.alfresco.service.namespace.NamespaceService namespaceService)
      • setNodeService

        public void setNodeService​(org.alfresco.service.cmr.repository.NodeService nodeService)
      • setSearchService

        public void setSearchService​(org.alfresco.service.cmr.search.SearchService searchService)
      • setRegistryStoreRef

        public void setRegistryStoreRef​(org.alfresco.service.cmr.repository.StoreRef registryStoreRef)
        Parameters:
        registryStoreRef - the store in which the registry root is found
      • setRegistryRootPath

        public void setRegistryRootPath​(java.lang.String registryRootPath)
        A root path e.g. /sys:systemRegistry
        Parameters:
        registryRootPath - the path to the root of the registry
      • init

        public void init()
      • addProperty

        public void addProperty​(RegistryKey key,
                                java.io.Serializable value)
        Assign a value to the registry key, which must be of the form /a/b/c.
        Specified by:
        addProperty in interface RegistryService
        Parameters:
        key - the registry key.
        value - any value that can be stored in the repository.
      • getChildElements

        public java.util.Collection<java.lang.String> getChildElements​(RegistryKey key)
        Description copied from interface: RegistryService
        Fetches all child elements for the given path. The key's property should be null as it is completely ignored.
            ...
            registryService.addValue(KEY_A_B_C_1, VALUE_ONE);
            registryService.addValue(KEY_A_B_C_2, VALUE_TWO);
            ...
            assertTrue(registryService.getChildElements(KEY_A_B_null).contains("C"));
            ...
         
        Specified by:
        getChildElements in interface RegistryService
        Parameters:
        key - the registry key with the path. The last element in the path will be ignored, and can be any acceptable value localname or null.
        Returns:
        Returns all child elements (not values) for the given key, ignoring the last element in the key.
        See Also:
        RegistryKey.getPath()
      • copy

        public void copy​(RegistryKey sourceKey,
                         RegistryKey targetKey)
        Description copied from interface: RegistryService
        Copies the path or value from the source to the target location. The source and target keys must be both either path-specific or property-specific. If the source doesn't exist, then nothing will be done; there is no guarantee that the target will exist after the call.

        This is essentially a merge operation. Use delete first if the target must be cleaned.

        Specified by:
        copy in interface RegistryService
        Parameters:
        sourceKey - the source registry key to take values from
        targetKey - the target registyr key to move the path or value to
      • delete

        public void delete​(RegistryKey key)
        Description copied from interface: RegistryService
        Delete the path element or value described by the key. If the key points to nothing, then nothing is done. delete(/a/b/c) will remove value c from path /a/b.
        delete(/a/b/null) will remove node /a/b along with all values and child elements.
        Specified by:
        delete in interface RegistryService
        Parameters:
        key - the path or value to delete