diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/acl.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/acl.get.desc.xml index 0aa48ccbaa..0cafb1b30c 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/acl.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/acl.get.desc.xml @@ -13,7 +13,25 @@ /cmis/s/{store}/p{path}/acl /api/node/{store_type}/{store_id}/{id}/acl - /api/path/{store_type}/{store_id}/{path}/acl + /api/path/{store_type}/{store_id}/{nodepath}/acl + + + store + the store name + + + id + the node id of the object + + + path + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) + + argument diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/acl.put.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/acl.put.desc.xml index 2a4fc7298b..9bf068f222 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/acl.put.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/acl.put.desc.xml @@ -14,7 +14,25 @@ /cmis/s/{store}/p{path}/acl /api/node/{store_type}/{store_id}/{id}/acl - /api/path/{store_type}/{store_id}/{path}/acl + /api/path/{store_type}/{store_id}/{nodepath}/acl + + + store + the store name + + + id + the node id of the object + + + path + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) + + argument diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/allowableactions.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/allowableactions.get.desc.xml index a0b299c59c..7f308fc595 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/allowableactions.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/allowableactions.get.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/allowableactions /api/node/{store_type}/{store_id}/{id}/allowableactions - /api/path/{store_type}/{store_id}/{path}/allowableactions + /api/path/{store_type}/{store_id}/{nodepath}/allowableactions store @@ -26,7 +26,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/children.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/children.get.desc.xml index f17a90300d..c504e87ea2 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/children.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/children.get.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/children?types={types?}&filter={filter?}&skipCount={skipCount?}&maxItems={maxItems?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?}&orderBy={orderBy?} /api/node/{store_type}/{store_id}/{id}/children?types={types?}&filter={filter?}&skipCount={skipCount?}&maxItems={maxItems?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?}&orderBy={orderBy?} - /api/path/{store_type}/{store_id}/{path}/children?types={types?}&filter={filter?}&skipCount={skipCount?}&maxItems={maxItems?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?}&orderBy={orderBy?} + /api/path/{store_type}/{store_id}/{nodepath}/children?types={types?}&filter={filter?}&skipCount={skipCount?}&maxItems={maxItems?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?}&orderBy={orderBy?} store @@ -26,7 +26,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) types diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/children.post.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/children.post.desc.xml index 5b0adaf94e..17b661153e 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/children.post.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/children.post.desc.xml @@ -15,7 +15,7 @@ /cmis/s/{store}/p{path}/children?sourceFolderId={sourceFolderId}&versioningState={versioningState?} /api/node/{store_type}/{store_id}/{id}/children?sourceFolderId={sourceFolderId}&versioningState={versioningState?} - /api/path/{store_type}/{store_id}/{path}/children?sourceFolderId={sourceFolderId}&versioningState={versioningState?} + /api/path/{store_type}/{store_id}/{nodepath}/children?sourceFolderId={sourceFolderId}&versioningState={versioningState?} store @@ -27,7 +27,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) sourceFolderId diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/content.delete.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/content.delete.desc.xml index 31302a7cf7..4292ac1fc4 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/content.delete.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/content.delete.desc.xml @@ -14,10 +14,10 @@ /cmis/s/{store}/p{path}/content{property} /api/node/content{property}/{store_type}/{store_id}/{id} - /api/path/content{property}/{store_type}/{store_id}/{id} + /api/path/content{property}/{store_type}/{store_id}/{nodepath} /api/avmpath/content{property}/{store_id}/{id} /api/node/{store_type}/{store_id}/{id}/content{property} - /api/path/{store_type}/{store_id}/{id}/content{property} + /api/path/{store_type}/{store_id}/{nodepath}/content{property} @@ -30,7 +30,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) property diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/content.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/content.get.desc.xml index 7d29ae356e..4af15ecd1a 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/content.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/content.get.desc.xml @@ -15,10 +15,10 @@ /api/node/content{property}/{store_type}/{store_id}/{id}?a={attach?}&streamId={streamId?} - /api/path/content{property}/{store_type}/{store_id}/{path}?a={attach?}&streamId={streamId?} + /api/path/content{property}/{store_type}/{store_id}/{nodepath}?a={attach?}&streamId={streamId?} /api/avmpath/content{property}/{store_id}/{avmpath}?a={attach?}&streamId={streamId?} /api/node/{store_type}/{store_id}/{id}/content{property}?a={attach?}&streamId={streamId?} - /api/path/{store_type}/{store_id}/{path}/content{property}?a={attach?}&streamId={streamId?} + /api/path/{store_type}/{store_id}/{nodepath}/content{property}?a={attach?}&streamId={streamId?} @@ -31,7 +31,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) property diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/content.put.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/content.put.desc.xml index 8f70fde467..5dd2a15c81 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/content.put.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/content.put.desc.xml @@ -14,10 +14,10 @@ /cmis/s/{store}/p{path}/content{property}?overwriteFlag={overwriteFlag?} /api/node/content{property}/{store_type}/{store_id}/{id}?overwriteFlag={overwriteFlag?} - /api/path/content{property}/{store_type}/{store_id}/{id}?overwriteFlag={overwriteFlag?} + /api/path/content{property}/{store_type}/{store_id}/{nodepath}?overwriteFlag={overwriteFlag?} /api/avmpath/content{property}/{store_id}/{id}?overwriteFlag={overwriteFlag?} /api/node/{store_type}/{store_id}/{id}/content{property}?overwriteFlag={overwriteFlag?} - /api/path/{store_type}/{store_id}/{id}/content{property}?overwriteFlag={overwriteFlag?} + /api/path/{store_type}/{store_id}/{nodepath}/content{property}?overwriteFlag={overwriteFlag?} @@ -30,7 +30,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) property diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/descendants.delete.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/descendants.delete.desc.xml index 7205ca7786..bf2f6d74ae 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/descendants.delete.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/descendants.delete.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/descendants?continueOnFailure={continueOnFailure?}&unfileObjects={unfileObjects} /api/node/{store_type}/{store_id}/{id}/descendants?continueOnFailure={continueOnFailure?}&unfileObjects={unfileObjects} - /api/path/{store_type}/{store_id}/{path}/descendants?continueOnFailure={continueOnFailure?}&unfileObjects={unfileObjects} + /api/path/{store_type}/{store_id}/{nodepath}/descendants?continueOnFailure={continueOnFailure?}&unfileObjects={unfileObjects} @@ -27,7 +27,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) continueOnFailure diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/descendants.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/descendants.get.desc.xml index eec4626d5f..c47dafa687 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/descendants.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/descendants.get.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/descendants?types={types}&filter={filter?}&depth={depth?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?} /api/node/{store_type}/{store_id}/{id}/descendants?types={types}&filter={filter?}&depth={depth?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?} - /api/path/{store_type}/{store_id}/{path}/descendants?types={types}&filter={filter?}&depth={depth?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?} + /api/path/{store_type}/{store_id}/{nodepath}/descendants?types={types}&filter={filter?}&depth={depth?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?} store @@ -26,7 +26,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) types diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/item.delete.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/item.delete.desc.xml index 3a7e0a4d97..e81874c016 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/item.delete.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/item.delete.desc.xml @@ -14,7 +14,25 @@ /cmis/s/{store}/p{path} /api/node/{store_type}/{store_id}/{id} - /api/path/{store_type}/{store_id}/{path} + /api/path/{store_type}/{store_id}/{nodepath} + + + store + the store name + + + id + the node id of the folder + + + path + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) + + diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/item.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/item.get.desc.xml index 4588ed38d8..ca179a3fde 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/item.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/item.get.desc.xml @@ -20,7 +20,7 @@ /api/node/{store_type}/{store_id}/{id}?filter={filter?}&returnVersion={returnVersion?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&includeACL={includeACL?}&renditionFilter={renditionFilter?} - /api/path/{store_type}/{store_id}/{path}?filter={filter?}&returnVersion={returnVersion?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&includeACL={includeACL?}&renditionFilter={renditionFilter?} + /api/path/{store_type}/{store_id}/{nodepath}?filter={filter?}&returnVersion={returnVersion?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&includeACL={includeACL?}&renditionFilter={renditionFilter?} @@ -33,7 +33,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) noderef diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/item.patch.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/item.patch.desc.xml index 6e0bb50f7b..deef0341b7 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/item.patch.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/item.patch.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path} /api/node/{store_type}/{store_id}/{id} - /api/path/{store_type}/{store_id}/{path} + /api/path/{store_type}/{store_id}/{nodepath} store @@ -26,7 +26,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/item.put.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/item.put.desc.xml index f40c4636bf..71ae67ad90 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/item.put.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/item.put.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path} /api/node/{store_type}/{store_id}/{id} - /api/path/{store_type}/{store_id}/{path} + /api/path/{store_type}/{store_id}/{nodepath} store @@ -26,7 +26,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/parent.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/parent.get.desc.xml index 721fe8e5f3..464abf46c0 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/parent.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/parent.get.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/parent?filter={filter?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?} /api/node/{store_type}/{store_id}/{id}/parent?filter={filter?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?} - /api/path/{store_type}/{store_id}/{path}/parent?filter={filter?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?} + /api/path/{store_type}/{store_id}/{nodepath}/parent?filter={filter?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?} store @@ -26,7 +26,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) filter diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/parents.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/parents.get.desc.xml index 4f53faccdd..c2863c58b7 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/parents.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/parents.get.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/parents?filter={filter?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?}&includeRelativePathSegment={includeRelativePathSegment?} /api/node/{store_type}/{store_id}/{id}/parents?filter={filter?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?}&includeRelativePathSegment={includeRelativePathSegment?} - /api/path/{store_type}/{store_id}/{path}/parents?filter={filter?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?}&includeRelativePathSegment={includeRelativePathSegment?} + /api/path/{store_type}/{store_id}/{nodepath}/parents?filter={filter?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?}&includeRelativePathSegment={includeRelativePathSegment?} store @@ -26,7 +26,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) filter diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/policies.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/policies.get.desc.xml index 402d50ae04..58966b0bf5 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/policies.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/policies.get.desc.xml @@ -15,7 +15,7 @@ /api/node/{store_type}/{store_id}/{id}/pols?filter={filter?}&skipCount={skipCount?}&maxItems={maxItems?} - /api/path/{store_type}/{store_id}/{id}/pols?filter={filter?}&skipCount={skipCount?}&maxItems={maxItems?} + /api/path/{store_type}/{store_id}/{nodepath}/pols?filter={filter?}&skipCount={skipCount?}&maxItems={maxItems?} store @@ -27,7 +27,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) filter diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/policies.post.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/policies.post.desc.xml index 097101ed34..7b63791ac5 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/policies.post.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/policies.post.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/pols /api/node/{store_type}/{store_id}/{id}/pols - /api/path/{store_type}/{store_id}/{id}/pols + /api/path/{store_type}/{store_id}/{nodepath}/pols store @@ -26,7 +26,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/relationships.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/relationships.get.desc.xml index 7a0ddc5512..f27c68f989 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/relationships.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/relationships.get.desc.xml @@ -15,7 +15,7 @@ /api/node/{store_type}/{store_id}/{id}/rels?filter={filter?}&typeId={typeId?}&includeSubRelationshipTypes={includeSubRelationshipTypes?}&relationshipDirection={relationshipDirection?}&skipCount={skipCount?}&maxItems={maxItems?}&includeAllowableActions={includeAllowableActions?}&filter={filter?} - /api/path/{store_type}/{store_id}/{id}/rels?filter={filter?}&typeId={typeId?}&includeSubRelationshipTypes={includeSubRelationshipTypes?}&relationshipDirection={relationshipDirection?}&skipCount={skipCount?}&maxItems={maxItems?}&includeAllowableActions={includeAllowableActions?}&filter={filter?} + /api/path/{store_type}/{store_id}/{nodepath}/rels?filter={filter?}&typeId={typeId?}&includeSubRelationshipTypes={includeSubRelationshipTypes?}&relationshipDirection={relationshipDirection?}&skipCount={skipCount?}&maxItems={maxItems?}&includeAllowableActions={includeAllowableActions?}&filter={filter?} @@ -26,6 +26,14 @@ id the node id of the folder + + path + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) + typeId if specified, return only relationships whose type is of the type specified, otherwise return relationships of all types diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/relationships.post.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/relationships.post.desc.xml index 77182d5fec..670f955c8a 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/relationships.post.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/relationships.post.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/rels /api/node/{store_type}/{store_id}/{id}/rels - /api/path/{store_type}/{store_id}/{id}/rels + /api/path/{store_type}/{store_id}/{nodepath}/rels store @@ -26,7 +26,11 @@ path - the path of the object + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/tree.delete.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/tree.delete.desc.xml index 08609ab6af..ae6d2e505f 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/tree.delete.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/tree.delete.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/tree?continueOnFailure={continueOnFailure?}&unfileObjects={unfileObjects} /api/node/{store_type}/{store_id}/{id}/tree?continueOnFailure={continueOnFailure?}&unfileObjects={unfileObjects} - /api/path/{store_type}/{store_id}/{path}/tree?continueOnFailure={continueOnFailure?}&unfileObjects={unfileObjects} + /api/path/{store_type}/{store_id}/{nodepath}/tree?continueOnFailure={continueOnFailure?}&unfileObjects={unfileObjects} store @@ -26,7 +26,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) continueOnFailure diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/tree.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/tree.get.desc.xml index dbd353da9c..4342e3d0b7 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/tree.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/tree.get.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/tree?filter={filter?}&depth={depth?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?} /api/node/{store_type}/{store_id}/{id}/tree?filter={filter?}&depth={depth?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?} - /api/path/{store_type}/{store_id}/{path}/tree?filter={filter?}&depth={depth?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?} + /api/path/{store_type}/{store_id}/{nodepath}/tree?filter={filter?}&depth={depth?}&includeAllowableActions={includeAllowableActions?}&includeRelationships={includeRelationships?}&renditionFilter={renditionFilter?} store @@ -24,9 +24,13 @@ id the node id of the folder - + path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) depth diff --git a/config/alfresco/templates/webscripts/org/alfresco/cmis/versions.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/cmis/versions.get.desc.xml index 304c60297d..8956f7daa9 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/cmis/versions.get.desc.xml +++ b/config/alfresco/templates/webscripts/org/alfresco/cmis/versions.get.desc.xml @@ -14,7 +14,7 @@ /cmis/s/{store}/p{path}/versions?filter={filter?}&includeAllowableActions={includeAllowableActions?} /api/node/{store_type}/{store_id}/{id}/versions?filter={filter?}&includeAllowableActions={includeAllowableActions?} - /api/path/{store_type}/{store_id}/{path}/versions?filter={filter?}&includeAllowableActions={includeAllowableActions?} + /api/path/{store_type}/{store_id}/{nodepath}/versions?filter={filter?}&includeAllowableActions={includeAllowableActions?} @@ -27,7 +27,11 @@ path - the path of the folder + the path of the object (relative to CMIS root, typically "Company Home") + + + nodepath + the path of the object (relative to root of Alfresco store) filter diff --git a/config/alfresco/templates/webscripts/org/alfresco/repository/blogs/blogpost.lib.ftl b/config/alfresco/templates/webscripts/org/alfresco/repository/blogs/blogpost.lib.ftl index 824d33d252..40289f26b3 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/repository/blogs/blogpost.lib.ftl +++ b/config/alfresco/templates/webscripts/org/alfresco/repository/blogs/blogpost.lib.ftl @@ -18,10 +18,11 @@ <#macro addContent item> <#escape x as jsonUtils.encodeJSONString(x)> - <#if (contentLength?? && contentLength > -1 && (item.node.content?length > contentLength))> - "content": "${stringUtils.stripUnsafeHTML(item.node.content)?substring(0, contentLength)}", + <#assign safecontent=stringUtils.stripUnsafeHTML(item.node.content)> + <#if (contentLength?? && contentLength > -1 && (safecontent?length > contentLength))> + "content": "${safecontent?substring(0, contentLength)}", <#else> - "content": "${stringUtils.stripUnsafeHTML(item.node.content)}", + "content": "${safecontent}", diff --git a/config/alfresco/templates/webscripts/org/alfresco/repository/discussions/post.lib.ftl b/config/alfresco/templates/webscripts/org/alfresco/repository/discussions/post.lib.ftl index b5e721ed93..cb88134162 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/repository/discussions/post.lib.ftl +++ b/config/alfresco/templates/webscripts/org/alfresco/repository/discussions/post.lib.ftl @@ -16,10 +16,11 @@ <#macro addContent post> <#escape x as jsonUtils.encodeJSONString(x)> - <#if (contentLength?? && contentLength > -1 && (post.content?length > contentLength))> - "content": "${stringUtils.stripUnsafeHTML(post.content)?substring(0, contentLength)}", + <#assign safecontent=stringUtils.stripUnsafeHTML(post.content)> + <#if (contentLength?? && contentLength > -1 && (safecontent?length > contentLength))> + "content": "${safecontent?substring(0, contentLength)}", <#else> - "content": "${stringUtils.stripUnsafeHTML(post.content)}", + "content": "${safecontent}", diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/doclist.get.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/doclist.get.js index edbc676b1d..105642f219 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/doclist.get.js +++ b/config/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/doclist.get.js @@ -122,7 +122,7 @@ function getDoclist() if (filterParams.variablePath || item.isLink) { locationNode = (item.isLink && item.type == "document") ? item.linkNode : item.node; - location = Common.getLocation(locationNode); + location = Common.getLocation(locationNode, parsedArgs.libraryRoot); } else { diff --git a/source/java/org/alfresco/repo/cmis/reference/NodePathReference.java b/source/java/org/alfresco/repo/cmis/reference/NodePathReference.java new file mode 100644 index 0000000000..bff04809a6 --- /dev/null +++ b/source/java/org/alfresco/repo/cmis/reference/NodePathReference.java @@ -0,0 +1,81 @@ +/* + * Copyright (C) 2005-2010 Alfresco Software Limited. + * + * This file is part of Alfresco + * + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + */ +package org.alfresco.repo.cmis.reference; + +import org.alfresco.cmis.CMISRepositoryReference; +import org.alfresco.cmis.CMISServices; +import org.alfresco.service.cmr.repository.NodeRef; +import org.alfresco.service.cmr.repository.StoreRef; + + +/** + * Node Path Object Reference + * + * Note: This path is from the root of the store + * + * @author davidc + */ +public class NodePathReference extends AbstractObjectReference +{ + protected String path; + protected String[] reference; + + /** + * Construct + * + * @param cmisServices + * @param repo + * @param path + */ + public NodePathReference(CMISServices cmisServices, CMISRepositoryReference repo, String path) + { + super(cmisServices, repo); + this.path = path; + String[] splitPath = this.path.split("/"); + this.reference = new String[2 + splitPath.length]; + StoreRef storeRef = repo.getStoreRef(); + reference[0] = storeRef.getProtocol(); + reference[1] = storeRef.getIdentifier(); + System.arraycopy(splitPath, 0, reference, 2, splitPath.length); + } + + /* + * (non-Javadoc) + * @see org.alfresco.cmis.CMISObjectReference#getNodeRef() + */ + public NodeRef getNodeRef() + { + return cmisServices.getNode("path", reference); + } + + /** + * @return path + */ + public String getPath() + { + return path; + } + + @Override + public String toString() + { + return "NodePathReference[storeRef=" + repo.getStoreRef() + ",path=" + path + "]"; + } + +} diff --git a/source/java/org/alfresco/repo/cmis/reference/ObjectPathReference.java b/source/java/org/alfresco/repo/cmis/reference/ObjectPathReference.java index 2f51574fd5..2d31639469 100644 --- a/source/java/org/alfresco/repo/cmis/reference/ObjectPathReference.java +++ b/source/java/org/alfresco/repo/cmis/reference/ObjectPathReference.java @@ -27,6 +27,8 @@ import org.alfresco.service.cmr.repository.StoreRef; /** * Path Object Reference * + * Note: This path is relative to the CMIS root path + * * @author davidc */ public class ObjectPathReference extends AbstractObjectReference @@ -44,9 +46,7 @@ public class ObjectPathReference extends AbstractObjectReference public ObjectPathReference(CMISServices cmisServices, CMISRepositoryReference repo, String path) { super(cmisServices, repo); - this.path = path.startsWith("/") ? path : "/" + path; - this.path = (cmisServices.getDefaultRootPath().equals("/") || this.path.startsWith(cmisServices.getDefaultRootPath())) ? - this.path : cmisServices.getDefaultRootPath() + this.path; + this.path = cmisServices.getDefaultRootPath() + path; String[] splitPath = this.path.split("/"); String[] pathSegments = new String[splitPath.length -1]; System.arraycopy(splitPath, 1, pathSegments, 0, splitPath.length -1); diff --git a/source/java/org/alfresco/repo/cmis/reference/ReferenceFactory.java b/source/java/org/alfresco/repo/cmis/reference/ReferenceFactory.java index 37b0ddad98..0ac5391774 100644 --- a/source/java/org/alfresco/repo/cmis/reference/ReferenceFactory.java +++ b/source/java/org/alfresco/repo/cmis/reference/ReferenceFactory.java @@ -20,7 +20,6 @@ package org.alfresco.repo.cmis.reference; import java.util.Map; -import org.alfresco.cmis.CMISDictionaryService; import org.alfresco.cmis.CMISObjectReference; import org.alfresco.cmis.CMISRelationshipReference; import org.alfresco.cmis.CMISRepositoryReference; @@ -110,6 +109,16 @@ public class ReferenceFactory return new ObjectPathReference(cmisService, repo, path); } + String nodepath = templateArgs.get("nodepath"); + if (nodepath == null) + { + nodepath = args.get("nodepath"); + } + if (nodepath != null) + { + return new NodePathReference(cmisService, repo, nodepath); + } + String avmPath = templateArgs.get("avmpath"); if (avmPath != null) { diff --git a/source/java/org/alfresco/repo/cmis/ws/DMObjectServicePort.java b/source/java/org/alfresco/repo/cmis/ws/DMObjectServicePort.java index 2d3e09583a..2ba1adba27 100644 --- a/source/java/org/alfresco/repo/cmis/ws/DMObjectServicePort.java +++ b/source/java/org/alfresco/repo/cmis/ws/DMObjectServicePort.java @@ -306,15 +306,6 @@ public class DMObjectServicePort extends DMAbstractServicePort implements Object CMISTypeDefinition sourceType = cmisService.getTypeDefinition(sourceNodeRef); CMISTypeDefinition targetType = cmisService.getTypeDefinition(targetNodeRef); - if ((null != relationshipType.getAllowedSourceTypes()) && !relationshipType.getAllowedSourceTypes().contains(sourceType)) - { - throw ExceptionUtil.createCmisException(("Source object type is not allowed for \"" + typeId + "\" Relationship type"), EnumServiceException.CONSTRAINT); - } - if ((null != relationshipType.getAllowedTargetTypes()) && !relationshipType.getAllowedTargetTypes().contains(targetType)) - { - throw ExceptionUtil.createCmisException(("Target object type is not allowed for \"" + typeId + "\" Relationship type"), EnumServiceException.CONSTRAINT); - } - QName relationshipTypeQName = relationshipType.getTypeId().getQName(); AssociationDefinition associationDef = dictionaryService.getAssociation(relationshipTypeQName); if (associationDef != null)