[Erp5-report] r39026 nicolas - /erp5/trunk/utils/cloudooo/cloudooo/manager.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Oct 11 16:50:19 CEST 2010


Author: nicolas
Date: Mon Oct 11 16:50:07 2010
New Revision: 39026

URL: http://svn.erp5.org?rev=39026&view=rev
Log:
Improve backward compatibility between oood and cloudooo.
All oood method signatures are based in this tuple:
  ('filename', 'data', 'meta', 'extension', 'orig_format')
This commit consist into modifying default parameters of methods 
to reflect better old API.
Some variable names are modified to follow order of parameters.

reviewed by Gabriel.

Modified:
    erp5/trunk/utils/cloudooo/cloudooo/manager.py

Modified: erp5/trunk/utils/cloudooo/cloudooo/manager.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/manager.py?rev=39026&r1=39025&r2=39026&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/manager.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/manager.py [utf8] Mon Oct 11 16:50:07 2010
@@ -1,3 +1,4 @@
+# -*- coding: utf-8 -*-
 ##############################################################################
 #
 # Copyright (c) 2002-2010 Nexedi SA and Contributors. All Rights Reserved.
@@ -133,18 +134,20 @@ class Manager(object):
     else:
       return [('','')]
 
-  def run_convert(self, filename, file):
+  def run_convert(self, filename='', data=None, meta=None, extension=None,
+                  orig_format=None):
     """Method to support the old API. Wrapper getFileMetadataItemList but 
     returns a dict.
     This is a Backwards compatibility provided for ERP5 Project, in order to
     keep compatibility with OpenOffice.org Daemon. 
     """
-    orig_format = filename.split('.')[-1]
+    if not extension:
+      extension = filename.split('.')[-1]
     try:
       response_dict = {}
-      response_dict['meta'] = self.getFileMetadataItemList(file, orig_format, True)
+      response_dict['meta'] = self.getFileMetadataItemList(data, extension, True)
       response_dict['meta']['MIMEType'] = self.getFileMetadataItemList(response_dict['meta']['Data'], 
-                                                                        orig_format)['MIMEType']
+                                                                        extension)['MIMEType']
       # XXX - Backward compatibility: Previous API expects 'mime' now we use 'MIMEType'"
       response_dict['meta']['mime'] = response_dict['meta']['MIMEType']
       response_dict['data'] = response_dict['meta']['Data'] 
@@ -155,29 +158,33 @@ class Manager(object):
       logger.error(e)
       return (402, {}, e.args[0])
 
-  def run_setmetadata(self, filename, file, meta):
+  def run_setmetadata(self, filename='', data=None, meta=None,
+                      extension=None, orig_format=None):
     """Wrapper updateFileMetadata but returns a dict.
     This is a Backwards compatibility provided for ERP5 Project, in order to
     keep compatibility with OpenOffice.org Daemon.
     """
-    orig_format = filename.split('.')[-1]
+    if not extension:
+      extension = filename.split('.')[-1]
     response_dict = {}
     try:
-      response_dict['data'] = self.updateFileMetadata(file, orig_format, meta)
+      response_dict['data'] = self.updateFileMetadata(data, extension, meta)
       return (200, response_dict, '')
     except Exception, e:
       logger.error(e)
       return (402, {}, e.args[0])
 
-  def run_getmetadata(self, filename, file):
+  def run_getmetadata(self, filename='', data=None, meta=None,
+                      extension=None, orig_format=None):
     """Wrapper for getFileMetadataItemList.
     This is a Backwards compatibility provided for ERP5 Project, in order to
     keep compatibility with OpenOffice.org Daemon.
     """
-    orig_format = filename.split('.')[-1]
+    if not extension:
+      extension = filename.split('.')[-1]
     response_dict = {}
     try:
-      response_dict['meta'] = self.getFileMetadataItemList(file, orig_format)
+      response_dict['meta'] = self.getFileMetadataItemList(data, extension)
       # XXX - Backward compatibility: Previous API expects 'title' now we use 'Title'"
       response_dict['meta']['title'] = response_dict['meta']['Title']
       return (200, response_dict, '')
@@ -185,7 +192,8 @@ class Manager(object):
       logger.error(e)
       return (402, {}, e.args[0])
 
-  def run_generate(self, filename, file, something, format, orig_format):
+  def run_generate(self, filename='', data=None, meta=None, extension=None,
+                   orig_format=''):
     """Wrapper convertFile but returns a dict which includes mimetype. 
     This is a Backwards compatibility provided for ERP5 Project, in order to keep
     compatibility with OpenOffice.org Daemon.
@@ -193,28 +201,30 @@ class Manager(object):
     # XXX - ugly way to remove "/" and "."
     orig_format = orig_format.split('.')[-1]
     orig_format = orig_format.split('/')[-1]
-    if "htm" in format:
+    if "htm" in extension:
       zip = True
     else:
       zip = False
     try:
       response_dict = {}
       # XXX - use html format instead of xhtml
-      if orig_format == "presentation" and format == "xhtml":
-        format = 'html'
-      elif orig_format == "spreadsheet" and format in ("html", "xhtml"):
-        format = "htm"
-      response_dict['data'] = self.convertFile(file, orig_format, format, zip)
+      if orig_format == "presentation" and extension == "xhtml":
+        extension = 'html'
+      elif orig_format == "spreadsheet" and extension in ("html", "xhtml"):
+        extension = "htm"
+      response_dict['data'] = self.convertFile(data, orig_format, extension,
+                                               zip)
       # FIXME: Fast solution to obtain the html or pdf mimetypes
       if zip:
         response_dict['mime'] = "application/zip"
-      elif format in ("html", "htm", "xhtml"):
+      elif extension in ("html", "htm", "xhtml"):
         response_dict['mime'] = "text/html"
-      elif format == "pdf":
+      elif extension == "pdf":
         response_dict['mime'] = "application/pdf"
       else:
-        response_dict['mime'] = self.getFileMetadataItemList(response_dict['data'], 
-                                                            format)['MIMEType']
+        response_dict['mime'] = self.getFileMetadataItemList(
+                                                         response_dict['data'],
+                                                         extension)['MIMEType']
       return (200, response_dict, "")
     except Exception, e:
       logger.error(e)




More information about the Erp5-report mailing list