Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
Linux, python 2.7.x, Alfresco 5.0.x
-
Patch
Description
With the dev version of cmislib when using the browser binding. If you provide a properties dict to the createFolder method, the following error will raise
File "../local/lib/python2.7/site-packages/cmislib/browser/binding.py", line 1387, in createFolder return parentFolder.createFolder(name, properties, **kwargs) File ".../local/lib/python2.7/site-packages/cmislib/browser/binding.py", line 2051, in createFolder props["propertyId[%s]" % propCount] = prop.key AttributeError: 'str' object has no attribute 'key'
Moreover, the code seems to be not actively developed and the git mirror is outdated. How can I contribute efficiently. I'll provide a patch as soon as I've finished to mirror your svn repo to github?
From 203330f499a508427a6b3ae7b7b0f402797ecc01 Mon Sep 17 00:00:00 2001 From: Laurent Mignon <laurent.mignon@acsone.eu> Date: Fri, 18 Mar 2016 18:17:00 +0100 Subject: [PATCH] In createFolder 'properties' param is a dict Fixes CMIS-971 See https://issues.apache.org/jira/browse/CMIS-971 --- src/cmislib/browser/binding.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/cmislib/browser/binding.py b/src/cmislib/browser/binding.py index 79ae297..c9cc8a3 100644 --- a/src/cmislib/browser/binding.py +++ b/src/cmislib/browser/binding.py @@ -2043,13 +2043,14 @@ def createFolder(self, name, properties={}, **kwargs): props["propertyId[1]"] = "cmis:objectTypeId" if properties.has_key('cmis:objectTypeId'): props["propertyValue[1]"] = properties['cmis:objectTypeId'] + del properties['cmis:objectTypeId'] else: props["propertyValue[1]"] = "cmis:folder" propCount = 2 - for prop in properties: - props["propertyId[%s]" % propCount] = prop.key - props["propertyValue[%s]" % propCount] = prop + for key, val in properties.items(): + props["propertyId[%s]" % propCount] = key + props["propertyValue[%s]" % propCount] = val propCount += 1 # invoke the URL