Class RepoStore

  • All Implemented Interfaces:
    org.alfresco.repo.tenant.TenantDeployer, org.springframework.extensions.webscripts.Store

    public class RepoStore
    extends org.springframework.extensions.webscripts.AbstractStore
    implements org.alfresco.repo.tenant.TenantDeployer
    Repository based Web Script Store
    Author:
    davidc
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.util.Map<java.lang.String,​org.alfresco.service.cmr.repository.NodeRef> baseNodeRefs  
      protected org.alfresco.service.cmr.repository.ContentService contentService  
      protected org.alfresco.service.cmr.model.FileFolderService fileService  
      protected boolean mustExist  
      protected org.alfresco.service.namespace.NamespaceService namespaceService  
      protected org.alfresco.service.cmr.repository.NodeService nodeService  
      protected org.alfresco.service.cmr.security.PermissionService permissionService  
      protected java.lang.String repoPath  
      protected org.alfresco.service.cmr.repository.StoreRef repoStore  
      protected org.alfresco.repo.transaction.RetryingTransactionHelper retryingTransactionHelper  
      protected org.alfresco.service.cmr.search.SearchService searchService  
      protected org.alfresco.repo.tenant.TenantAdminService tenantAdminService  
      • Fields inherited from class org.springframework.extensions.webscripts.AbstractStore

        DESC_PATH_PATTERN
    • Constructor Summary

      Constructors 
      Constructor Description
      RepoStore()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void createDocument​(java.lang.String documentPath, java.lang.String content)  
      void destroy()  
      static java.lang.String encodePathISO9075​(java.lang.String path)
      Helper to encode the elements of a path to be used as a Lucene PATH statement using the ISO9075 encoding.
      boolean exists()  
      protected org.alfresco.service.cmr.repository.NodeRef findNodeRef​(java.lang.String documentPath)
      Gets the node ref for the specified path within this repo store
      java.lang.String[] getAllDocumentPaths()  
      java.lang.String getBasePath()  
      java.lang.String[] getDescriptionDocumentPaths()  
      java.io.InputStream getDocument​(java.lang.String documentPath)  
      java.lang.String[] getDocumentPaths​(java.lang.String path, boolean includeSubPaths, java.lang.String documentPattern)  
      protected java.lang.String getPath​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
      Gets the display path for the specified node
      java.lang.String[] getScriptDocumentPaths​(org.springframework.extensions.webscripts.WebScript script)  
      org.springframework.extensions.webscripts.ScriptLoader getScriptLoader()  
      freemarker.cache.TemplateLoader getTemplateLoader()  
      boolean hasDocument​(java.lang.String documentPath)  
      void init()  
      boolean isSecure()  
      long lastModified​(java.lang.String documentPath)  
      void onDisableTenant()  
      void onEnableTenant()  
      boolean removeDocument​(java.lang.String documentPath)  
      void setContentService​(org.alfresco.service.cmr.repository.ContentService contentService)
      Sets the content service
      void setFileFolderService​(org.alfresco.service.cmr.model.FileFolderService fileService)
      Sets the file service
      void setMustExist​(boolean mustExist)
      Sets whether the repo store must exist
      void setNamespaceService​(org.alfresco.service.namespace.NamespaceService namespaceService)
      Sets the namespace service
      void setNodeService​(org.alfresco.service.cmr.repository.NodeService nodeService)
      Sets the node service
      void setPath​(java.lang.String repoPath)
      Sets the repo path
      void setPermissionService​(org.alfresco.service.cmr.security.PermissionService permissionService)
      Sets the permission service
      void setSearchService​(org.alfresco.service.cmr.search.SearchService searchService)
      Sets the search service
      void setStore​(java.lang.String repoStore)
      Sets the repo store
      void setTenantAdminService​(org.alfresco.repo.tenant.TenantAdminService tenantAdminService)
      Sets the tenant admin service
      void setTransactionHelper​(org.alfresco.repo.transaction.RetryingTransactionHelper retryingTransactionHelper)
      Sets helper that provides transaction callbacks
      java.lang.String toString()  
      void updateDocument​(java.lang.String documentPath, java.lang.String content)  
      • Methods inherited from class org.springframework.extensions.webscripts.AbstractStore

        createDocuments, getDocumentPaths, getPreviewContext, isReadOnly, setPreviewContextProvider, setReadOnly
      • Methods inherited from class java.lang.Object

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

      • mustExist

        protected boolean mustExist
      • repoStore

        protected org.alfresco.service.cmr.repository.StoreRef repoStore
      • repoPath

        protected java.lang.String repoPath
      • baseNodeRefs

        protected java.util.Map<java.lang.String,​org.alfresco.service.cmr.repository.NodeRef> baseNodeRefs
      • retryingTransactionHelper

        protected org.alfresco.repo.transaction.RetryingTransactionHelper retryingTransactionHelper
      • searchService

        protected org.alfresco.service.cmr.search.SearchService searchService
      • nodeService

        protected org.alfresco.service.cmr.repository.NodeService nodeService
      • contentService

        protected org.alfresco.service.cmr.repository.ContentService contentService
      • fileService

        protected org.alfresco.service.cmr.model.FileFolderService fileService
      • namespaceService

        protected org.alfresco.service.namespace.NamespaceService namespaceService
      • permissionService

        protected org.alfresco.service.cmr.security.PermissionService permissionService
      • tenantAdminService

        protected org.alfresco.repo.tenant.TenantAdminService tenantAdminService
    • Constructor Detail

      • RepoStore

        public RepoStore()
    • Method Detail

      • setTransactionHelper

        public void setTransactionHelper​(org.alfresco.repo.transaction.RetryingTransactionHelper retryingTransactionHelper)
        Sets helper that provides transaction callbacks
      • setSearchService

        public void setSearchService​(org.alfresco.service.cmr.search.SearchService searchService)
        Sets the search service
      • setNodeService

        public void setNodeService​(org.alfresco.service.cmr.repository.NodeService nodeService)
        Sets the node service
      • setContentService

        public void setContentService​(org.alfresco.service.cmr.repository.ContentService contentService)
        Sets the content service
      • setFileFolderService

        public void setFileFolderService​(org.alfresco.service.cmr.model.FileFolderService fileService)
        Sets the file service
      • setNamespaceService

        public void setNamespaceService​(org.alfresco.service.namespace.NamespaceService namespaceService)
        Sets the namespace service
      • setPermissionService

        public void setPermissionService​(org.alfresco.service.cmr.security.PermissionService permissionService)
        Sets the permission service
      • setTenantAdminService

        public void setTenantAdminService​(org.alfresco.repo.tenant.TenantAdminService tenantAdminService)
        Sets the tenant admin service
      • setMustExist

        public void setMustExist​(boolean mustExist)
        Sets whether the repo store must exist
        Parameters:
        mustExist - boolean
      • setStore

        public void setStore​(java.lang.String repoStore)
        Sets the repo store
      • setPath

        public void setPath​(java.lang.String repoPath)
        Sets the repo path
        Parameters:
        repoPath - repoPath
      • init

        public void init()
        Specified by:
        init in interface org.springframework.extensions.webscripts.Store
        Specified by:
        init in interface org.alfresco.repo.tenant.TenantDeployer
      • destroy

        public void destroy()
        Specified by:
        destroy in interface org.alfresco.repo.tenant.TenantDeployer
      • isSecure

        public boolean isSecure()
        Specified by:
        isSecure in interface org.springframework.extensions.webscripts.Store
      • exists

        public boolean exists()
        Specified by:
        exists in interface org.springframework.extensions.webscripts.Store
      • getBasePath

        public java.lang.String getBasePath()
        Specified by:
        getBasePath in interface org.springframework.extensions.webscripts.Store
      • getPath

        protected java.lang.String getPath​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
        Gets the display path for the specified node
        Parameters:
        nodeRef - NodeRef
        Returns:
        display path
      • findNodeRef

        protected org.alfresco.service.cmr.repository.NodeRef findNodeRef​(java.lang.String documentPath)
        Gets the node ref for the specified path within this repo store
        Parameters:
        documentPath - String
        Returns:
        node ref
      • getScriptDocumentPaths

        public java.lang.String[] getScriptDocumentPaths​(org.springframework.extensions.webscripts.WebScript script)
        Specified by:
        getScriptDocumentPaths in interface org.springframework.extensions.webscripts.Store
      • getDocumentPaths

        public java.lang.String[] getDocumentPaths​(java.lang.String path,
                                                   boolean includeSubPaths,
                                                   java.lang.String documentPattern)
        Specified by:
        getDocumentPaths in interface org.springframework.extensions.webscripts.Store
      • encodePathISO9075

        public static java.lang.String encodePathISO9075​(java.lang.String path)
        Helper to encode the elements of a path to be used as a Lucene PATH statement using the ISO9075 encoding. Note that leading and trailing '/' elements will NOT be preserved.
        Parameters:
        path - Path to encode, elements separated by '/'
        Returns:
        the encoded path, a minimum of the empty string will be returned
      • getDescriptionDocumentPaths

        public java.lang.String[] getDescriptionDocumentPaths()
        Specified by:
        getDescriptionDocumentPaths in interface org.springframework.extensions.webscripts.Store
      • getAllDocumentPaths

        public java.lang.String[] getAllDocumentPaths()
        Specified by:
        getAllDocumentPaths in interface org.springframework.extensions.webscripts.Store
      • lastModified

        public long lastModified​(java.lang.String documentPath)
                          throws java.io.IOException
        Specified by:
        lastModified in interface org.springframework.extensions.webscripts.Store
        Throws:
        java.io.IOException
      • hasDocument

        public boolean hasDocument​(java.lang.String documentPath)
        Specified by:
        hasDocument in interface org.springframework.extensions.webscripts.Store
      • getDocument

        public java.io.InputStream getDocument​(java.lang.String documentPath)
                                        throws java.io.IOException
        Specified by:
        getDocument in interface org.springframework.extensions.webscripts.Store
        Throws:
        java.io.IOException
      • createDocument

        public void createDocument​(java.lang.String documentPath,
                                   java.lang.String content)
                            throws java.io.IOException
        Specified by:
        createDocument in interface org.springframework.extensions.webscripts.Store
        Throws:
        java.io.IOException
      • updateDocument

        public void updateDocument​(java.lang.String documentPath,
                                   java.lang.String content)
                            throws java.io.IOException
        Specified by:
        updateDocument in interface org.springframework.extensions.webscripts.Store
        Throws:
        java.io.IOException
      • removeDocument

        public boolean removeDocument​(java.lang.String documentPath)
                               throws java.io.IOException
        Specified by:
        removeDocument in interface org.springframework.extensions.webscripts.Store
        Throws:
        java.io.IOException
      • getTemplateLoader

        public freemarker.cache.TemplateLoader getTemplateLoader()
        Specified by:
        getTemplateLoader in interface org.springframework.extensions.webscripts.Store
      • getScriptLoader

        public org.springframework.extensions.webscripts.ScriptLoader getScriptLoader()
        Specified by:
        getScriptLoader in interface org.springframework.extensions.webscripts.Store
      • onEnableTenant

        public void onEnableTenant()
        Specified by:
        onEnableTenant in interface org.alfresco.repo.tenant.TenantDeployer
      • onDisableTenant

        public void onDisableTenant()
        Specified by:
        onDisableTenant in interface org.alfresco.repo.tenant.TenantDeployer
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object