You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by fm...@apache.org on 2010/02/26 11:19:27 UTC
svn commit: r916636 - in
/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src:
main/java/org/apache/opencmis/commons/impl/Converter.java
test/java/org/apache/opencmis/commons/impl/misc/ConverterTest.java
Author: fmui
Date: Fri Feb 26 10:19:27 2010
New Revision: 916636
URL: http://svn.apache.org/viewvc?rev=916636&view=rev
Log:
CMIS-136: changed converter to return empty collections instead of null values
Modified:
incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/Converter.java
incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/test/java/org/apache/opencmis/commons/impl/misc/ConverterTest.java
Modified: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/Converter.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/Converter.java?rev=916636&r1=916635&r2=916636&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/Converter.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/Converter.java Fri Feb 26 10:19:27 2010
@@ -252,12 +252,9 @@
result.setAclCapabilities(convert(repositoryInfo.getAclCapability()));
result.setChangesIncomplete(repositoryInfo.isChangesIncomplete());
- List<BaseObjectTypeIds> baseObjectTypeIds = null;
- if (!repositoryInfo.getChangesOnType().isEmpty()) {
- baseObjectTypeIds = new ArrayList<BaseObjectTypeIds>();
- for (EnumBaseObjectTypeIds bot : repositoryInfo.getChangesOnType()) {
- baseObjectTypeIds.add(convert(BaseObjectTypeIds.class, bot));
- }
+ List<BaseObjectTypeIds> baseObjectTypeIds = new ArrayList<BaseObjectTypeIds>();
+ for (EnumBaseObjectTypeIds bot : repositoryInfo.getChangesOnType()) {
+ baseObjectTypeIds.add(convert(BaseObjectTypeIds.class, bot));
}
result.setChangesOnType(baseObjectTypeIds);
result.setCmisVersionSupported(repositoryInfo.getCmisVersionSupported());
@@ -329,37 +326,29 @@
result.setAclPropagation(convert(AclPropagation.class, aclCapabilities.getPropagation()));
- List<PermissionDefinitionData> permissionDefinitionList = null;
- if (!aclCapabilities.getPermissions().isEmpty()) {
- permissionDefinitionList = new ArrayList<PermissionDefinitionData>();
- for (CmisPermissionDefinition permDef : aclCapabilities.getPermissions()) {
- PermissionDefinitionDataImpl permDefData = new PermissionDefinitionDataImpl();
- permDefData.setPermission(permDef.getPermission());
- permDefData.setDescription(permDef.getDescription());
- convertExtension(permDef, permDefData);
+ List<PermissionDefinitionData> permissionDefinitionList = new ArrayList<PermissionDefinitionData>();
+ for (CmisPermissionDefinition permDef : aclCapabilities.getPermissions()) {
+ PermissionDefinitionDataImpl permDefData = new PermissionDefinitionDataImpl();
+ permDefData.setPermission(permDef.getPermission());
+ permDefData.setDescription(permDef.getDescription());
+ convertExtension(permDef, permDefData);
- permissionDefinitionList.add(permDefData);
- }
+ permissionDefinitionList.add(permDefData);
}
result.setPermissionDefinitionData(permissionDefinitionList);
- List<PermissionMappingData> permissionMapping = null;
+ List<PermissionMappingData> permissionMapping = new ArrayList<PermissionMappingData>();
+ for (CmisPermissionMapping permMapping : aclCapabilities.getMapping()) {
+ if (permMapping.getKey() != null) {
+ PermissionMappingDataImpl permMappingData = new PermissionMappingDataImpl();
+ permMappingData.setKey(permMapping.getKey().value());
+ permMappingData.setPermissions(permMapping.getPermission());
+ convertExtension(permMapping, permMappingData);
- if (!aclCapabilities.getMapping().isEmpty()) {
- permissionMapping = new ArrayList<PermissionMappingData>();
- for (CmisPermissionMapping permMapping : aclCapabilities.getMapping()) {
- if (permMapping.getKey() != null) {
- PermissionMappingDataImpl permMappingData = new PermissionMappingDataImpl();
- permMappingData.setKey(permMapping.getKey().value());
- permMappingData.setPermissions(permMapping.getPermission());
- convertExtension(permMapping, permMappingData);
-
- permissionMapping.add(permMappingData);
- }
+ permissionMapping.add(permMappingData);
}
-
- result.setPermissionMappingData(permissionMapping);
}
+ result.setPermissionMappingData(permissionMapping);
// handle extensions
convertExtension(aclCapabilities, result);
@@ -990,7 +979,7 @@
* Converts a choices list.
*/
private static List<Choice<String>> convertChoiceStringList(List<CmisChoiceString> choices) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return null;
}
@@ -1014,7 +1003,7 @@
*/
private static void convertChoiceStringList(List<Choice<String>> choices,
List<CmisChoiceString> target) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return;
}
@@ -1038,7 +1027,7 @@
* Converts a choices list.
*/
private static List<Choice<String>> convertChoiceIdList(List<CmisChoiceId> choices) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return null;
}
@@ -1061,7 +1050,7 @@
* Converts a choices list.
*/
private static void convertChoiceIdList(List<Choice<String>> choices, List<CmisChoiceId> target) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return;
}
@@ -1085,7 +1074,7 @@
* Converts a choices list.
*/
private static List<Choice<BigInteger>> convertChoiceIntegerList(List<CmisChoiceInteger> choices) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return null;
}
@@ -1109,7 +1098,7 @@
*/
private static void convertChoiceIntegerList(List<Choice<BigInteger>> choices,
List<CmisChoiceInteger> target) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return;
}
@@ -1133,7 +1122,7 @@
* Converts a choices list.
*/
private static List<Choice<BigDecimal>> convertChoiceDecimalList(List<CmisChoiceDecimal> choices) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return null;
}
@@ -1157,7 +1146,7 @@
*/
private static void convertChoiceDecimalList(List<Choice<BigDecimal>> choices,
List<CmisChoiceDecimal> target) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return;
}
@@ -1181,7 +1170,7 @@
* Converts a choices list.
*/
private static List<Choice<Boolean>> convertChoiceBooleanList(List<CmisChoiceBoolean> choices) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return null;
}
@@ -1205,7 +1194,7 @@
*/
private static void convertChoiceBooleanList(List<Choice<Boolean>> choices,
List<CmisChoiceBoolean> target) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return;
}
@@ -1230,7 +1219,7 @@
*/
private static List<Choice<GregorianCalendar>> convertChoiceDateTimeList(
List<CmisChoiceDateTime> choices) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return null;
}
@@ -1254,7 +1243,7 @@
*/
private static void convertChoiceDateTimeList(List<Choice<GregorianCalendar>> choices,
List<CmisChoiceDateTime> target) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return;
}
@@ -1278,7 +1267,7 @@
* Converts a choices list.
*/
private static List<Choice<String>> convertChoiceHtmlList(List<CmisChoiceHtml> choices) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return null;
}
@@ -1302,7 +1291,7 @@
*/
private static void convertChoiceHtmlList(List<Choice<String>> choices,
List<CmisChoiceHtml> target) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return;
}
@@ -1326,7 +1315,7 @@
* Converts a choices list.
*/
private static List<Choice<String>> convertChoiceUriList(List<CmisChoiceUri> choices) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return null;
}
@@ -1349,7 +1338,7 @@
* Converts a choices list.
*/
private static void convertChoiceUriList(List<Choice<String>> choices, List<CmisChoiceUri> target) {
- if ((choices == null) || (choices.isEmpty())) {
+ if (choices == null) {
return;
}
@@ -1400,20 +1389,14 @@
result.setIsExactAcl(object.isExactACL());
result.setPolicyIds(convert(object.getPolicyIds()));
result.setProperties(convert(object.getProperties()));
- List<ObjectData> relationships = null;
- if (!object.getRelationship().isEmpty()) {
- relationships = new ArrayList<ObjectData>();
- for (CmisObjectType cmisObject : object.getRelationship()) {
- relationships.add(convert(cmisObject));
- }
+ List<ObjectData> relationships = new ArrayList<ObjectData>();
+ for (CmisObjectType cmisObject : object.getRelationship()) {
+ relationships.add(convert(cmisObject));
}
result.setRelationships(relationships);
- List<RenditionData> renditions = null;
- if (!object.getRendition().isEmpty()) {
- renditions = new ArrayList<RenditionData>();
- for (CmisRenditionType rendition : object.getRendition()) {
- renditions.add(convert(rendition));
- }
+ List<RenditionData> renditions = new ArrayList<RenditionData>();
+ for (CmisRenditionType rendition : object.getRendition()) {
+ renditions.add(convert(rendition));
}
result.setRenditions(renditions);
@@ -1686,27 +1669,24 @@
AccessControlListImpl result = new AccessControlListImpl();
- List<AccessControlEntry> aces = null;
- if (!acl.getPermission().isEmpty()) {
- aces = new ArrayList<AccessControlEntry>();
- for (CmisAccessControlEntryType entry : acl.getPermission()) {
- if (entry == null) {
- continue;
- }
-
- AccessControlEntryImpl ace = new AccessControlEntryImpl();
- ace.setDirect(entry.isDirect());
- ace.setPermissions(entry.getPermission());
- AccessControlPrincipalDataImpl principal = new AccessControlPrincipalDataImpl(entry
- .getPrincipal() == null ? null : entry.getPrincipal().getPrincipalId());
- convertExtension(entry.getPrincipal(), principal);
- ace.setPrincipal(principal);
+ List<AccessControlEntry> aces = new ArrayList<AccessControlEntry>();
+ for (CmisAccessControlEntryType entry : acl.getPermission()) {
+ if (entry == null) {
+ continue;
+ }
+
+ AccessControlEntryImpl ace = new AccessControlEntryImpl();
+ ace.setDirect(entry.isDirect());
+ ace.setPermissions(entry.getPermission());
+ AccessControlPrincipalDataImpl principal = new AccessControlPrincipalDataImpl(entry
+ .getPrincipal() == null ? null : entry.getPrincipal().getPrincipalId());
+ convertExtension(entry.getPrincipal(), principal);
+ ace.setPrincipal(principal);
- // handle extensions
- convertExtension(entry, ace);
+ // handle extensions
+ convertExtension(entry, ace);
- aces.add(ace);
- }
+ aces.add(ace);
}
result.setAces(aces);
@@ -2021,12 +2001,9 @@
}
TypeDefinitionListImpl result = new TypeDefinitionListImpl();
- List<TypeDefinition> types = null;
- if (!typeList.getTypes().isEmpty()) {
- types = new ArrayList<TypeDefinition>();
- for (CmisTypeDefinitionType typeDefinition : typeList.getTypes()) {
- types.add(convert(typeDefinition));
- }
+ List<TypeDefinition> types = new ArrayList<TypeDefinition>();
+ for (CmisTypeDefinitionType typeDefinition : typeList.getTypes()) {
+ types.add(convert(typeDefinition));
}
result.setList(types);
@@ -2190,13 +2167,11 @@
}
ObjectInFolderListImpl result = new ObjectInFolderListImpl();
- List<ObjectInFolderData> objects = null;
- if (!objectInFolderList.getObjects().isEmpty()) {
- objects = new ArrayList<ObjectInFolderData>();
- for (CmisObjectInFolderType object : objectInFolderList.getObjects()) {
- objects.add(convert(object));
- }
+ List<ObjectInFolderData> objects = new ArrayList<ObjectInFolderData>();
+ for (CmisObjectInFolderType object : objectInFolderList.getObjects()) {
+ objects.add(convert(object));
}
+
result.setObjects(objects);
result.setHasMoreItems(objectInFolderList.isHasMoreItems());
@@ -2243,12 +2218,9 @@
ObjectListImpl result = new ObjectListImpl();
- List<ObjectData> objects = null;
- if (!objectList.getObjects().isEmpty()) {
- objects = new ArrayList<ObjectData>();
- for (CmisObjectType object : objectList.getObjects()) {
- objects.add(convert(object));
- }
+ List<ObjectData> objects = new ArrayList<ObjectData>();
+ for (CmisObjectType object : objectList.getObjects()) {
+ objects.add(convert(object));
}
result.setObjects(objects);
@@ -2298,9 +2270,8 @@
result.setObject(convert(container.getObjectInFolder()));
- List<ObjectInFolderContainer> containerList = null;
+ List<ObjectInFolderContainer> containerList = new ArrayList<ObjectInFolderContainer>();
if (!container.getChildren().isEmpty()) {
- containerList = new ArrayList<ObjectInFolderContainer>();
for (CmisObjectInFolderContainerType containerChild : container.getChildren()) {
containerList.add(convert(containerChild));
}
Modified: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/test/java/org/apache/opencmis/commons/impl/misc/ConverterTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/test/java/org/apache/opencmis/commons/impl/misc/ConverterTest.java?rev=916636&r1=916635&r2=916636&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/test/java/org/apache/opencmis/commons/impl/misc/ConverterTest.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/test/java/org/apache/opencmis/commons/impl/misc/ConverterTest.java Fri Feb 26 10:19:27 2010
@@ -23,6 +23,7 @@
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -168,7 +169,7 @@
assertDataObjectsEquals("Object", obj1, obj2);
}
-
+
/**
* Asserts OpenCMIS data objects.
*/
@@ -180,7 +181,15 @@
return;
}
- if ((expected == null) || (actual == null)) {
+ if ((expected == null) && (actual instanceof Collection<?>)) {
+ assertTrue(((Collection<?>) actual).isEmpty());
+ return;
+ }
+ else if ((expected instanceof Collection<?>) && (actual == null)) {
+ assertTrue(((Collection<?>) expected).isEmpty());
+ return;
+ }
+ else if ((expected == null) || (actual == null)) {
fail("Data object is null! name: " + name + " / expected: " + expected + " / actual: "
+ actual);
}