diff --git a/source/java/org/alfresco/jcr/item/JCRPath.java b/source/java/org/alfresco/jcr/item/JCRPath.java index a7f8b43c01..62d6249af8 100644 --- a/source/java/org/alfresco/jcr/item/JCRPath.java +++ b/source/java/org/alfresco/jcr/item/JCRPath.java @@ -20,7 +20,9 @@ package org.alfresco.jcr.item; import java.util.StringTokenizer; +import org.alfresco.repo.tenant.TenantService; import org.alfresco.service.cmr.repository.Path; +import org.alfresco.service.cmr.repository.Path.Element; import org.alfresco.service.namespace.NamespacePrefixResolver; import org.alfresco.service.namespace.QName; @@ -157,6 +159,15 @@ public class JCRPath return path.hashCode(); } + /* (non-Javadoc) + * @see org.alfresco.service.cmr.repository.Path.Element#getBaseNameElement(org.alfresco.repo.tenant.TenantService) + */ + @Override + public Element getBaseNameElement(TenantService tenantService) + { + return new SimpleElement(path); + } + } /** diff --git a/source/java/org/alfresco/repo/audit/access/NodeChangeTest.java b/source/java/org/alfresco/repo/audit/access/NodeChangeTest.java index 1e1cb701df..80a8799844 100644 --- a/source/java/org/alfresco/repo/audit/access/NodeChangeTest.java +++ b/source/java/org/alfresco/repo/audit/access/NodeChangeTest.java @@ -33,10 +33,12 @@ import java.util.Map; import java.util.Set; import org.alfresco.model.ContentModel; +import org.alfresco.repo.tenant.TenantService; import org.alfresco.service.cmr.repository.ChildAssociationRef; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeService; import org.alfresco.service.cmr.repository.Path; +import org.alfresco.service.cmr.repository.Path.Element; import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.service.cmr.version.Version; import org.alfresco.service.namespace.NamespaceService; @@ -128,6 +130,12 @@ public class NodeChangeTest { return name; } + + @Override + public Element getBaseNameElement(TenantService tenantService) + { + return this; + } }); return path; } diff --git a/source/java/org/alfresco/repo/solr/SOLRTrackingComponentImpl.java b/source/java/org/alfresco/repo/solr/SOLRTrackingComponentImpl.java index 0e13f5dd70..1b69afd621 100644 --- a/source/java/org/alfresco/repo/solr/SOLRTrackingComponentImpl.java +++ b/source/java/org/alfresco/repo/solr/SOLRTrackingComponentImpl.java @@ -579,14 +579,19 @@ public class SOLRTrackingComponentImpl implements SOLRTrackingComponent } Collection> categoryPaths = getCategoryPaths(pair.getSecond(), aspects, props); List directPaths = nodeDAO.getPaths(pair, false); - + Collection> paths = new ArrayList>(directPaths.size() + categoryPaths.size()); for (Path path : directPaths) { - paths.add(new Pair(path, null)); + paths.add(new Pair(path.getBaseNamePath(tenantService), null)); } - paths.addAll(categoryPaths); - + for(Pair catPair : categoryPaths) + { + paths.add(new Pair(catPair.getFirst().getBaseNamePath(tenantService), catPair.getSecond())); + } + + + nodeMetaData.setPaths(paths); } diff --git a/source/java/org/alfresco/repo/transfer/PathHelper.java b/source/java/org/alfresco/repo/transfer/PathHelper.java index 9fcd13a6ea..74fa1a5618 100644 --- a/source/java/org/alfresco/repo/transfer/PathHelper.java +++ b/source/java/org/alfresco/repo/transfer/PathHelper.java @@ -21,7 +21,9 @@ package org.alfresco.repo.transfer; import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.alfresco.repo.tenant.TenantService; import org.alfresco.service.cmr.repository.Path; +import org.alfresco.service.cmr.repository.Path.Element; import org.alfresco.util.ISO9075; public class PathHelper @@ -73,6 +75,15 @@ public class PathHelper { return elementString; } + + /* (non-Javadoc) + * @see org.alfresco.service.cmr.repository.Path.Element#getBaseNameElement(org.alfresco.repo.tenant.TenantService) + */ + @Override + public Element getBaseNameElement(TenantService tenantService) + { + return new SimplePathElement(elementString); + } }