From 3c95a73f922102d4c4840f89dc6cd341ac8b4fd0 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Braun Date: Tue, 4 Aug 2015 11:30:43 +0200 Subject: [PATCH] Return 404 errors when FIPs are not found Change-Id: I5cd04deb28e67a997b99435aa72095b11d2f9948 Partial-Bug: #1481251 --- .../opencontrail/vnc_client/fip_res_handler.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/neutron_plugin_contrail/plugins/opencontrail/vnc_client/fip_res_handler.py b/neutron_plugin_contrail/plugins/opencontrail/vnc_client/fip_res_handler.py index 0025e49..b46aa1e 100644 --- a/neutron_plugin_contrail/plugins/opencontrail/vnc_client/fip_res_handler.py +++ b/neutron_plugin_contrail/plugins/opencontrail/vnc_client/fip_res_handler.py @@ -28,7 +28,11 @@ class FloatingIpMixin(object): def _neutron_dict_to_fip_obj(self, fip_q, is_admin=False, tenant_id=None, fip_obj=None): if not fip_obj: - fip_obj = self._resource_get(id=fip_q['id']) + try: + fip_obj = self._resource_get(id=fip_q['id']) + except vnc_exc.NoIdError: + self._raise_contrail_exception('FloatingIPNotFound', + floatingip_id=fip_q['id']) vmi_get_handler = vmi_handler.VMInterfaceGetHandler( self._vnc_lib) @@ -163,7 +167,11 @@ class FloatingIpDeleteHandler(res_handler.ResourceDeleteHandler): resource_delete_method = 'floating_ip_delete' def resource_delete(self, context, fip_id): - self._resource_delete(id=fip_id) + try: + self._resource_delete(id=fip_id) + except vnc_exc.NoIdError: + self._raise_contrail_exception('FloatingIPNotFound', + floatingip_id=fip_id) class FloatingIpUpdateHandler(res_handler.ResourceUpdateHandler,