Package org.alfresco.rest.api.impl
Class NodesImpl
- java.lang.Object
-
- org.alfresco.rest.api.impl.NodesImpl
-
- All Implemented Interfaces:
Nodes
public class NodesImpl extends Object implements Nodes
Centralises access to file/folder/node services and maps between representations. Note: This class was originally used for returning some basic node info when listing Favourites. It has now been re-purposed and extended to implement the new Nodes (RESTful) API for managing files & folders, as well as custom node types.- Since:
- publicapi1.0
- Author:
- steveglover, janv, Jamal Kaabi-Mofrad
-
-
Field Summary
Fields Modifier and Type Field Description static Map<String,org.alfresco.service.namespace.QName>PARAM_SYNONYMS_QNAMEstatic List<org.alfresco.service.namespace.QName>PROPS_USERLOOKUP-
Fields inherited from interface org.alfresco.rest.api.Nodes
OP_CREATE, OP_DELETE, OP_UPDATE, OP_UPDATE_PERMISSIONS, PARAM_ASSOC_TYPE, PARAM_AUTO_RENAME, PARAM_CREATEBYUSER, PARAM_CREATEDAT, PARAM_INCLUDE_ALLOWABLEOPERATIONS, PARAM_INCLUDE_ASPECTNAMES, PARAM_INCLUDE_ASSOCIATION, PARAM_INCLUDE_ISFAVORITE, PARAM_INCLUDE_ISLINK, PARAM_INCLUDE_ISLOCKED, PARAM_INCLUDE_PATH, PARAM_INCLUDE_PERMISSIONS, PARAM_INCLUDE_PROPERTIES, PARAM_INCLUDE_SUBTYPES, PARAM_ISFILE, PARAM_ISFOLDER, PARAM_ISPRIMARY, PARAM_MIMETYPE, PARAM_MODIFIEDAT, PARAM_MODIFIEDBYUSER, PARAM_NAME, PARAM_NODETYPE, PARAM_OVERWRITE, PARAM_PERMANENT, PARAM_RELATIVE_PATH, PARAM_SIZEINBYTES, PARAM_VERSION_COMMENT, PARAM_VERSION_MAJOR, PATH_MY, PATH_ROOT, PATH_SHARED
-
-
Constructor Summary
Constructors Constructor Description NodesImpl()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description List<AssocChild>addChildren(String parentNodeId, List<AssocChild> entities)voidaddCustomAspects(org.alfresco.service.cmr.repository.NodeRef nodeRef, List<String> aspectNames, List<org.alfresco.service.namespace.QName> excludedAspects)Add aspects to the specified NodeRef.List<AssocTarget>addTargets(String sourceNodeId, List<AssocTarget> entities)protected Set<org.alfresco.service.namespace.QName>buildAssocTypes(org.alfresco.service.namespace.QName assocTypeQName)protected org.alfresco.util.Pair<Set<org.alfresco.service.namespace.QName>,Set<org.alfresco.service.namespace.QName>>buildSearchTypesAndIgnoreAspects(Parameters parameters)protected org.alfresco.util.Pair<Set<org.alfresco.service.namespace.QName>,Set<org.alfresco.service.namespace.QName>>buildSearchTypesAndIgnoreAspects(org.alfresco.service.namespace.QName nodeTypeQName, boolean includeSubTypes, Set<org.alfresco.service.namespace.QName> ignoreQNameTypes, Boolean includeFiles, Boolean includeFolders)NodecreateNode(String parentFolderNodeId, Node nodeInfo, Parameters parameters)Create node - folder or (empty) file.org.alfresco.service.namespace.QNamecreateQName(String qnameStr)Helper to create a QName from either a fully qualified or short-name QName stringprotected List<org.alfresco.service.namespace.QName>createQNames(List<String> qnameStrList, List<org.alfresco.service.namespace.QName> excludedProps)Helper to create a QName from either a fully qualified or short-name QName stringprotected voidcreateVersion(org.alfresco.service.cmr.repository.NodeRef nodeRef, boolean isVersioned, org.alfresco.service.cmr.version.VersionType versionType, String reason)voiddeleteNode(String nodeId, Parameters parameters)Delete the given node.protected static StringdetermineActivityType(org.alfresco.rest.api.impl.NodesImpl.Activity_Type activity_type, boolean isFolder)protected org.alfresco.service.cmr.action.ActionServicegetActionService()protected org.alfresco.service.cmr.activities.ActivityInfogetActivityInfo(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, org.alfresco.service.cmr.repository.NodeRef nodeRef)org.alfresco.service.namespace.QNamegetAssocType(String assocTypeQNameStr)org.alfresco.service.namespace.QNamegetAssocType(String assocTypeQNameStr, boolean mandatory)protected org.alfresco.service.cmr.security.AuthorityServicegetAuthorityService()BinaryResourcegetContent(String fileNodeId, Parameters parameters, boolean recordActivity)Download file content.BinaryResourcegetContent(org.alfresco.service.cmr.repository.NodeRef nodeRef, Parameters parameters, boolean recordActivity)Download file content.protected org.alfresco.service.cmr.repository.ContentServicegetContentService()protected org.alfresco.service.cmr.dictionary.DictionaryServicegetDictionaryService()DocumentgetDocument(org.alfresco.service.cmr.repository.NodeRef nodeRef)Deprecated.note: currently required for backwards compat' (Favourites API)protected org.alfresco.service.cmr.model.FileFolderServicegetFileFolderService()FoldergetFolder(org.alfresco.service.cmr.repository.NodeRef nodeRef)Deprecated.note: currently required for backwards compat' (Favourites API)NodegetFolderOrDocument(String nodeId, Parameters parameters)Get the folder or document representation (as appropriate) for the given node.NodegetFolderOrDocument(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.cmr.repository.NodeRef parentNodeRef, org.alfresco.service.namespace.QName nodeTypeQName, List<String> includeParam, Map<String,UserInfo> mapUserInfo)Get the folder or document representation (as appropriate) for the given node.NodegetFolderOrDocumentFullInfo(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.cmr.repository.NodeRef parentNodeRef, org.alfresco.service.namespace.QName nodeTypeQName, Parameters parameters, Map<String,UserInfo> mapUserInfo)protected List<org.alfresco.repo.node.getchildren.FilterProp>getListChildrenFilterProps(Parameters parameters)Returns a List of filter properties specified by request parameters.protected List<org.alfresco.util.Pair<org.alfresco.service.namespace.QName,Boolean>>getListChildrenSortProps(Parameters parameters)Returns a List of sort properties specified by the "sorting" request parameter.protected List<org.alfresco.util.Pair<org.alfresco.service.namespace.QName,Boolean>>getListChildrenSortPropsDefault()Returns the default sort order.protected org.alfresco.service.cmr.lock.LockServicegetLockService()protected org.alfresco.service.cmr.repository.MimetypeServicegetMimetypeService()protected org.alfresco.service.namespace.NamespaceServicegetNamespaceService()NodegetNode(String nodeId)Deprecated.review usage (backward compat')NodegetNode(org.alfresco.service.cmr.repository.NodeRef nodeRef)Deprecated.review usage (backward compat')protected NodeAssocServicegetNodeAssocService()protected org.alfresco.service.cmr.repository.NodeServicegetNodeService()protected org.alfresco.service.cmr.security.OwnableServicegetOwnableService()protected org.alfresco.service.cmr.security.PermissionServicegetPermissionService()protected org.alfresco.service.cmr.security.PersonServicegetPersonService()protected org.alfresco.service.cmr.activities.ActivityPostergetPoster()protected QuickShareLinksgetQuickShareLinks()protected org.alfresco.repo.model.RepositorygetRepositoryHelper()protected org.alfresco.repo.transaction.RetryingTransactionHelpergetRetryingTransactionHelper()protected org.alfresco.service.cmr.site.SiteServicegetSiteService()protected org.alfresco.repo.virtual.store.VirtualStoregetSmartStore()protected org.alfresco.service.cmr.thumbnail.ThumbnailServicegetThumbnailService()Deprecated.protected org.alfresco.service.cmr.version.VersionServicegetVersionService()voidinit()protected booleanisSpecialNode(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.namespace.QName type)Check for special case: additional node validation (pending common lower-level service support) for blacklist of system nodes that should not be deleted or locked, eg.booleanisSubClass(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.namespace.QName ofClassQName, boolean validateNodeRef)Determines whether the type of the given nodeRef is a sub-class of another class or not.CollectionWithPagingInfo<Node>listChildren(String parentFolderNodeId, Parameters parameters)Get list of children of a parent folder.Nodelock(String nodeId, LockInfo lockInfo, Parameters parameters)Lock a nodePathInfolookupPathInfo(org.alfresco.service.cmr.repository.NodeRef nodeRefIn, org.alfresco.service.cmr.repository.ChildAssociationRef archivedParentAssoc)Returns the path to the given nodeRefnodeRefInor the archived nodeRefarchivedParentAssoc.List<String>mapFromNodeAspects(Set<org.alfresco.service.namespace.QName> nodeAspects, List<String> excludedNS, List<org.alfresco.service.namespace.QName> excludedAspects)Map from aspects (Set of QName) retrieved from the repository to a map List of String required that can be formatted/expressed as required by the API JSON response for get nodes, get person etc.Map<String,Object>mapFromNodeProperties(Map<org.alfresco.service.namespace.QName,Serializable> nodeProps, List<String> selectParam, Map<String,UserInfo> mapUserInfo, List<String> excludedNS, List<org.alfresco.service.namespace.QName> excludedProps)Convert from node properties (map of QName to Serializable) retrieved from the respository to a map of String to Object that can be formatted/expressed as required by the API JSON response for get nodes, get person etc.Set<org.alfresco.service.namespace.QName>mapToNodeAspects(List<String> aspectNames)Map from a String representation of aspect names to a set of QName objects, as used by the repository.Map<org.alfresco.service.namespace.QName,Serializable>mapToNodeProperties(Map<String,Object> props)Map from the JSON API format of properties (String to Object) to the typical node properties map used by the repository (QName to Serializable).protected org.alfresco.service.cmr.model.FileInfomoveOrCopyImpl(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String name, boolean isCopy)NodemoveOrCopyNode(String sourceNodeId, String targetParentId, String name, Parameters parameters, boolean isCopy)Move or Copy nodebooleannodeMatches(org.alfresco.service.cmr.repository.NodeRef nodeRef, Set<org.alfresco.service.namespace.QName> expectedTypes, Set<org.alfresco.service.namespace.QName> excludedTypes)protected voidpostActivity(org.alfresco.rest.api.impl.NodesImpl.Activity_Type activity_type, org.alfresco.service.cmr.activities.ActivityInfo activityInfo, boolean aSync)Posts activities based on the activity_type.protected voidprocessNodePermissions(org.alfresco.service.cmr.repository.NodeRef nodeRef, Node nodeInfo)protected org.alfresco.service.cmr.repository.NodeRefresolveNodeByPath(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String path, boolean checkForCompanyHome)voidsetBehaviourFilter(org.alfresco.repo.policy.BehaviourFilter behaviourFilter)voidsetIgnoreTypes(Set<String> ignoreTypesAndAspects)voidsetNodeAssocService(NodeAssocService nodeAssocService)voidsetNonAttachContentTypes(Set<String> nonAttachWhiteList)voidsetPoster(org.alfresco.service.cmr.activities.ActivityPoster poster)voidsetQuickShareLinks(QuickShareLinks quickShareLinks)voidsetRepositoryHelper(org.alfresco.repo.model.Repository repositoryHelper)voidsetServiceRegistry(org.alfresco.service.ServiceRegistry sr)voidsetSmartStore(org.alfresco.repo.virtual.store.VirtualStore smartStore)protected booleantypeMatches(org.alfresco.service.namespace.QName type, Set<org.alfresco.service.namespace.QName> expectedTypes, Set<org.alfresco.service.namespace.QName> excludedTypes)Nodeunlock(String nodeId, Parameters parameters)Unlock a nodeNodeupdateContent(String fileNodeId, BasicContentInfo contentInfo, InputStream stream, Parameters parameters)Uploads file content (updates existing node with new content).voidupdateCustomAspects(org.alfresco.service.cmr.repository.NodeRef nodeRef, List<String> aspectNames, List<org.alfresco.service.namespace.QName> excludedAspects)Update aspects for the specified NodeRef.NodeupdateNode(String nodeId, Node nodeInfo, Parameters parameters)Update node meta-data.protected org.alfresco.service.cmr.repository.NodeRefupdateNodeImpl(String nodeId, Node nodeInfo, Parameters parameters)Nodeupload(String parentFolderNodeId, org.springframework.extensions.webscripts.servlet.FormData formData, Parameters parameters)Uploads file content and meta-data into the repository.org.alfresco.service.cmr.repository.NodeRefvalidateNode(String nodeId)org.alfresco.service.cmr.repository.NodeRefvalidateNode(org.alfresco.service.cmr.repository.NodeRef nodeRef)org.alfresco.service.cmr.repository.NodeRefvalidateNode(org.alfresco.service.cmr.repository.StoreRef storeRef, String nodeId)org.alfresco.service.cmr.repository.NodeRefvalidateOrLookupNode(String nodeId, String path)
-
-
-
Method Detail
-
init
public void init()
-
setServiceRegistry
public void setServiceRegistry(org.alfresco.service.ServiceRegistry sr)
-
setBehaviourFilter
public void setBehaviourFilter(org.alfresco.repo.policy.BehaviourFilter behaviourFilter)
-
setRepositoryHelper
public void setRepositoryHelper(org.alfresco.repo.model.Repository repositoryHelper)
-
setQuickShareLinks
public void setQuickShareLinks(QuickShareLinks quickShareLinks)
-
setPoster
public void setPoster(org.alfresco.service.cmr.activities.ActivityPoster poster)
-
setNodeAssocService
public void setNodeAssocService(NodeAssocService nodeAssocService)
-
setSmartStore
public void setSmartStore(org.alfresco.repo.virtual.store.VirtualStore smartStore)
-
validateNode
public org.alfresco.service.cmr.repository.NodeRef validateNode(String nodeId)
- Specified by:
validateNodein interfaceNodes
-
validateNode
public org.alfresco.service.cmr.repository.NodeRef validateNode(org.alfresco.service.cmr.repository.StoreRef storeRef, String nodeId)- Specified by:
validateNodein interfaceNodes
-
validateNode
public org.alfresco.service.cmr.repository.NodeRef validateNode(org.alfresco.service.cmr.repository.NodeRef nodeRef)
- Specified by:
validateNodein interfaceNodes
-
nodeMatches
public boolean nodeMatches(org.alfresco.service.cmr.repository.NodeRef nodeRef, Set<org.alfresco.service.namespace.QName> expectedTypes, Set<org.alfresco.service.namespace.QName> excludedTypes)- Specified by:
nodeMatchesin interfaceNodes
-
isSubClass
public boolean isSubClass(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.namespace.QName ofClassQName, boolean validateNodeRef)Description copied from interface:NodesDetermines whether the type of the given nodeRef is a sub-class of another class or not.- Specified by:
isSubClassin interfaceNodes- Parameters:
nodeRef- source nodeRefofClassQName- the class to test againstvalidateNodeRef- whether to validate the given source node or not- Returns:
- true if the type of the given nodeRef is a sub-class of another class, otherwise false
-
typeMatches
protected boolean typeMatches(org.alfresco.service.namespace.QName type, Set<org.alfresco.service.namespace.QName> expectedTypes, Set<org.alfresco.service.namespace.QName> excludedTypes)
-
getNode
public Node getNode(String nodeId)
Deprecated.review usage (backward compat')Description copied from interface:NodesGet the node representation for the given node.
-
getNode
public Node getNode(org.alfresco.service.cmr.repository.NodeRef nodeRef)
Deprecated.review usage (backward compat')
-
getDocument
public Document getDocument(org.alfresco.service.cmr.repository.NodeRef nodeRef)
Deprecated.note: currently required for backwards compat' (Favourites API)Description copied from interface:NodesGet the document representation for the given node.- Specified by:
getDocumentin interfaceNodes- Parameters:
nodeRef- NodeRef- Returns:
- Document
-
getFolder
public Folder getFolder(org.alfresco.service.cmr.repository.NodeRef nodeRef)
Deprecated.note: currently required for backwards compat' (Favourites API)Description copied from interface:NodesGet the folder representation for the given node.
-
validateOrLookupNode
public org.alfresco.service.cmr.repository.NodeRef validateOrLookupNode(String nodeId, String path)
- Specified by:
validateOrLookupNodein interfaceNodes
-
resolveNodeByPath
protected org.alfresco.service.cmr.repository.NodeRef resolveNodeByPath(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String path, boolean checkForCompanyHome)
-
getFolderOrDocument
public Node getFolderOrDocument(String nodeId, Parameters parameters)
Description copied from interface:NodesGet the folder or document representation (as appropriate) for the given node.- Specified by:
getFolderOrDocumentin interfaceNodes- Parameters:
nodeId- String nodeId or well-known alias, eg. "-root-" or "-my-"parameters- theParametersobject to get the parameters passed into the request including: - incPrimaryParent- Returns:
-
getFolderOrDocumentFullInfo
public Node getFolderOrDocumentFullInfo(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.cmr.repository.NodeRef parentNodeRef, org.alfresco.service.namespace.QName nodeTypeQName, Parameters parameters, Map<String,UserInfo> mapUserInfo)
- Specified by:
getFolderOrDocumentFullInfoin interfaceNodes
-
getFolderOrDocument
public Node getFolderOrDocument(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.cmr.repository.NodeRef parentNodeRef, org.alfresco.service.namespace.QName nodeTypeQName, List<String> includeParam, Map<String,UserInfo> mapUserInfo)
Description copied from interface:NodesGet the folder or document representation (as appropriate) for the given node.- Specified by:
getFolderOrDocumentin interfaceNodes- Parameters:
nodeRef- A real Node- Returns:
-
lookupPathInfo
public PathInfo lookupPathInfo(org.alfresco.service.cmr.repository.NodeRef nodeRefIn, org.alfresco.service.cmr.repository.ChildAssociationRef archivedParentAssoc)
Description copied from interface:NodesReturns the path to the given nodeRefnodeRefInor the archived nodeRefarchivedParentAssoc.- Specified by:
lookupPathInfoin interfaceNodes- Parameters:
nodeRefIn- the NodeRefarchivedParentAssoc- the ChildAssociationRef of the archived NodeRef- Returns:
- the path to the given node
-
mapToNodeAspects
public Set<org.alfresco.service.namespace.QName> mapToNodeAspects(List<String> aspectNames)
Description copied from interface:NodesMap from a String representation of aspect names to a set of QName objects, as used by the repository.- Specified by:
mapToNodeAspectsin interfaceNodes- Returns:
-
mapToNodeProperties
public Map<org.alfresco.service.namespace.QName,Serializable> mapToNodeProperties(Map<String,Object> props)
Description copied from interface:NodesMap from the JSON API format of properties (String to Object) to the typical node properties map used by the repository (QName to Serializable).- Specified by:
mapToNodePropertiesin interfaceNodes- Returns:
-
mapFromNodeProperties
public Map<String,Object> mapFromNodeProperties(Map<org.alfresco.service.namespace.QName,Serializable> nodeProps, List<String> selectParam, Map<String,UserInfo> mapUserInfo, List<String> excludedNS, List<org.alfresco.service.namespace.QName> excludedProps)
Description copied from interface:NodesConvert from node properties (map of QName to Serializable) retrieved from the respository to a map of String to Object that can be formatted/expressed as required by the API JSON response for get nodes, get person etc.Returns null if there are no properties to return, rather than an empty map.
- Specified by:
mapFromNodePropertiesin interfaceNodes- Returns:
- The map of properties, or null if none to return.
-
mapFromNodeAspects
public List<String> mapFromNodeAspects(Set<org.alfresco.service.namespace.QName> nodeAspects, List<String> excludedNS, List<org.alfresco.service.namespace.QName> excludedAspects)
Description copied from interface:NodesMap from aspects (Set of QName) retrieved from the repository to a map List of String required that can be formatted/expressed as required by the API JSON response for get nodes, get person etc.Returns null if there are no aspect names to return, rather than an empty list.
- Specified by:
mapFromNodeAspectsin interfaceNodes- Returns:
- The list of aspect names, or null if none to return.
-
listChildren
public CollectionWithPagingInfo<Node> listChildren(String parentFolderNodeId, Parameters parameters)
Description copied from interface:NodesGet list of children of a parent folder.- Specified by:
listChildrenin interfaceNodes- Parameters:
parentFolderNodeId- String id of parent folder node or well-known alias, eg. "-root-" or "-my-"parameters- theParametersobject to get the parameters passed into the request including: - filter, sort & paging params (where, orderBy, skipCount, maxItems) - incFiles, incFolders (both true by default)- Returns:
- a paged list of
org.alfresco.rest.api.model.Nodeobjects
-
getListChildrenFilterProps
protected List<org.alfresco.repo.node.getchildren.FilterProp> getListChildrenFilterProps(Parameters parameters)
Returns a List of filter properties specified by request parameters.
- Parameters:
parameters- TheParametersobject to get the parameters passed into the request including: - filter, sort & paging params (where, orderBy, skipCount, maxItems) - incFiles, incFolders (both true by default)- Returns:
- The list of
FilterProp. Can be null.
-
getListChildrenSortProps
protected List<org.alfresco.util.Pair<org.alfresco.service.namespace.QName,Boolean>> getListChildrenSortProps(Parameters parameters)
Returns a List of sort properties specified by the "sorting" request parameter.
- Parameters:
parameters- TheParametersobject to get the parameters passed into the request including: - filter, sort & paging params (where, orderBy, skipCount, maxItems) - incFiles, incFolders (both true by default)- Returns:
- The list of
Pair<QName, Boolean>sort properties. If no sort parameters are found defaults togetListChildrenSortPropsDefault.
-
getListChildrenSortPropsDefault
protected List<org.alfresco.util.Pair<org.alfresco.service.namespace.QName,Boolean>> getListChildrenSortPropsDefault()
Returns the default sort order.
- Returns:
- The list of
Pair<QName, Boolean>sort properties.
-
buildAssocTypes
protected Set<org.alfresco.service.namespace.QName> buildAssocTypes(org.alfresco.service.namespace.QName assocTypeQName)
-
buildSearchTypesAndIgnoreAspects
protected org.alfresco.util.Pair<Set<org.alfresco.service.namespace.QName>,Set<org.alfresco.service.namespace.QName>> buildSearchTypesAndIgnoreAspects(org.alfresco.service.namespace.QName nodeTypeQName, boolean includeSubTypes, Set<org.alfresco.service.namespace.QName> ignoreQNameTypes, Boolean includeFiles, Boolean includeFolders)
-
buildSearchTypesAndIgnoreAspects
protected org.alfresco.util.Pair<Set<org.alfresco.service.namespace.QName>,Set<org.alfresco.service.namespace.QName>> buildSearchTypesAndIgnoreAspects(Parameters parameters)
-
deleteNode
public void deleteNode(String nodeId, Parameters parameters)
Description copied from interface:NodesDelete the given node. Note: will cascade delete for a folder.- Specified by:
deleteNodein interfaceNodes- Parameters:
nodeId- String id of node (folder or document)parameters- theParametersobject to get the parameters passed into the request - permanent (default false)
-
createNode
public Node createNode(String parentFolderNodeId, Node nodeInfo, Parameters parameters)
Description copied from interface:NodesCreate node - folder or (empty) file.- Specified by:
createNodein interfaceNodes- Returns:
-
addCustomAspects
public void addCustomAspects(org.alfresco.service.cmr.repository.NodeRef nodeRef, List<String> aspectNames, List<org.alfresco.service.namespace.QName> excludedAspects)Description copied from interface:NodesAdd aspects to the specified NodeRef. Aspects that appear in the exclusions list will be ignored.- Specified by:
addCustomAspectsin interfaceNodes
-
addChildren
public List<AssocChild> addChildren(String parentNodeId, List<AssocChild> entities)
- Specified by:
addChildrenin interfaceNodes- Returns:
-
addTargets
public List<AssocTarget> addTargets(String sourceNodeId, List<AssocTarget> entities)
- Specified by:
addTargetsin interfaceNodes- Returns:
-
getAssocType
public org.alfresco.service.namespace.QName getAssocType(String assocTypeQNameStr)
- Specified by:
getAssocTypein interfaceNodes
-
getAssocType
public org.alfresco.service.namespace.QName getAssocType(String assocTypeQNameStr, boolean mandatory)
- Specified by:
getAssocTypein interfaceNodes
-
postActivity
protected void postActivity(org.alfresco.rest.api.impl.NodesImpl.Activity_Type activity_type, org.alfresco.service.cmr.activities.ActivityInfo activityInfo, boolean aSync)Posts activities based on the activity_type. If the method is called with aSync=true then a TransactionListener is used post the activity afterCommit. Otherwise the activity posting is done synchronously.- Parameters:
activity_type-activityInfo-aSync-
-
getActivityInfo
protected org.alfresco.service.cmr.activities.ActivityInfo getActivityInfo(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, org.alfresco.service.cmr.repository.NodeRef nodeRef)
-
determineActivityType
protected static String determineActivityType(org.alfresco.rest.api.impl.NodesImpl.Activity_Type activity_type, boolean isFolder)
-
isSpecialNode
protected boolean isSpecialNode(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.namespace.QName type)Check for special case: additional node validation (pending common lower-level service support) for blacklist of system nodes that should not be deleted or locked, eg. Company Home, Sites, Data Dictionary- Parameters:
nodeRef-type-- Returns:
-
updateNode
public Node updateNode(String nodeId, Node nodeInfo, Parameters parameters)
Description copied from interface:NodesUpdate node meta-data.- Specified by:
updateNodein interfaceNodes- Returns:
-
updateNodeImpl
protected org.alfresco.service.cmr.repository.NodeRef updateNodeImpl(String nodeId, Node nodeInfo, Parameters parameters)
-
processNodePermissions
protected void processNodePermissions(org.alfresco.service.cmr.repository.NodeRef nodeRef, Node nodeInfo)
-
moveOrCopyNode
public Node moveOrCopyNode(String sourceNodeId, String targetParentId, String name, Parameters parameters, boolean isCopy)
Description copied from interface:NodesMove or Copy node- Specified by:
moveOrCopyNodein interfaceNodes- Returns:
-
updateCustomAspects
public void updateCustomAspects(org.alfresco.service.cmr.repository.NodeRef nodeRef, List<String> aspectNames, List<org.alfresco.service.namespace.QName> excludedAspects)Description copied from interface:NodesUpdate aspects for the specified NodeRef. An empty list will result in aspects being removed.- Specified by:
updateCustomAspectsin interfaceNodes
-
moveOrCopyImpl
protected org.alfresco.service.cmr.model.FileInfo moveOrCopyImpl(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String name, boolean isCopy)
-
getContent
public BinaryResource getContent(String fileNodeId, Parameters parameters, boolean recordActivity)
Description copied from interface:NodesDownload file content.- Specified by:
getContentin interfaceNodesrecordActivity- true, if an activity post is required.- Returns:
-
getContent
public BinaryResource getContent(org.alfresco.service.cmr.repository.NodeRef nodeRef, Parameters parameters, boolean recordActivity)
Description copied from interface:NodesDownload file content.- Specified by:
getContentin interfaceNodes- Parameters:
nodeRef- the content nodeRefrecordActivity- true, if an activity post is required.- Returns:
-
updateContent
public Node updateContent(String fileNodeId, BasicContentInfo contentInfo, InputStream stream, Parameters parameters)
Description copied from interface:NodesUploads file content (updates existing node with new content). Note: may create a new version, depending on versioning behaviour.- Specified by:
updateContentin interfaceNodes- Returns:
-
createVersion
protected void createVersion(org.alfresco.service.cmr.repository.NodeRef nodeRef, boolean isVersioned, org.alfresco.service.cmr.version.VersionType versionType, String reason)
-
upload
public Node upload(String parentFolderNodeId, org.springframework.extensions.webscripts.servlet.FormData formData, Parameters parameters)
Description copied from interface:NodesUploads file content and meta-data into the repository.- Specified by:
uploadin interfaceNodes- Parameters:
parentFolderNodeId- String id of parent folder node or well-known alias, eg. "-root-" or "-my-"formData- theFormDataparameters- theParametersobject to get the parameters passed into the request- Returns:
Nodeif successful
-
createQName
public org.alfresco.service.namespace.QName createQName(String qnameStr)
Helper to create a QName from either a fully qualified or short-name QName string- Specified by:
createQNamein interfaceNodes- Parameters:
qnameStr- Fully qualified or short-name QName string- Returns:
- QName
-
createQNames
protected List<org.alfresco.service.namespace.QName> createQNames(List<String> qnameStrList, List<org.alfresco.service.namespace.QName> excludedProps)
Helper to create a QName from either a fully qualified or short-name QName string- Parameters:
qnameStrList- list of fully qualified or short-name QName stringexcludedProps-- Returns:
- a list of
QNameobjects
-
lock
public Node lock(String nodeId, LockInfo lockInfo, Parameters parameters)
Description copied from interface:NodesLock a node
-
unlock
public Node unlock(String nodeId, Parameters parameters)
Description copied from interface:NodesUnlock a node
-
getNodeService
protected org.alfresco.service.cmr.repository.NodeService getNodeService()
-
getDictionaryService
protected org.alfresco.service.cmr.dictionary.DictionaryService getDictionaryService()
-
getFileFolderService
protected org.alfresco.service.cmr.model.FileFolderService getFileFolderService()
-
getNamespaceService
protected org.alfresco.service.namespace.NamespaceService getNamespaceService()
-
getPermissionService
protected org.alfresco.service.cmr.security.PermissionService getPermissionService()
-
getMimetypeService
protected org.alfresco.service.cmr.repository.MimetypeService getMimetypeService()
-
getContentService
protected org.alfresco.service.cmr.repository.ContentService getContentService()
-
getActionService
protected org.alfresco.service.cmr.action.ActionService getActionService()
-
getVersionService
protected org.alfresco.service.cmr.version.VersionService getVersionService()
-
getPersonService
protected org.alfresco.service.cmr.security.PersonService getPersonService()
-
getOwnableService
protected org.alfresco.service.cmr.security.OwnableService getOwnableService()
-
getAuthorityService
protected org.alfresco.service.cmr.security.AuthorityService getAuthorityService()
-
getThumbnailService
@Deprecated protected org.alfresco.service.cmr.thumbnail.ThumbnailService getThumbnailService()
Deprecated.
-
getSiteService
protected org.alfresco.service.cmr.site.SiteService getSiteService()
-
getPoster
protected org.alfresco.service.cmr.activities.ActivityPoster getPoster()
-
getRetryingTransactionHelper
protected org.alfresco.repo.transaction.RetryingTransactionHelper getRetryingTransactionHelper()
-
getNodeAssocService
protected NodeAssocService getNodeAssocService()
-
getLockService
protected org.alfresco.service.cmr.lock.LockService getLockService()
-
getSmartStore
protected org.alfresco.repo.virtual.store.VirtualStore getSmartStore()
-
getQuickShareLinks
protected QuickShareLinks getQuickShareLinks()
-
getRepositoryHelper
protected org.alfresco.repo.model.Repository getRepositoryHelper()
-
-