[
https://issues.apache.org/jira/browse/CMIS-971?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jeff Potts updated CMIS-971:
----------------------------
Fix Version/s: cmislib 0.6.0
> Error when calling createFolder with properties parameter
> ---------------------------------------------------------
>
> Key: CMIS-971
> URL: https://issues.apache.org/jira/browse/CMIS-971
> Project: Chemistry
> Issue Type: Bug
> Components: python-cmislib
> Environment: Linux, python 2.7.x, Alfresco 5.0.x
> Reporter: Laurent Mignon
> Assignee: Jeff Potts
> Fix For: cmislib 0.6.0
>
>
> 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
> {code}
> 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'
> {code}
> 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?
> {code}
> From 203330f499a508427a6b3ae7b7b0f402797ecc01 Mon Sep 17 00:00:00 2001
> From: Laurent Mignon <[email protected]>
> 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
> {code}
> see
> https://github.com/lmignon/python-cmislib/commit/203330f499a508427a6b3ae7b7b0f402797ecc01?diff=unified
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)