Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.1/Cloud)

100983: Merged 5.0.N (5.0.2) to HEAD-BUG-FIX (5.1/Cloud)
      100824: Merged V4.2-BUG-FIX (4.2.5) to 5.0.N (5.0.2)
         100184: Merged V4.1-BUG-FIX (4.1.10) to V4.2-BUG-FIX (4.2.5)
            100131 : Merged DEV to V4.1-BUG-FIX (4.1.10)
               99521 : MNT-9088 : Ghost versions when Document is created with CheckinType CHECKOUT
                  - Don't include PWC in a version series
               99824 : MNT-9088 : Ghost versions when Document is created with CheckinType CHECKOUT
                  - Return PWC as a part of version series. Fixes to pass TCK


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@100998 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Alan Davis
2015-04-01 01:24:34 +00:00
parent 448868345c
commit 6dcac7796e
4 changed files with 84 additions and 17 deletions

View File

@@ -30,6 +30,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
@@ -2215,9 +2216,9 @@ public class AlfrescoCmisServiceImpl extends AbstractCmisService implements Alfr
List<ObjectData> result = new ArrayList<ObjectData>();
// what kind of object is it?
CMISNodeInfo info = getOrCreateNodeInfo(versionSeriesId, "Version Series");
CMISNodeInfo info = getOrCreateNodeInfo(objectId);
if (!info.isVariant(CMISObjectVariant.CURRENT_VERSION))
if (!EnumSet.of(CMISObjectVariant.CURRENT_VERSION, CMISObjectVariant.PWC, CMISObjectVariant.VERSION).contains(info.getObjectVariant()))
{
// the version series id is the id of current version, which is a
// document
@@ -2228,7 +2229,7 @@ public class AlfrescoCmisServiceImpl extends AbstractCmisService implements Alfr
NodeRef nodeRef = info.getNodeRef();
VersionHistory versionHistory = ((CMISNodeInfoImpl) info).getVersionHistory();
if (versionHistory == null)
if (versionHistory == null || info.isPWC())
{
// add current version
result.add(connector.createCMISObject(info, filter, includeAllowableActions, IncludeRelationships.NONE,
@@ -2251,7 +2252,7 @@ public class AlfrescoCmisServiceImpl extends AbstractCmisService implements Alfr
pwcInfo, filter, includeAllowableActions,
IncludeRelationships.NONE, CMISConnector.RENDITION_NONE, false, false));
boolean isObjectInfoRequired = getContext().isObjectInfoRequired();
boolean isObjectInfoRequired = getContext().isObjectInfoRequired();
if (isObjectInfoRequired)
{
getObjectInfo(repositoryId, pwcInfo.getObjectId(), IncludeRelationships.NONE);