mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
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:
@@ -91,7 +91,7 @@ public abstract class CMISAbstractTypeDefinition implements CMISTypeDefinition,
|
||||
//if (parentTypeId == null) throw new IllegalStateException("parentTypeId not specified; objectTypeId=" + objectTypeId);
|
||||
if (parentTypeId != null && internalParentType == null) throw new IllegalStateException("parentType not specified; objectTypeId=" + objectTypeId + ",parentTypeId=" + parentTypeId);
|
||||
if (rootType == null) throw new IllegalStateException("rootType not specified; objectTypeId=" + objectTypeId);
|
||||
//if (description == null) throw new IllegalStateException("description not specified; objectTypeId=" + objectTypeId);
|
||||
if (description == null) throw new IllegalStateException("description not specified; objectTypeId=" + objectTypeId);
|
||||
if (creatable == null) throw new IllegalStateException("creatable not specified; objectTypeId=" + objectTypeId);
|
||||
if (queryable == null) throw new IllegalStateException("queryable not specified; objectTypeId=" + objectTypeId);
|
||||
if (fullTextIndexed == null) throw new IllegalStateException("fullTextIndexed not specified; objectTypeId=" + objectTypeId);
|
||||
|
@@ -111,7 +111,7 @@ public class CMISBasePropertyDefinition implements CMISPropertyDefinition, Seria
|
||||
this.typeDef = typeDef;
|
||||
queryName = cmisMapping.buildPrefixEncodedString(propertyId.getQName());
|
||||
displayName = (propDef.getTitle() != null) ? propDef.getTitle() : propertyId.getId();
|
||||
description = propDef.getDescription();
|
||||
description = propDef.getDescription() != null ? propDef.getDescription() : displayName;
|
||||
propertyType = cmisMapping.getDataType(propDef.getDataType());
|
||||
cardinality = propDef.isMultiValued() ? CMISCardinalityEnum.MULTI_VALUED : CMISCardinalityEnum.SINGLE_VALUED;
|
||||
for (ConstraintDefinition constraintDef : propDef.getConstraints())
|
||||
|
@@ -56,7 +56,7 @@ public class CMISDocumentTypeDefinition extends CMISAbstractTypeDefinition
|
||||
this.cmisClassDef = cmisClassDef;
|
||||
objectTypeId = typeId;
|
||||
displayName = (cmisClassDef.getTitle() != null) ? cmisClassDef.getTitle() : typeId.getId();
|
||||
description = cmisClassDef.getDescription();
|
||||
description = cmisClassDef.getDescription() != null ? cmisClassDef.getDescription() : displayName;
|
||||
|
||||
QName parentQName = cmisMapping.getCmisType(cmisClassDef.getParentName());
|
||||
if (typeId == CMISDictionaryModel.DOCUMENT_TYPE_ID)
|
||||
|
@@ -42,7 +42,7 @@ public class CMISFolderTypeDefinition extends CMISAbstractTypeDefinition
|
||||
* @param typeId
|
||||
* @param cmisClassDef
|
||||
*/
|
||||
public CMISFolderTypeDefinition(CMISMapping cmisMapping, CMISTypeId typeId, ClassDefinition cmisClassDef)
|
||||
public CMISFolderTypeDefinition(CMISMapping cmisMapping, CMISTypeId typeId, ClassDefinition cmisClassDef, boolean isSystem)
|
||||
{
|
||||
isPublic = true;
|
||||
|
||||
@@ -50,7 +50,7 @@ public class CMISFolderTypeDefinition extends CMISAbstractTypeDefinition
|
||||
this.cmisClassDef = cmisClassDef;
|
||||
objectTypeId = typeId;
|
||||
displayName = (cmisClassDef.getTitle() != null) ? cmisClassDef.getTitle() : typeId.getId();
|
||||
description = cmisClassDef.getDescription();
|
||||
description = cmisClassDef.getDescription() != null ? cmisClassDef.getDescription() : displayName;
|
||||
|
||||
QName parentQName = cmisMapping.getCmisType(cmisClassDef.getParentName());
|
||||
if (typeId == CMISDictionaryModel.FOLDER_TYPE_ID)
|
||||
@@ -73,8 +73,7 @@ public class CMISFolderTypeDefinition extends CMISAbstractTypeDefinition
|
||||
actionEvaluators = cmisMapping.getActionEvaluators(objectTypeId.getScope());
|
||||
|
||||
// TODO: introduce abstract into core alfresco content metamodel
|
||||
// NOTE: system folder cannot be created via FolderFileService
|
||||
creatable = (typeId.getQName().equals(ContentModel.TYPE_SYSTEM_FOLDER) ? false : true);
|
||||
creatable = !isSystem;
|
||||
queryable = true;
|
||||
fullTextIndexed = true;
|
||||
controllablePolicy = false;
|
||||
|
@@ -58,7 +58,7 @@ public class CMISObjectTypeDefinition extends CMISAbstractTypeDefinition
|
||||
{
|
||||
this.cmisClassDef = cmisClassDef;
|
||||
displayName = (cmisClassDef.getTitle() != null) ? cmisClassDef.getTitle() : typeId.getId();
|
||||
description = cmisClassDef.getDescription();
|
||||
description = cmisClassDef.getDescription() != null ? cmisClassDef.getDescription() : displayName;
|
||||
QName parentQName = cmisMapping.getCmisType(cmisClassDef.getParentName());
|
||||
if (parentQName != null)
|
||||
{
|
||||
|
@@ -71,7 +71,7 @@ public class CMISPolicyTypeDefinition extends CMISAbstractTypeDefinition
|
||||
objectTypeQueryName = cmisMapping.buildPrefixEncodedString(typeId.getQName());
|
||||
parentTypeId = CMISDictionaryModel.POLICY_TYPE_ID;
|
||||
}
|
||||
description = cmisClassDef.getDescription();
|
||||
description = cmisClassDef.getDescription() != null ? cmisClassDef.getDescription() : displayName;
|
||||
|
||||
actionEvaluators = cmisMapping.getActionEvaluators(objectTypeId.getScope());
|
||||
|
||||
|
@@ -89,7 +89,7 @@ public class CMISRelationshipTypeDefinition extends CMISAbstractTypeDefinition
|
||||
{
|
||||
parentTypeId = cmisMapping.getCmisTypeId(CMISScope.OBJECT, parentQName);
|
||||
}
|
||||
description = cmisClassDef.getDescription();
|
||||
description = cmisClassDef.getDescription() != null ? cmisClassDef.getDescription() : displayName;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -97,7 +97,7 @@ public class CMISRelationshipTypeDefinition extends CMISAbstractTypeDefinition
|
||||
displayName = (assocDef.getTitle() != null) ? assocDef.getTitle() : typeId.getId();
|
||||
objectTypeQueryName = cmisMapping.buildPrefixEncodedString(typeId.getQName());
|
||||
parentTypeId = CMISDictionaryModel.RELATIONSHIP_TYPE_ID;
|
||||
description = assocDef.getDescription();
|
||||
description = assocDef.getDescription() != null ? assocDef.getDescription() : displayName;
|
||||
|
||||
CMISTypeId sourceTypeId = cmisMapping.getCmisTypeId(cmisMapping.getCmisType(assocDef.getSourceClass().getName()));
|
||||
if (sourceTypeId != null)
|
||||
|
@@ -22,6 +22,7 @@ import java.util.Collection;
|
||||
|
||||
import org.alfresco.cmis.CMISScope;
|
||||
import org.alfresco.cmis.CMISTypeId;
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.service.cmr.dictionary.AssociationDefinition;
|
||||
import org.alfresco.service.cmr.dictionary.ClassDefinition;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
@@ -76,7 +77,8 @@ public class CMISStrictDictionaryService extends CMISAbstractDictionaryService
|
||||
}
|
||||
else if (typeId.getScope() == CMISScope.FOLDER)
|
||||
{
|
||||
objectTypeDef = new CMISFolderTypeDefinition(cmisMapping, typeId, classDef);
|
||||
boolean isSystem = dictionaryService.isSubClass(classDef.getName(), ContentModel.TYPE_SYSTEM_FOLDER);
|
||||
objectTypeDef = new CMISFolderTypeDefinition(cmisMapping, typeId, classDef, isSystem);
|
||||
}
|
||||
else if (typeId.getScope() == CMISScope.RELATIONSHIP)
|
||||
{
|
||||
|
Reference in New Issue
Block a user