Class RepoTransferReceiverImpl

    • Constructor Detail

      • RepoTransferReceiverImpl

        public RepoTransferReceiverImpl()
    • Method Detail

      • init

        public void init()
      • getStagingFolder

        public java.io.File getStagingFolder​(java.lang.String transferId)
        Specified by:
        getStagingFolder in interface TransferReceiver
        Parameters:
        transferId - String
        Returns:
        File
      • getTempFolder

        public org.alfresco.service.cmr.repository.NodeRef getTempFolder​(java.lang.String transferId)
        Specified by:
        getTempFolder in interface TransferReceiver
        Parameters:
        transferId - String
        Returns:
        NodeRef
      • start

        public java.lang.String start​(java.lang.String fromRepositoryId,
                                      boolean transferToSelf,
                                      TransferVersion fromVersion)
        Description copied from interface: TransferReceiver
        Asks the receiver to setup a new transfer.
        Specified by:
        start in interface TransferReceiver
        Parameters:
        fromRepositoryId - the repositoryId of the sending system
        transferToSelf - are transfers to the same repository allowed?
        fromVersion - the version sending
        Returns:
        The identifier of the new transfer
      • end

        public void end​(java.lang.String transferId)
        Description copied from interface: TransferReceiver
        Asks the receiver to end (and clean up) the specified transfer
        Specified by:
        end in interface TransferReceiver
        Parameters:
        transferId - The transfer to end
      • checkLock

        public org.alfresco.repo.transfer.RepoTransferReceiverImpl.Lock checkLock​(java.lang.String transferId)
                                                                           throws TransferException
        Throws:
        TransferException
      • saveSnapshot

        public void saveSnapshot​(java.lang.String transferId,
                                 java.io.InputStream openStream)
                          throws TransferException
        Description copied from interface: TransferReceiver
        Store the specified snapshot file into the transfer staging area. The specified transfer must currently be the holder of the transfer lock, otherwise an exception is thrown. This operation does not close the supplied stream, so the caller must do it as appropriate. The caller should assume that the supplied stream has been fully read when this operation returns.
        Specified by:
        saveSnapshot in interface TransferReceiver
        Parameters:
        transferId - The identifier of the transfer with which this snapshot is associated
        openStream - The open stream that holds the snapshot file.
        Throws:
        TransferException - If an error occurs while saving the snapshot file.
      • saveContent

        public void saveContent​(java.lang.String transferId,
                                java.lang.String contentFileId,
                                java.io.InputStream contentStream)
                         throws TransferException
        Description copied from interface: TransferReceiver
        Save a content item
        Specified by:
        saveContent in interface TransferReceiver
        Parameters:
        transferId - String
        contentFileId - String
        contentStream - InputStream
        Throws:
        TransferException
      • commitAsync

        public void commitAsync​(java.lang.String transferId)
        Description copied from interface: TransferReceiver
        Commit asynchronously
        Specified by:
        commitAsync in interface TransferReceiver
        Parameters:
        transferId - String
      • setSearchService

        public void setSearchService​(org.alfresco.service.cmr.search.SearchService searchService)
        Parameters:
        searchService - the searchService to set
      • setTransactionService

        public void setTransactionService​(TransactionService transactionService)
        Parameters:
        transactionService - the transactionService to set
      • setTenantService

        public void setTenantService​(org.alfresco.repo.tenant.TenantService tenantService)
      • setSingletonCache

        public void setSingletonCache​(org.alfresco.repo.cache.SimpleCache<java.lang.String,​org.alfresco.service.cmr.repository.NodeRef> singletonCache)
      • setTransferLockFolderPath

        public void setTransferLockFolderPath​(java.lang.String transferLockFolderPath)
        Parameters:
        transferLockFolderPath - the transferLockFolderPath to set
      • setTransferTempFolderPath

        public void setTransferTempFolderPath​(java.lang.String transferTempFolderPath)
        Parameters:
        transferTempFolderPath - the transferTempFolderPath to set
      • setRootStagingDirectory

        public void setRootStagingDirectory​(java.lang.String rootStagingDirectory)
        Parameters:
        rootStagingDirectory - the rootTransferFolder to set
      • setInboundTransferRecordsPath

        public void setInboundTransferRecordsPath​(java.lang.String inboundTransferRecordsPath)
        Parameters:
        inboundTransferRecordsPath - the inboundTransferRecordsPath to set
      • setNodeService

        public void setNodeService​(org.alfresco.service.cmr.repository.NodeService nodeService)
        Parameters:
        nodeService - the nodeService to set
      • setManifestProcessorFactory

        public void setManifestProcessorFactory​(ManifestProcessorFactory manifestProcessorFactory)
        Parameters:
        manifestProcessorFactory - the manifestProcessorFactory to set
      • setBehaviourFilter

        public void setBehaviourFilter​(BehaviourFilter behaviourFilter)
        Parameters:
        behaviourFilter - the behaviourFilter to set
      • setProgressMonitor

        public void setProgressMonitor​(TransferProgressMonitor progressMonitor)
        Parameters:
        progressMonitor - the progressMonitor to set
      • setActionService

        public void setActionService​(ActionService actionService)
      • setRuleService

        public void setRuleService​(RuleService ruleService)
        Set the ruleService
        Parameters:
        ruleService - the ruleService to set
      • getRuleService

        public RuleService getRuleService()
        Get the rule service
        Returns:
        the rule service
      • setNamespaceService

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

        public java.io.InputStream getTransferReport​(java.lang.String transferId)
        Description copied from interface: TransferReceiver
        get the transfer report for the specified transfer
        Specified by:
        getTransferReport in interface TransferReceiver
        Parameters:
        transferId - String
      • setPolicyComponent

        public void setPolicyComponent​(PolicyComponent policyComponent)
      • onCreateChildAssociation

        public void onCreateChildAssociation​(org.alfresco.service.cmr.repository.ChildAssociationRef childAssocRef,
                                             boolean isNewNode)
        When a new node is created as a child of a Transferred or Alien node then the new node needs to be marked as an alien.

        Then the tree needs to be walked upwards to mark all parent transferred nodes as alien.

        Specified by:
        onCreateChildAssociation in interface NodeServicePolicies.OnCreateChildAssociationPolicy
        Parameters:
        childAssocRef - the child association that has been created
        isNewNode - true if the node is new or false if the node is being linked in
      • beforeDeleteNode

        public void beforeDeleteNode​(org.alfresco.service.cmr.repository.NodeRef deletedNodeRef)
        When an alien node is deleted the it may be the last alien invader

        Walk the tree checking the invasion status!

        Specified by:
        beforeDeleteNode in interface NodeServicePolicies.BeforeDeleteNodePolicy
        Parameters:
        deletedNodeRef - the node reference
      • onRestoreNode

        public void onRestoreNode​(org.alfresco.service.cmr.repository.ChildAssociationRef childAssocRef)
        When a transferred node is restored it may be a new invader or it may no longer be an invader.

        Walk the tree checking the invasion status!

        Specified by:
        onRestoreNode in interface NodeServicePolicies.OnRestoreNodePolicy
        Parameters:
        childAssocRef - the newly created child association reference
      • onMoveNode

        public void onMoveNode​(org.alfresco.service.cmr.repository.ChildAssociationRef oldChildAssocRef,
                               org.alfresco.service.cmr.repository.ChildAssociationRef newChildAssocRef)
        When an alien node is moved it may un-invade its old location and invade a new location. The node may also cease to be alien.
        Specified by:
        onMoveNode in interface NodeServicePolicies.OnMoveNodePolicy
        Parameters:
        oldChildAssocRef - the child association reference prior to the move
        newChildAssocRef - the child association reference after the move
      • onCopyTransferred

        public CopyBehaviourCallback onCopyTransferred​(org.alfresco.service.namespace.QName classRef,
                                                       CopyDetails copyDetails)
        When a transferred node is copied, don't copy the transferred aspect.
      • onCopyAlien

        public CopyBehaviourCallback onCopyAlien​(org.alfresco.service.namespace.QName classRef,
                                                 CopyDetails copyDetails)
        When an alien node is copied, don't copy the alien aspect.
      • setDescriptorService

        public void setDescriptorService​(DescriptorService descriptorService)
      • setAlienProcessor

        public void setAlienProcessor​(AlienProcessor alienProcessor)
      • setJobLockService

        public void setJobLockService​(JobLockService jobLockService)
      • setLockRetryCount

        public void setLockRetryCount​(int lockRetryCount)
      • getLockRetryCount

        public int getLockRetryCount()
      • setLockRetryWait

        public void setLockRetryWait​(long lockRetryWait)
      • getLockRetryWait

        public long getLockRetryWait()
      • setLockTimeOut

        public void setLockTimeOut​(long lockTimeOut)
      • getLockTimeOut

        public long getLockTimeOut()
      • setLockRefreshTime

        public void setLockRefreshTime​(long lockRefreshTime)
      • getLockRefreshTime

        public long getLockRefreshTime()
      • setTransferVersionChecker

        public void setTransferVersionChecker​(TransferVersionChecker transferVersionChecker)
      • setTransferRootNode

        public void setTransferRootNode​(java.lang.String rootFileSystem)
        Description copied from interface: TransferReceiver
        set the root node for the file system receiver
        Specified by:
        setTransferRootNode in interface TransferReceiver
        Parameters:
        rootFileSystem - String