diff options
| author | Harry (Open ERP) <hmo@tinyerp.com> | 2010-04-13 16:33:20 +0530 |
|---|---|---|
| committer | Harry (Open ERP) <hmo@tinyerp.com> | 2010-04-13 16:33:20 +0530 |
| commit | 6a94de909b027dc1259b3fc8b4d1cd16d1d2c467 (patch) | |
| tree | d20f1cf24c56199078e5125b28a7372bf8fb536e /addons/document_ftp/ftpserver/abstracted_fs.py | |
| parent | 522724913410a7aa2cf881f1394a36cbd9a8107e (diff) | |
[REF+IMP] document
bzr revid: hmo@tinyerp.com-20100413110320-9x1fy7l432sinxvd
Diffstat (limited to 'addons/document_ftp/ftpserver/abstracted_fs.py')
| -rw-r--r-- | addons/document_ftp/ftpserver/abstracted_fs.py | 35 |
1 files changed, 11 insertions, 24 deletions
diff --git a/addons/document_ftp/ftpserver/abstracted_fs.py b/addons/document_ftp/ftpserver/abstracted_fs.py index 0ffa8eb80f2..54b2cb9830f 100644 --- a/addons/document_ftp/ftpserver/abstracted_fs.py +++ b/addons/document_ftp/ftpserver/abstracted_fs.py @@ -309,31 +309,18 @@ class abstracted_fs: def open(self, node, mode): if not node: raise OSError(1, 'Operation not permited.') - # Reading operation - if node.type == 'file': - cr = pooler.get_db(node.context.dbname).cursor() - uid = node.context.uid - if not self.isfile(node): - raise OSError(1, 'Operation not permited.') - fobj = node.context._dirobj.pool.get('ir.attachment').browse(cr, uid, node.file_id, context=node.context.context) - if fobj.store_method and fobj.store_method== 'fs' : - s = StringIO.StringIO(node.get_data(cr, fobj)) - else: - s = StringIO.StringIO(base64.decodestring(fobj.db_datas or '')) - s.name = node - cr.close() - return s - elif node.type == 'content': - uid = node.context.uid - cr = pooler.get_db(node.context.dbname).cursor() - pool = pooler.get_pool(node.context.dbname) - res = getattr(pool.get('document.directory.content'), 'process_read')(cr, uid, node) - res = StringIO.StringIO(res) - res.name = node - cr.close() - return res - else: + # Reading operation + cr = pooler.get_db(node.context.dbname).cursor() + res = False + #try: + if node.type not in ('collection','database'): + res = node.open(cr, mode) + #except: + # pass + cr.close() + if not res: raise OSError(1, 'Operation not permited.') + return res # ok, but need test more |
