[Erp5-report] r41728 gabriel - in /erp5/trunk/utils/cloudooo: ./ cloudooo/ cloudooo/handler...
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Dec 23 17:51:47 CET 2010
Author: gabriel
Date: Thu Dec 23 17:51:47 2010
New Revision: 41728
URL: http://svn.erp5.org?rev=41728&view=rev
Log:
refactor code to use json instead of jsonpickle. With that, jsonpickle is not used more on cloudooo
Modified:
erp5/trunk/utils/cloudooo/cloudooo/CHANGES.txt
erp5/trunk/utils/cloudooo/cloudooo/handler/oohandler.py
erp5/trunk/utils/cloudooo/cloudooo/helper/unoconverter.py
erp5/trunk/utils/cloudooo/cloudooo/manager.py
erp5/trunk/utils/cloudooo/cloudooo/tests/testUnoConverter.py
erp5/trunk/utils/cloudooo/setup.py
Modified: erp5/trunk/utils/cloudooo/cloudooo/CHANGES.txt
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/CHANGES.txt?rev=41728&r1=41727&r2=41728&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/CHANGES.txt [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/CHANGES.txt [utf8] Thu Dec 23 17:51:47 2010
@@ -1,5 +1,6 @@
1.0.10 (unreleased)
===================
+ - Refactor code to use json instead of jsonpickle.
- Add getTableItem and getTableItemList for OOGranulate
- Add getParagraphItemList and getParagraphItem for OOGranulate
- Add getImageItemList and getImage for OOGranulate
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/oohandler.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/oohandler.py?rev=41728&r1=41727&r2=41728&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/oohandler.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/oohandler.py [utf8] Thu Dec 23 17:51:47 2010
@@ -26,7 +26,7 @@
#
##############################################################################
-import jsonpickle
+import json
import pkg_resources
from base64 import decodestring, encodestring
from os import environ, path
@@ -69,8 +69,6 @@ class OOHandler:
def _getCommand(self, *args, **kw):
"""Transforms all parameters passed in a command"""
hostname, port = openoffice.getAddress()
- jsonpickle_path = "/".join(pkg_resources.resource_filename("jsonpickle",
- "").split("/")[:-1])
kw['hostname'] = hostname
kw['port'] = port
command_list = [path.join(self.office_binary_path, "python"),
@@ -78,8 +76,7 @@ class OOHandler:
path.join("helper", "unoconverter.py")),
"--uno_path='%s'" % self.uno_path,
"--office_binary_path='%s'" % self.office_binary_path,
- "--document_url='%s'" % self.document.getUrl(),
- "--jsonpickle_path='%s'" % jsonpickle_path]
+ "--document_url='%s'" % self.document.getUrl()]
for arg in args:
command_list.insert(3, "--%s" % arg)
for k, v in kw.iteritems():
@@ -150,9 +147,9 @@ class OOHandler:
mimemapper.getFilterName(extension,
service_type)))
- return jsonpickle.encode(dict(doc_type_list_by_extension=mimemapper._doc_type_list_by_extension,
- filter_list=filter_list,
- mimetype_by_filter_type=mimemapper._mimetype_by_filter_type))
+ return json.dumps(dict(doc_type_list_by_extension=mimemapper._doc_type_list_by_extension,
+ filter_list=filter_list,
+ mimetype_by_filter_type=mimemapper._mimetype_by_filter_type))
def convert(self, destination_format=None, **kw):
"""Convert a document to another format supported by the OpenOffice
@@ -165,7 +162,7 @@ class OOHandler:
if destination_format:
kw['destination_format'] = destination_format
kw['mimemapper'] = self._serializeMimemapper()
- kw['refresh'] = jsonpickle.encode(self.refresh)
+ kw['refresh'] = json.dumps(self.refresh)
try:
stdout, stderr = self._callUnoConverter(*['convert'], **kw)
finally:
@@ -196,7 +193,7 @@ class OOHandler:
openoffice.release()
if self.monitor.is_alive():
self._stopTimeout()
- metadata = jsonpickle.decode(decodestring(stdout))
+ metadata = json.loads(decodestring(stdout))
if metadata.get("Data"):
self.document.reload(metadata['Data'])
metadata['Data'] = self.document.getContent()
@@ -211,7 +208,7 @@ class OOHandler:
metadata -- expected an dictionary with metadata.
"""
openoffice.acquire()
- metadata_pickled = jsonpickle.encode(metadata)
+ metadata_pickled = json.dumps(metadata)
logger.debug("setMetadata")
kw = dict(metadata=encodestring(metadata_pickled))
try:
Modified: erp5/trunk/utils/cloudooo/cloudooo/helper/unoconverter.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/helper/unoconverter.py?rev=41728&r1=41727&r2=41728&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/helper/unoconverter.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/helper/unoconverter.py [utf8] Thu Dec 23 17:51:47 2010
@@ -60,7 +60,7 @@ Options:
extension to export the document
--mimemapper=OBJECT_SERIALIZED
Mimemapper serialized. The object is passed using
- jsonpickle. IF this option is None, the object is
+ json. IF this option is None, the object is
created
--metadata=DICT_SERIALIZED
Dictionary with metadata
@@ -146,7 +146,7 @@ class UnoConverter(object):
doc_type_list = mimemapper["doc_type_list_by_extension"].get(destination_format)
if self.document_type not in doc_type_list:
raise AttributeError, \
- "This Document can not be converted for this format"
+ "This Document can not be converted for this format"
type = self.document_type
filter_name = self._getFilterName(destination_format, type)
property_list = []
@@ -279,7 +279,7 @@ def main():
"hostname=", "port=", "source_format=",
"document_url=", "destination_format=",
"mimemapper=", "metadata=", "refresh=",
- "unomimemapper_bin=", "jsonpickle_path="])
+ "unomimemapper_bin="])
except GetoptError, msg:
msg = msg.msg + help_msg
print >> sys.stderr, msg
@@ -287,12 +287,7 @@ def main():
param_list = [tuple[0] for tuple in iter(opt_list)]
- for opt, arg in iter(opt_list):
- if opt == "--jsonpickle_path":
- sys.path.append(arg)
- break
-
- import jsonpickle
+ import json
refresh = None
for opt, arg in iter(opt_list):
if opt in ('-h', '--help'):
@@ -314,12 +309,12 @@ def main():
elif opt == '--source_format':
source_format = arg
elif opt == '--refresh':
- refresh = jsonpickle.decode(arg)
+ refresh = json.loads(arg)
elif opt == '--metadata':
arg = decodestring(arg)
- metadata = jsonpickle.decode(arg)
+ metadata = json.loads(arg)
elif opt == '--mimemapper':
- mimemapper = jsonpickle.decode(arg)
+ mimemapper = json.loads(arg)
kw = {}
if "uno_path" in locals():
@@ -341,11 +336,11 @@ def main():
output = unoconverter.convert(destination_format)
elif '--getmetadata' in param_list and not '--convert' in param_list:
metadata_dict = unoconverter.getMetadata()
- output = encodestring(jsonpickle.encode(metadata_dict))
+ output = encodestring(json.dumps(metadata_dict))
elif '--getmetadata' in param_list and '--convert' in param_list:
metadata_dict = unoconverter.getMetadata()
metadata_dict['Data'] = unoconverter.convert()
- output = encodestring(jsonpickle.encode(metadata_dict))
+ output = encodestring(json.dumps(metadata_dict))
elif '--setmetadata' in param_list:
unoconverter.setMetadata(metadata)
output = document_url
Modified: erp5/trunk/utils/cloudooo/cloudooo/manager.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/manager.py?rev=41728&r1=41727&r2=41728&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/manager.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/manager.py [utf8] Thu Dec 23 17:51:47 2010
@@ -242,6 +242,7 @@ class Manager(object):
zip = False
try:
response_dict = {}
+ response_dict["mime"] = ""
# XXX - use html format instead of xhtml
if orig_format in ("presentation", "graphics") and extension == "xhtml":
extension = 'html'
@@ -266,7 +267,7 @@ class Manager(object):
return (200, response_dict, "")
except Exception, e:
logger.error(e)
- return (402, {}, e.args[0])
+ return (402, response_dict, e.args[0])
def getAllowedTargetItemList(self, content_type):
"""Wrapper getAllowedExtensionList but returns a dict.
Modified: erp5/trunk/utils/cloudooo/cloudooo/tests/testUnoConverter.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/tests/testUnoConverter.py?rev=41728&r1=41727&r2=41728&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/tests/testUnoConverter.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/tests/testUnoConverter.py [utf8] Thu Dec 23 17:51:47 2010
@@ -27,7 +27,7 @@
##############################################################################
import unittest
-import jsonpickle
+import json
import pkg_resources
from subprocess import Popen, PIPE
from os.path import exists, join
@@ -59,9 +59,7 @@ class TestUnoConverter(cloudoooTestCase)
'com.sun.star.text.TextDocument',
'MS Word 97')],
doc_type_list_by_extension=dict(doc=['com.sun.star.text.TextDocument']))
- jsonpickle_path = "/".join(pkg_resources.resource_filename("jsonpickle",
- "").split("/")[:-1])
- mimemapper_pickled = jsonpickle.encode(mimemapper)
+ mimemapper_pickled = json.dumps(mimemapper)
command = [join(self.office_binary_path, "python"),
pkg_resources.resource_filename("cloudooo",
"helper/unoconverter.py"),
@@ -73,8 +71,7 @@ class TestUnoConverter(cloudoooTestCase)
"--document_url='%s'" % self.document.getUrl(),
"--destination_format='%s'" % "doc",
"--source_format='%s'" % "odt",
- "--mimemapper='%s'" % mimemapper_pickled,
- "--jsonpickle_path='%s'" % jsonpickle_path]
+ "--mimemapper='%s'" % mimemapper_pickled]
stdout, stderr = Popen(' '.join(command), shell=True,
stdout=PIPE, stderr=PIPE).communicate()
self.assertEquals(stderr, '')
Modified: erp5/trunk/utils/cloudooo/setup.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/setup.py?rev=41728&r1=41727&r2=41728&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/setup.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/setup.py [utf8] Thu Dec 23 17:51:47 2010
@@ -31,7 +31,6 @@ setup(name='cloudooo',
'PasteDeploy',
'PasteScript',
'WSGIUtils',
- 'jsonpickle',
'psutil',
'lxml',
],
More information about the Erp5-report
mailing list