Package org.alfresco.repo.node.archive
Interface NodeArchiveService
- All Known Implementing Classes:
NodeArchiveServiceImpl
public interface NodeArchiveService
A service interface providing methods that map onto the low-level node restore functionality.
Node stores may be mapped to an associated archive node store. For example, Alfresco ships with the mapping
workspace://SpacesStore .. maps to .. archive://SpacesStore.
When a node is deleted from a regular workspace, it is moved to an archive store if there is a mapping.
This service operates only on nodes that have been archived by either
- Author:
- Derek Hulley
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final QNameStatic 'sys:archivedItem' path for all archived nodes. -
Method Summary
Modifier and TypeMethodDescriptiongetArchivedNode(NodeRef originalNodeRef) Get the likely node reference for the original node.getStoreArchiveNode(StoreRef originalStoreRef) Get the parent node that holds all nodes archived from the given store.booleanhasFullAccess(NodeRef nodeRef) Check if the current user has authority to access the archived node.org.alfresco.query.PagingResults<NodeRef>listArchivedNodes(ArchivedNodesCannedQueryBuilder cannedQueryBuilder) Get the archived nodes deleted by the current user.voidpurgeAllArchivedNodes(StoreRef originalStoreRef) Permanently delete all archived nodes.voidpurgeArchivedNode(NodeRef archivedNodeRef) Permanently delete the archived node.voidpurgeArchivedNodes(List<NodeRef> archivedNodes) Permanently delete the archived nodes.restoreArchivedNode(NodeRef archivedNodeRef) Attempt to restore the given archived node into its original location.restoreArchivedNode(NodeRef archivedNodeRef, NodeRef destinationNodeRef, QName assocTypeQName, QName assocQName) Attempt to restore the given archived node into a new location.restoreArchivedNodes(List<NodeRef> archivedNodeRefs) Attempt to restore a list of archived nodes into their original locations, using the original association types and names.restoreArchivedNodes(List<NodeRef> archivedNodeRefs, NodeRef destinationNodeRef, QName assocTypeQName, QName assocQName) Attempt to restore a list of archived nodes into a new location.
-
Field Details
-
QNAME_ARCHIVED_ITEM
Static 'sys:archivedItem' path for all archived nodes.
-
-
Method Details
-
getStoreArchiveNode
Get the parent node that holds all nodes archived from the given store.- Parameters:
originalStoreRef- the original store of the archived nodes. This is the store where the currently archived nodes could originally be found.- Returns:
- Returns the parent of the archived nodes, or null if archiving is not configured for the store
-
getArchivedNode
Get the likely node reference for the original node. There is no guarantee that the node exists in the archive store.- Parameters:
originalNodeRef- the original node reference- Returns:
- Returns the node ref of the node if it was archived.
-
restoreArchivedNode
Attempt to restore the given archived node into its original location.TRANSACTIONS: This method will execute in a new transaction.
- Parameters:
archivedNodeRef- the node's reference in the archive- Returns:
- Returns the results of the restore operation
-
restoreArchivedNode
RestoreNodeReport restoreArchivedNode(NodeRef archivedNodeRef, NodeRef destinationNodeRef, QName assocTypeQName, QName assocQName) Attempt to restore the given archived node into a new location.TRANSACTIONS: This method will execute in a new transaction.
- Parameters:
archivedNodeRef- the node's reference in the archive. This must be valid.destinationNodeRef- the parent of the restored node, or null to use the original parent node referenceassocTypeQName- the type of the primary association to link the restored node to the destination parent, or null to use the orginal association typeassocQName- the name of the primary association to be created, or null to use the original association name- Returns:
- Returns the results of the restore operation
-
restoreArchivedNodes
Attempt to restore a list of archived nodes into their original locations, using the original association types and names.TRANSACTIONS: This method will execute in a new transaction.
- Parameters:
archivedNodeRefs- the nodes' references in the archive. These must be valid.- Returns:
- Returns the results of the each attempted restore operation
-
restoreArchivedNodes
List<RestoreNodeReport> restoreArchivedNodes(List<NodeRef> archivedNodeRefs, NodeRef destinationNodeRef, QName assocTypeQName, QName assocQName) Attempt to restore a list of archived nodes into a new location.TRANSACTIONS: This method will execute in a new transaction.
- Parameters:
archivedNodeRefs- the nodes' references in the archive. These must be valid.destinationNodeRef- the parent of the restored nodes, or null to use the original parent node referencesassocTypeQName- the type of the primary associations to link the restored node to the destination parent, or null to use the orginal association typesassocQName- the name of the primary associations to be created, or null to use the original association names- Returns:
- Returns the results of the each attempted restore operation
-
purgeArchivedNode
Permanently delete the archived node.- Parameters:
archivedNodeRef- the archived node to delete.- See Also:
-
purgeArchivedNodes
Permanently delete the archived nodes.- Parameters:
archivedNodes- the archived nodes to delete.
-
purgeAllArchivedNodes
Permanently delete all archived nodes.- Parameters:
originalStoreRef- the store that the items originally came from
-
listArchivedNodes
org.alfresco.query.PagingResults<NodeRef> listArchivedNodes(ArchivedNodesCannedQueryBuilder cannedQueryBuilder) Get the archived nodes deleted by the current user. If the current user is an Administrator, then all the deleted nodes are fetched.- Parameters:
cannedQueryBuilder- the object that holds the required and optional parameters to perform the canned query- Returns:
- the results of the attempted search
- Since:
- 4.2
-
hasFullAccess
Check if the current user has authority to access the archived node.- Parameters:
nodeRef- NodeRef- Returns:
- true if the currently authenticated user has authority to access the archived node, otherwise false.
-