Merge from SEAMIST3

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@10730 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
David Caruana
2008-09-04 11:08:13 +00:00
parent d894798ee4
commit ae909e7413
45 changed files with 4443 additions and 2171 deletions

View File

@@ -24,6 +24,7 @@
*/
package org.alfresco.cmis.property;
import org.alfresco.cmis.dictionary.CMISMapping;
import org.alfresco.service.ServiceRegistry;
/**
@@ -34,8 +35,17 @@ import org.alfresco.service.ServiceRegistry;
*/
public abstract class AbstractPropertyAccessor
{
private CMISMapping cmisMapping;
private ServiceRegistry serviceRegistry;
/**
* @param cmisMapping
*/
public void setCMISMapping(CMISMapping cmisMapping)
{
this.cmisMapping = cmisMapping;
}
public void setServiceRegistry(ServiceRegistry serviceRegistry)
{
this.serviceRegistry = serviceRegistry;
@@ -46,4 +56,9 @@ public abstract class AbstractPropertyAccessor
return serviceRegistry;
}
public CMISMapping getCMISMapping()
{
return cmisMapping;
}
}

View File

@@ -31,6 +31,7 @@ import java.util.Map;
import org.alfresco.cmis.dictionary.CMISMapping;
import org.alfresco.cmis.dictionary.CMISScope;
import org.alfresco.cmis.dictionary.ContentStreamAllowed;
import org.alfresco.model.ContentModel;
import org.alfresco.service.ServiceRegistry;
import org.alfresco.service.cmr.repository.NodeRef;
@@ -48,10 +49,23 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
private AbstractGenericPropertyAccessor genericPropertyAccessor;
private CMISMapping cmisMapping;
private ServiceRegistry serviceRegistry;
private boolean strict = false;
/**
* @param cmisMapping
*/
public void setCMISMapping(CMISMapping cmisMapping)
{
this.cmisMapping = cmisMapping;
}
/**
* @param serviceRegistry
*/
public void setServiceRegistry(ServiceRegistry serviceRegistry)
{
this.serviceRegistry = serviceRegistry;
@@ -70,13 +84,13 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
public Map<String, Serializable> getProperties(NodeRef nodeRef)
{
// Map
QName typeQName = CMISMapping.getCmisType(serviceRegistry.getNodeService().getType(nodeRef));
QName typeQName = cmisMapping.getCmisType(serviceRegistry.getNodeService().getType(nodeRef));
CMISScope scope;
if (CMISMapping.isValidCmisDocument(serviceRegistry.getDictionaryService(), typeQName))
if (cmisMapping.isValidCmisDocument(typeQName))
{
scope = CMISScope.DOCUMENT;
}
else if (CMISMapping.isValidCmisFolder(serviceRegistry.getDictionaryService(), typeQName))
else if (cmisMapping.isValidCmisFolder(typeQName))
{
scope = CMISScope.FOLDER;
}
@@ -96,7 +110,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
Map<QName, Serializable> unmapped = serviceRegistry.getNodeService().getProperties(nodeRef);
for (QName propertyQName : unmapped.keySet())
{
String cmisPropertyName = CMISMapping.getCmisPropertyName(serviceRegistry.getNamespaceService(), propertyQName);
String cmisPropertyName = cmisMapping.getCmisPropertyName(propertyQName);
mapped.put(cmisPropertyName, unmapped.get(propertyQName));
}
}
@@ -116,13 +130,13 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
public Serializable getProperty(NodeRef nodeRef, String propertyName)
{
QName typeQName = CMISMapping.getCmisType(serviceRegistry.getNodeService().getType(nodeRef));
QName typeQName = cmisMapping.getCmisType(serviceRegistry.getNodeService().getType(nodeRef));
CMISScope scope;
if (CMISMapping.isValidCmisDocument(serviceRegistry.getDictionaryService(), typeQName))
if (cmisMapping.isValidCmisDocument(typeQName))
{
scope = CMISScope.DOCUMENT;
}
else if (CMISMapping.isValidCmisFolder(serviceRegistry.getDictionaryService(), typeQName))
else if (cmisMapping.isValidCmisFolder(typeQName))
{
scope = CMISScope.FOLDER;
}
@@ -177,9 +191,10 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
// Generic Alfresco mappings
genericPropertyAccessor = new MappingPropertyAccessor();
genericPropertyAccessor.setServiceRegistry(serviceRegistry);
genericPropertyAccessor.setCMISMapping(cmisMapping);
// CMIS Object
addNamedPropertyAccessor(new ObjectIdPropertyAccessor());
addNamedPropertyAccessor(getObjectIdPropertyAccessor());
addNamedPropertyAccessor(getFixedValuePropertyAccessor(CMISMapping.PROP_URI, null, CMISScope.OBJECT));
addNamedPropertyAccessor(getObjectTypeIdPropertyAccessor());
addNamedPropertyAccessor(getSimplePropertyAccessor(CMISMapping.PROP_CREATED_BY, ContentModel.PROP_CREATOR, CMISScope.OBJECT));
@@ -191,16 +206,18 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
// CMIS Document and Folder
addNamedPropertyAccessor(getSimplePropertyAccessor(CMISMapping.PROP_NAME, ContentModel.PROP_NAME, CMISScope.OBJECT));
// CMIS Docuement
// CMIS Document
addNamedPropertyAccessor(getIsImmutablePropertyAccessor());
addNamedPropertyAccessor(getIsLatestVersionPropertyAccessor());
addNamedPropertyAccessor(getIsMajorVersionPropertyAccessor());
addNamedPropertyAccessor(getIsLatestMajorVersionPropertyAccessor());
addNamedPropertyAccessor(getSimplePropertyAccessor(CMISMapping.PROP_VERSION_LABEL, ContentModel.PROP_VERSION_LABEL, CMISScope.DOCUMENT));
addNamedPropertyAccessor(getVersionSeriesIdPropertyAccessor());
addNamedPropertyAccessor(getVersionSeriesIsCheckedOutPropertyAccessor());
addNamedPropertyAccessor(getVersionSeriesCheckedOutByPropertyAccessor());
addNamedPropertyAccessor(getVersionSeriesCheckedOutIdPropertyAccessor());
addNamedPropertyAccessor(getCheckinCommentPropertyAccessor());
addNamedPropertyAccessor(getFixedValuePropertyAccessor(CMISMapping.PROP_CONTENT_STREAM_ALLOWED, Boolean.valueOf(true), CMISScope.DOCUMENT));
addNamedPropertyAccessor(getFixedValuePropertyAccessor(CMISMapping.PROP_CONTENT_STREAM_ALLOWED, ContentStreamAllowed.ALLOWED.toString(), CMISScope.DOCUMENT));
addNamedPropertyAccessor(getContentStreamLengthPropertyAccessor());
addNamedPropertyAccessor(getContentStreamMimetypePropertyAccessor());
addNamedPropertyAccessor(getSimplePropertyAccessor(CMISMapping.PROP_CONTENT_STREAM_FILENAME, ContentModel.PROP_NAME, CMISScope.DOCUMENT));
@@ -221,6 +238,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
SimplePropertyAccessor accessor = new SimplePropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
accessor.setPropertyName(propertyName);
accessor.setMapping(to.toString());
accessor.setScope(scope);
@@ -236,10 +254,19 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
return accessor;
}
public NamedPropertyAccessor getObjectIdPropertyAccessor()
{
ObjectIdPropertyAccessor accessor = new ObjectIdPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
public NamedPropertyAccessor getFixedValuePropertyAccessor(String propertyName, Serializable fixedValue, CMISScope scope)
{
FixedValuePropertyAccessor accessor = new FixedValuePropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
accessor.setPropertyName(propertyName);
accessor.setFixedValue(fixedValue);
accessor.setScope(scope);
@@ -250,6 +277,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
ObjectTypeIdPropertyAccessor accessor = new ObjectTypeIdPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -257,6 +285,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
IsImmutablePropertyAccessor accessor = new IsImmutablePropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -264,6 +293,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
IsLatestVersionPropertyAccessor accessor = new IsLatestVersionPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -271,6 +301,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
IsMajorVersionPropertyAccessor accessor = new IsMajorVersionPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -278,13 +309,23 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
IsLatestMajorVersionPropertyAccessor accessor = new IsLatestMajorVersionPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
public NamedPropertyAccessor getVersionSeriesIdPropertyAccessor()
{
VersionSeriesIdPropertyAccessor accessor = new VersionSeriesIdPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
public NamedPropertyAccessor getVersionSeriesIsCheckedOutPropertyAccessor()
{
VersionSeriesIsCheckedOutPropertyAccessor accessor = new VersionSeriesIsCheckedOutPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -292,6 +333,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
VersionSeriesCheckedOutByPropertyAccessor accessor = new VersionSeriesCheckedOutByPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -299,6 +341,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
VersionSeriesCheckedOutIdPropertyAccessor accessor = new VersionSeriesCheckedOutIdPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -306,6 +349,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
CheckinCommentPropertyAccessor accessor = new CheckinCommentPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -313,6 +357,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
ContentStreamLengthPropertyAccessor accessor = new ContentStreamLengthPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -320,6 +365,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
ContentStreamMimetypePropertyAccessor accessor = new ContentStreamMimetypePropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}
@@ -327,6 +373,7 @@ public class CMISPropertyServiceImpl implements CMISPropertyService, Initializin
{
ParentPropertyAccessor accessor = new ParentPropertyAccessor();
accessor.setServiceRegistry(serviceRegistry);
accessor.setCMISMapping(cmisMapping);
return accessor;
}

View File

@@ -31,6 +31,7 @@ import java.util.Map;
import org.alfresco.cmis.dictionary.BaseCMISTest;
import org.alfresco.cmis.dictionary.CMISMapping;
import org.alfresco.cmis.dictionary.ContentStreamAllowed;
import org.alfresco.model.ContentModel;
import org.alfresco.repo.version.VersionModel;
import org.alfresco.service.cmr.lock.LockType;
@@ -46,9 +47,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
{
NodeRef folder = fileFolderService.create(rootNodeRef, "BaseFolder", ContentModel.TYPE_FOLDER).getNodeRef();
Map<String, Serializable> properties = cmisPropertyService.getProperties(folder);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), folder);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), folder.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.FOLDER_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.FOLDER_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -61,6 +62,8 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertNull(properties.get(CMISMapping.PROP_IS_LATEST_VERSION));
assertNull(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION));
assertNull(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION));
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertNull(properties.get(CMISMapping.PROP_VERSION_SERIES_ID));
assertNull(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT));
assertNull(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY));
assertNull(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID));
@@ -71,7 +74,7 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertNull(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME));
assertNull(properties.get(CMISMapping.PROP_CONTENT_STREAM_URI));
assertEquals(properties.get(CMISMapping.PROP_PARENT), rootNodeRef);
assertEquals(properties.get(CMISMapping.PROP_PARENT), rootNodeRef.toString());
assertNull(properties.get(CMISMapping.PROP_ALLLOWED_CHILD_OBJECT_TYPES));
}
@@ -81,9 +84,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
NodeRef content = fileFolderService.create(rootNodeRef, "BaseContent", ContentModel.TYPE_CONTENT).getNodeRef();
Map<String, Serializable> properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -96,11 +99,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -116,9 +121,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
NodeRef content = fileFolderService.create(rootNodeRef, "BaseContent", ContentModel.TYPE_CONTENT).getNodeRef();
Map<String, Serializable> properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -131,11 +136,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -156,7 +163,7 @@ public class CMISPropertyServiceTest extends BaseCMISTest
long size = writer.getSize();
properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), size);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "text/plain");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -168,9 +175,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
NodeRef content = fileFolderService.create(rootNodeRef, "BaseContent", ContentModel.TYPE_CONTENT).getNodeRef();
Map<String, Serializable> properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -183,11 +190,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -203,6 +212,8 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
@@ -211,9 +222,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
serviceRegistry.getLockService().unlock(content);
properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -226,11 +237,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -246,9 +259,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
NodeRef content = fileFolderService.create(rootNodeRef, "BaseContent", ContentModel.TYPE_CONTENT).getNodeRef();
Map<String, Serializable> properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -261,11 +274,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -281,16 +296,18 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), true);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), authenticationComponent.getCurrentUserName());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
properties = cmisPropertyService.getProperties(pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -303,11 +320,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent (Working Copy)");
@@ -319,9 +338,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
serviceRegistry.getCheckOutCheckInService().cancelCheckout(pwc);
properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -334,11 +353,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -354,16 +375,18 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), true);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), authenticationComponent.getCurrentUserName());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
properties = cmisPropertyService.getProperties(pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -376,11 +399,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent (Working Copy)");
@@ -392,9 +417,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
serviceRegistry.getCheckOutCheckInService().checkin(pwc, null);
properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -407,11 +432,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -427,9 +454,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
NodeRef content = fileFolderService.create(rootNodeRef, "BaseContent", ContentModel.TYPE_CONTENT).getNodeRef();
Map<String, Serializable> properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -442,11 +469,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -458,9 +487,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
nodeService.addAspect(content, ContentModel.ASPECT_VERSIONABLE, null);
properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -473,11 +502,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -493,16 +524,18 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), true);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), authenticationComponent.getCurrentUserName());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
properties = cmisPropertyService.getProperties(pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -515,11 +548,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent (Working Copy)");
@@ -531,9 +566,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
serviceRegistry.getCheckOutCheckInService().cancelCheckout(pwc);
properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -546,11 +581,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -566,16 +603,18 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), true);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), authenticationComponent.getCurrentUserName());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
properties = cmisPropertyService.getProperties(pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -588,11 +627,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent (Working Copy)");
@@ -607,9 +648,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
serviceRegistry.getCheckOutCheckInService().checkin(pwc, versionProperties);
properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString()+"/1.0");
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -622,11 +663,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_VERSION_LABEL), "1.0");
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), "Meep");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -642,16 +685,18 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_VERSION_LABEL), "1.0");
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), true);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), authenticationComponent.getCurrentUserName());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), "Meep");
properties = cmisPropertyService.getProperties(pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), pwc.toString());
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -664,11 +709,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertNull(properties.get(CMISMapping.PROP_VERSION_LABEL));
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), pwc.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), null);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent (Working Copy)");
@@ -683,9 +730,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
serviceRegistry.getCheckOutCheckInService().checkin(pwc, versionProperties);
properties = cmisPropertyService.getProperties(content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_ID), content.toString()+"/1.1");
assertNull(properties.get(CMISMapping.PROP_URI));
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID);
assertEquals(properties.get(CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.DOCUMENT_TYPE_ID.getTypeId());
assertEquals(properties.get(CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(properties.get(CMISMapping.PROP_CREATION_DATE));
assertEquals(properties.get(CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -698,11 +745,13 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_VERSION), true);
assertEquals(properties.get(CMISMapping.PROP_IS_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_IS_LATEST_MAJOR_VERSION), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_LABEL), "1.1");
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_ID), content.toString());
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT), false);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY), null);
assertEquals(properties.get(CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID), null);
assertEquals(properties.get(CMISMapping.PROP_CHECKIN_COMMENT), "Woof");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), true);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_ALLOWED), ContentStreamAllowed.ALLOWED.toString());
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_LENGTH), 0L);
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_MIMETYPE), "application/octet-stream");
assertEquals(properties.get(CMISMapping.PROP_CONTENT_STREAM_FILENAME), "BaseContent");
@@ -715,9 +764,9 @@ public class CMISPropertyServiceTest extends BaseCMISTest
public void testSinglePropertyFolderAccess()
{
NodeRef folder = fileFolderService.create(rootNodeRef, "BaseFolder", ContentModel.TYPE_FOLDER).getNodeRef();
assertEquals(cmisPropertyService.getProperty(folder, CMISMapping.PROP_OBJECT_ID), folder);
assertEquals(cmisPropertyService.getProperty(folder, CMISMapping.PROP_OBJECT_ID), folder.toString());
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_URI));
assertEquals(cmisPropertyService.getProperty(folder, CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.FOLDER_TYPE_ID);
assertEquals(cmisPropertyService.getProperty(folder, CMISMapping.PROP_OBJECT_TYPE_ID), CMISMapping.FOLDER_TYPE_ID.getTypeId());
assertEquals(cmisPropertyService.getProperty(folder, CMISMapping.PROP_CREATED_BY), authenticationComponent.getCurrentUserName());
assertNotNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_CREATION_DATE));
assertEquals(cmisPropertyService.getProperty(folder, CMISMapping.PROP_LAST_MODIFIED_BY), authenticationComponent.getCurrentUserName());
@@ -730,6 +779,8 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_IS_LATEST_VERSION));
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_IS_MAJOR_VERSION));
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_IS_LATEST_MAJOR_VERSION));
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_VERSION_LABEL));
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_VERSION_SERIES_ID));
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_VERSION_SERIES_IS_CHECKED_OUT));
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_BY));
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_VERSION_SERIES_CHECKED_OUT_ID));
@@ -740,7 +791,7 @@ public class CMISPropertyServiceTest extends BaseCMISTest
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_CONTENT_STREAM_FILENAME));
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_CONTENT_STREAM_URI));
assertEquals(cmisPropertyService.getProperty(folder, CMISMapping.PROP_PARENT), rootNodeRef);
assertEquals(cmisPropertyService.getProperty(folder, CMISMapping.PROP_PARENT), rootNodeRef.toString());
assertNull(cmisPropertyService.getProperty(folder, CMISMapping.PROP_ALLLOWED_CHILD_OBJECT_TYPES));
assertEquals(cmisPropertyService.getProperty(folder, "CM_NAME"), "BaseFolder");

View File

@@ -26,7 +26,6 @@ package org.alfresco.cmis.property;
import java.io.Serializable;
import org.alfresco.cmis.dictionary.CMISMapping;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.namespace.QName;
@@ -39,7 +38,7 @@ public class MappingPropertyAccessor extends AbstractGenericPropertyAccessor
{
public Serializable getProperty(NodeRef nodeRef, String propertyName)
{
QName propertyQname = CMISMapping.getPropertyQName(getServiceRegistry().getDictionaryService(), getServiceRegistry().getNamespaceService(), propertyName);
QName propertyQname = getCMISMapping().getPropertyQName(propertyName);
return getServiceRegistry().getNodeService().getProperty(nodeRef, propertyQname);
}

View File

@@ -28,20 +28,37 @@ import java.io.Serializable;
import org.alfresco.cmis.dictionary.CMISMapping;
import org.alfresco.cmis.dictionary.CMISScope;
import org.alfresco.model.ContentModel;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter;
/**
* Get the CMIS object id property.
*
* @author andyh
*
*/
public class ObjectIdPropertyAccessor extends AbstractNamedPropertyAccessor
{
public Serializable getProperty(NodeRef nodeRef)
{
return nodeRef;
if (getServiceRegistry().getNodeService().hasAspect(nodeRef, ContentModel.ASPECT_VERSIONABLE))
{
Serializable value = getServiceRegistry().getNodeService().getProperty(nodeRef, ContentModel.PROP_VERSION_LABEL);
if (value != null)
{
String versionLabel = DefaultTypeConverter.INSTANCE.convert(String.class, value);
StringBuilder builder = new StringBuilder(128);
builder.append(nodeRef.toString());
builder.append("/");
builder.append(versionLabel);
return builder.toString();
}
}
return nodeRef.toString();
}
@Override
@@ -53,9 +70,7 @@ public class ObjectIdPropertyAccessor extends AbstractNamedPropertyAccessor
@Override
public CMISScope getScope()
{
return CMISScope.OBJECT;
return CMISScope.OBJECT;
}
}

View File

@@ -42,13 +42,13 @@ public class ObjectTypeIdPropertyAccessor extends AbstractNamedPropertyAccessor
public Serializable getProperty(NodeRef nodeRef)
{
QName typeQName = CMISMapping.getCmisType(getServiceRegistry().getNodeService().getType(nodeRef));
QName typeQName = getCMISMapping().getCmisType(getServiceRegistry().getNodeService().getType(nodeRef));
CMISScope scope;
if(CMISMapping.isValidCmisDocument(getServiceRegistry().getDictionaryService(), typeQName))
if(getCMISMapping().isValidCmisDocument(typeQName))
{
scope = CMISScope.DOCUMENT;
}
else if(CMISMapping.isValidCmisFolder(getServiceRegistry().getDictionaryService(), typeQName))
else if(getCMISMapping().isValidCmisFolder(typeQName))
{
scope = CMISScope.FOLDER;
}
@@ -56,7 +56,7 @@ public class ObjectTypeIdPropertyAccessor extends AbstractNamedPropertyAccessor
{
scope = CMISScope.UNKNOWN;
}
return CMISMapping.getCmisTypeId(scope, typeQName);
return getCMISMapping().getCmisTypeId(scope, typeQName).getTypeId();
}
@Override
@@ -64,7 +64,6 @@ public class ObjectTypeIdPropertyAccessor extends AbstractNamedPropertyAccessor
{
return CMISMapping.PROP_OBJECT_TYPE_ID;
}
@Override
public CMISScope getScope()

View File

@@ -28,6 +28,7 @@ import java.io.Serializable;
import org.alfresco.cmis.dictionary.CMISMapping;
import org.alfresco.cmis.dictionary.CMISScope;
import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.NodeRef;
/**
@@ -41,7 +42,15 @@ public class ParentPropertyAccessor extends AbstractNamedPropertyAccessor
public Serializable getProperty(NodeRef nodeRef)
{
return getServiceRegistry().getNodeService().getPrimaryParent(nodeRef).getParentRef();
ChildAssociationRef car = getServiceRegistry().getNodeService().getPrimaryParent(nodeRef);
if((car != null) && (car.getParentRef() != null))
{
return car.getParentRef().toString();
}
else
{
return null;
}
}

View File

@@ -51,7 +51,8 @@ public class VersionSeriesCheckedOutIdPropertyAccessor extends AbstractNamedProp
LockType type = getServiceRegistry().getLockService().getLockType(nodeRef);
if (type == LockType.READ_ONLY_LOCK)
{
return getServiceRegistry().getCheckOutCheckInService().getWorkingCopy(nodeRef);
NodeRef pwc = getServiceRegistry().getCheckOutCheckInService().getWorkingCopy(nodeRef);
return (pwc == null) ? null : pwc.toString();
}
else
{

View File

@@ -0,0 +1,59 @@
/*
* Copyright (C) 2005-2007 Alfresco Software Limited.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
* As a special exception to the terms and conditions of version 2.0 of
* the GPL, you may redistribute this Program in connection with Free/Libre
* and Open Source Software ("FLOSS") applications as described in Alfresco's
* FLOSS exception. You should have recieved a copy of the text describing
* the FLOSS exception, and it is also available here:
* http://www.alfresco.com/legal/licensing"
*/
package org.alfresco.cmis.property;
import java.io.Serializable;
import org.alfresco.cmis.dictionary.CMISMapping;
import org.alfresco.cmis.dictionary.CMISScope;
import org.alfresco.service.cmr.repository.NodeRef;
/**
* @author andyh
*
*/
public class VersionSeriesIdPropertyAccessor extends AbstractNamedPropertyAccessor
{
/* (non-Javadoc)
* @see org.alfresco.cmis.property.NamedPropertyAccessor#getProperty(org.alfresco.service.cmr.repository.NodeRef)
*/
public Serializable getProperty(NodeRef nodeRef)
{
return nodeRef.toString();
}
@Override
public String getPropertyName()
{
return CMISMapping.PROP_VERSION_SERIES_ID;
}
@Override
public CMISScope getScope()
{
return CMISScope.DOCUMENT;
}
}