[Kimchi-devel] [PATCH 1/4] Add ResourceAlreadyExists Exception (HTTP 409)

Aline Manera alinefm at linux.vnet.ibm.com
Thu Jun 12 18:03:10 UTC 2014


On 06/12/2014 04:07 AM, Hongliang Wang wrote:
> When user tries to create a resource with an existing name, we should return
> HTTP 409 status code to tell the user and let him/her choose another one.
>
> Signed-off-by: Hongliang Wang <hlwang at linux.vnet.ibm.com>
> ---
>   src/kimchi/control/base.py | 3 +++
>   src/kimchi/exception.py    | 4 ++++
>   2 files changed, 7 insertions(+)
>
> diff --git a/src/kimchi/control/base.py b/src/kimchi/control/base.py
> index f8a5210..aaa479d 100644
> --- a/src/kimchi/control/base.py
> +++ b/src/kimchi/control/base.py
> @@ -28,6 +28,7 @@ from kimchi.control.utils import validate_params
>   from kimchi.exception import InvalidOperation, InvalidParameter
>   from kimchi.exception import KimchiException
>   from kimchi.exception import MissingParameter, NotFoundError,  OperationFailed
> +from kimchi.exception import ResourceAlreadyExists
>
>
>   class Resource(object):
> @@ -84,6 +85,8 @@ class Resource(object):
>                   raise cherrypy.HTTPError(400, e.message)
>               except InvalidOperation, e:
>                   raise cherrypy.HTTPError(400, e.message)
> +            except ResourceAlreadyExists, e:
> +                raise cherrypy.HTTPError(409, e.message)
>               except OperationFailed, e:
>                   raise cherrypy.HTTPError(500, e.message)
>               except NotFoundError, e:
> diff --git a/src/kimchi/exception.py b/src/kimchi/exception.py
> index fcf60cc..38daeab 100644
> --- a/src/kimchi/exception.py
> +++ b/src/kimchi/exception.py
> @@ -91,3 +91,7 @@ class IsoFormatError(KimchiException):
>
>   class TimeoutExpired(KimchiException):
>       pass
> +
> +
> +class ResourceAlreadyExists(KimchiException):
> +    pass

You don't need to create a new exception type
In those situation, we use InvalidParameter()
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20140612/85ea33a0/attachment.html>


More information about the Kimchi-devel mailing list