RM-500: SOLR: "No items" message after complete Transfer action

* filtered non-existant node from search results



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/BRANCHES/V2.0@42602 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Roy Wetherall
2012-10-15 05:30:22 +00:00
parent ba98a48c1f
commit 020bcb2673

View File

@@ -521,28 +521,35 @@ public class RMAfterInvocationProvider extends RMSecurityCommon
// All permission checks must pass
inclusionMask.set(i, true);
int parentCheckRead = checkRead(returnedObject.getChildAssocRef(i).getParentRef());
int childCheckRead = checkRead(returnedObject.getNodeRef(i));
for (ConfigAttributeDefintion cad : supportedDefinitions)
if (nodeService.exists(returnedObject.getNodeRef(i)) == false)
{
NodeRef testNodeRef = returnedObject.getNodeRef(i);
int checkRead = childCheckRead;
if (cad.parent)
{
testNodeRef = returnedObject.getChildAssocRef(i).getParentRef();
checkRead = parentCheckRead;
}
inclusionMask.set(i, false);
}
else
{
int parentCheckRead = checkRead(returnedObject.getChildAssocRef(i).getParentRef());
int childCheckRead = checkRead(returnedObject.getNodeRef(i));
if (isUnfiltered(testNodeRef))
{
continue;
}
for (ConfigAttributeDefintion cad : supportedDefinitions)
{
NodeRef testNodeRef = returnedObject.getNodeRef(i);
int checkRead = childCheckRead;
if (cad.parent)
{
testNodeRef = returnedObject.getChildAssocRef(i).getParentRef();
checkRead = parentCheckRead;
}
if (inclusionMask.get(i) && (testNodeRef != null) && (checkRead != AccessDecisionVoter.ACCESS_GRANTED))
{
inclusionMask.set(i, false);
}
if (isUnfiltered(testNodeRef))
{
continue;
}
if (inclusionMask.get(i) && (testNodeRef != null) && (checkRead != AccessDecisionVoter.ACCESS_GRANTED))
{
inclusionMask.set(i, false);
}
}
}
// Bug out if we are limiting by size