From 8d0b4a741816302a30efa28442563afefea8b9cd Mon Sep 17 00:00:00 2001 From: Panos Christeas Date: Thu, 26 Nov 2009 19:24:00 +0530 Subject: [MERGE] merge from lp:~xrg/openobject-addons/doc2-5.2 bzr revid: hmo@tinyerp.com-20091126135400-z32iycvadbt9so8n --- addons/document_webdav/DAV/errors.py | 56 ++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100755 addons/document_webdav/DAV/errors.py (limited to 'addons/document_webdav/DAV/errors.py') diff --git a/addons/document_webdav/DAV/errors.py b/addons/document_webdav/DAV/errors.py new file mode 100755 index 00000000000..9c0e7667913 --- /dev/null +++ b/addons/document_webdav/DAV/errors.py @@ -0,0 +1,56 @@ +#!/usr/bin/env python +""" + + Exceptions for the DAVserver implementation + +""" + +class DAV_Error(Exception): + """ in general we can have the following arguments: + + 1. the error code + 2. the error result element, e.g. a element + """ + + def __init__(self,*args): + if len(args)==1: + self.args=(args[0],"") + else: + self.args=args + +class DAV_Secret(DAV_Error): + """ the user is not allowed to know anything about it + + returning this for a property value means to exclude it + from the response xml element. + """ + + def __init__(self): + DAV_Error.__init__(self,0) + pass + +class DAV_NotFound(DAV_Error): + """ a requested property was not found for a resource """ + + def __init__(self,*args): + if len(args): + if isinstance(args[0],list): + stre = "Path %s not found!"%('/'.join(args[0])) + else: + stre = args[0] + DAV_Error.__init__(self,404,stre) + else: + DAV_Error.__init__(self,404) + + pass + +class DAV_Forbidden(DAV_Error): + """ a method on a resource is not allowed """ + + def __init__(self,*args): + if len(args): + DAV_Error.__init__(self,403,args[0]) + else: + DAV_Error.__init__(self,403) + pass + -- cgit v1.2.3