diff options
| author | Panos Christeas <xrg@linux.gr> | 2009-11-26 19:24:00 +0530 |
|---|---|---|
| committer | Harry (Open ERP) <hmo@tinyerp.com> | 2009-11-26 19:24:00 +0530 |
| commit | 8d0b4a741816302a30efa28442563afefea8b9cd (patch) | |
| tree | b55e82f0b338715645c6e3a584ba0231fa66e390 /addons/document_webdav/webdav_server.py | |
| parent | e65f61d4920949bbcdff1577624d36422c9f5473 (diff) | |
[MERGE] merge from lp:~xrg/openobject-addons/doc2-5.2
bzr revid: hmo@tinyerp.com-20091126135400-z32iycvadbt9so8n
Diffstat (limited to 'addons/document_webdav/webdav_server.py')
| -rw-r--r-- | addons/document_webdav/webdav_server.py | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/addons/document_webdav/webdav_server.py b/addons/document_webdav/webdav_server.py new file mode 100644 index 00000000000..f04315e13c9 --- /dev/null +++ b/addons/document_webdav/webdav_server.py @@ -0,0 +1,80 @@ +# -*- encoding: utf-8 -*- + +# +# Copyright P. Christeas <p_christ@hol.gr> 2008,2009 +# +# +# WARNING: This program as such is intended to be used by professional +# programmers who take the whole responsability of assessing all potential +# consequences resulting from its eventual inadequacies and bugs +# End users who are looking for a ready-to-use solution with commercial +# garantees and support are strongly adviced to contract a Free Software +# Service Company +# +# This program is Free Software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +############################################################################### + + +import netsvc +from dav_fs import tinydav_handler +from tools.config import config +from DAV.WebDAVServer import DAVRequestHandler +from service.websrv_lib import HTTPDir,FixSendError + +class DAVHandler(FixSendError,DAVRequestHandler): + verbose = False + + def get_userinfo(self,user,pw): + print "get_userinfo" + return False + def _log(self, message): + netsvc.Logger().notifyChannel("webdav",netsvc.LOG_DEBUG,message) + + def handle(self): + pass + + def finish(self): + pass + + def setup(self): + davpath = '/'+config.get_misc('webdav','vdir','webdav')+'/' + self.baseuri = "http://%s:%d%s"% (self.server.server_name,self.server.server_port,davpath) + self.IFACE_CLASS = tinydav_handler(self) + pass + + def log_message(self, format, *args): + netsvc.Logger().notifyChannel('webdav',netsvc.LOG_DEBUG_RPC,format % args) + + def log_error(self, format, *args): + netsvc.Logger().notifyChannel('xmlrpc',netsvc.LOG_WARNING,format % args) + + +try: + from service.http_server import reg_http_service,OpenERPAuthProvider + if (config.get_misc('webdav','enable',False)): + davpath = '/'+config.get_misc('webdav','vdir','webdav')+'/' + handler = DAVHandler + handler.verbose = config.get_misc('webdav','verbose',True) + handler.debug = config.get_misc('webdav','debug',True) + reg_http_service(HTTPDir(davpath,DAVHandler,OpenERPAuthProvider())) + netsvc.Logger().notifyChannel('webdav',netsvc.LOG_INFO,"WebDAV service registered at path: %s/ "% davpath) +except Exception, e: + logger = netsvc.Logger() + logger.notifyChannel('webdav', netsvc.LOG_ERROR, 'Cannot launch webdav: %s' % e) + +#eof + + + |
