Merged BRANCHES/V3.4 to HEAD:

23345: Merged BRANCHES/DEV/DC33E to BRANCHES/V3.4:
        23305: Resolve ALF-5324: SDK is missing alfresco-share-3.4.a.jar
        23306: Resolve ALF-5321: Jar generated in SDK example "CustomAspect" is not correct.
        23307: Resolve ALF-5294: Internal Target throws an exception when try to edit it
        23308: Resolve ALF-5332: Exception in SDK CustomAspect
        23309: Resolve ALF-5162: CMIS Web Services: getTypeDescendants() returns a flat list, not a tree
        23326: Resolve ALF-5039: Change events for documents creation are not returned
   23356: Fix to continuous.xml
   23482: Resolve ALF-5438: Required flag is wrong for most CMIS spec defined property definitions
   23488: Resolve ALF-5439: Updatability of cmis:contentStreamFileName must be read-only
   23501: Resolve ALF-5440: Some property definitions don't have descriptions
   23502: Resolve ALF-5534: Subtypes of F:cm:systemfolder should not be creatable

CMIS fixes for cmis.alfresco.com.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@23532 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
David Caruana
2010-11-10 10:38:35 +00:00
parent 6e66b9ad06
commit 3a3b743f18
11 changed files with 43 additions and 32 deletions

View File

@@ -24,9 +24,11 @@ import java.util.HashMap;
import org.alfresco.cmis.CMISDictionaryModel;
import org.alfresco.cmis.CMISInvalidArgumentException;
import org.alfresco.cmis.CMISServices;
import org.alfresco.cmis.CMISTypeDefinition;
import org.alfresco.cmis.CMISTypeId;
import org.alfresco.repo.audit.extractor.AbstractDataExtractor;
import org.alfresco.service.cmr.model.FileInfo;
import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.NodeRef;
/**
@@ -70,8 +72,12 @@ public class CMISChangeLogDataExtractor extends AbstractDataExtractor
{
try
{
CMISTypeId typeId = cmisService.getTypeDefinition(nodeRef).getBaseType().getTypeId();
return typeId.equals(CMISDictionaryModel.DOCUMENT_TYPE_ID) || typeId.equals(CMISDictionaryModel.FOLDER_TYPE_ID);
CMISTypeDefinition typeDef = cmisService.getTypeDefinition(nodeRef);
if (typeDef != null)
{
CMISTypeId typeId = typeDef.getBaseType().getTypeId();
return typeId.equals(CMISDictionaryModel.DOCUMENT_TYPE_ID) || typeId.equals(CMISDictionaryModel.FOLDER_TYPE_ID);
}
}
catch (CMISInvalidArgumentException e)
{
@@ -91,6 +97,10 @@ public class CMISChangeLogDataExtractor extends AbstractDataExtractor
private NodeRef getNodeRef(Serializable data)
{
NodeRef nodeRef = null;
if (data instanceof ChildAssociationRef)
{
nodeRef = ((ChildAssociationRef) data).getChildRef();
}
if (data instanceof FileInfo)
{
nodeRef = ((FileInfo) data).getNodeRef();