From 71f802c2b9504b618f21b9e5967a91bdc1305781 Mon Sep 17 00:00:00 2001 From: Jamal Kaabi-Mofrad Date: Tue, 10 May 2016 10:44:19 +0000 Subject: [PATCH] Merged FILE-FOLDER-API (5.2.0) to HEAD (5.2) 121221 jvonka: FileFolder API - minor update for get/list node info (aspectNames & properties) - now hides all "sys" aspects & properties (not just "referenceable" & "localizable") - pre-work (eg. before implementing "move") - in the future, we could add advanced query option to also return these RA-634, RA-638 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@126402 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/rest/api/impl/NodesImpl.java | 36 +++++++++---------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/source/java/org/alfresco/rest/api/impl/NodesImpl.java b/source/java/org/alfresco/rest/api/impl/NodesImpl.java index 1e2a71ca1f..12300bfadb 100644 --- a/source/java/org/alfresco/rest/api/impl/NodesImpl.java +++ b/source/java/org/alfresco/rest/api/impl/NodesImpl.java @@ -197,10 +197,13 @@ public class NodesImpl implements Nodes this.defaultIgnoreTypes = ignoreTypes; } - private static final List EXCLUDED_ASPECTS = Arrays.asList( - ContentModel.ASPECT_REFERENCEABLE, - ContentModel.ASPECT_LOCALIZED); + // excluded namespaces (aspects and properties) + private static final List EXCLUDED_NS = Arrays.asList(NamespaceService.SYSTEM_MODEL_1_0_URI); + // excluded aspects + private static final List EXCLUDED_ASPECTS = Arrays.asList(); + + // excluded properties private static final List EXCLUDED_PROPS = Arrays.asList( // top-level minimal info ContentModel.PROP_NAME, @@ -209,13 +212,6 @@ public class NodesImpl implements Nodes ContentModel.PROP_CREATOR, ContentModel.PROP_CREATED, ContentModel.PROP_CONTENT, - // sys:localized - ContentModel.PROP_LOCALE, - // sys:referenceable - ContentModel.PROP_NODE_UUID, - ContentModel.PROP_STORE_IDENTIFIER, - ContentModel.PROP_STORE_PROTOCOL, - ContentModel.PROP_NODE_DBID, // other - TBC ContentModel.PROP_INITIAL_VERSION, ContentModel.PROP_AUTO_VERSION_PROPS, @@ -470,7 +466,7 @@ public class NodesImpl implements Nodes } } - private NodeRef getParentNodeRef(final NodeRef nodeRef) + private NodeRef getParentNodeRef(NodeRef nodeRef) { if (repositoryHelper.getCompanyHome().equals(nodeRef)) { @@ -781,11 +777,11 @@ public class NodesImpl implements Nodes { // return all properties selectedProperties = new ArrayList<>(nodeProps.size()); - for (QName name : nodeProps.keySet()) + for (QName propQName : nodeProps.keySet()) { - if (!EXCLUDED_PROPS.contains(name)) + if ((! EXCLUDED_NS.contains(propQName.getNamespaceURI())) && (! EXCLUDED_PROPS.contains(propQName))) { - selectedProperties.add(name); + selectedProperties.add(propQName); } } } @@ -825,11 +821,11 @@ public class NodesImpl implements Nodes { List aspectNames = new ArrayList<>(nodeAspects.size()); - for (QName aspectName : nodeAspects) + for (QName aspectQName : nodeAspects) { - if (! EXCLUDED_ASPECTS.contains(aspectName)) + if ((! EXCLUDED_NS.contains(aspectQName.getNamespaceURI())) && (! EXCLUDED_ASPECTS.contains(aspectQName))) { - aspectNames.add(aspectName.toPrefixString(namespaceService)); + aspectNames.add(aspectQName.toPrefixString(namespaceService)); } } @@ -1094,7 +1090,7 @@ public class NodesImpl implements Nodes for (QName aspectQName : aspectQNames) { - if (EXCLUDED_ASPECTS.contains(aspectQName) || aspectQName.equals(ContentModel.ASPECT_AUDITABLE)) + if (EXCLUDED_NS.contains(aspectQName.getNamespaceURI()) || EXCLUDED_ASPECTS.contains(aspectQName) || aspectQName.equals(ContentModel.ASPECT_AUDITABLE)) { continue; // ignore } @@ -1107,7 +1103,7 @@ public class NodesImpl implements Nodes for (QName existingAspect : existingAspects) { - if (EXCLUDED_ASPECTS.contains(existingAspect) || existingAspect.equals(ContentModel.ASPECT_AUDITABLE)) + if (EXCLUDED_NS.contains(existingAspect.getNamespaceURI()) || EXCLUDED_ASPECTS.contains(existingAspect) || existingAspect.equals(ContentModel.ASPECT_AUDITABLE)) { continue; // ignore } @@ -1585,7 +1581,7 @@ public class NodesImpl implements Nodes List result = new ArrayList<>(qnameStrList.size()); for (String str : qnameStrList) { - if (str.startsWith(PREFIX)) + if (str.startsWith(PREFIX)) { str = str.substring(PREFIX.length()); }