From 8230533824fd170498e51b43dd2f20e6af410c53 Mon Sep 17 00:00:00 2001 From: Jesse Andrews Date: Mon, 28 Nov 2011 17:00:47 -0800 Subject: removed logic of throwing exception if no floating ip fixes 897089 Change-Id: Iaa03c7b75abf67c78b4605c29ef1770c96c6a199 --- nova/api/openstack/v2/contrib/floating_ips.py | 7 ++----- nova/db/sqlalchemy/api.py | 15 ++++++--------- nova/exception.py | 4 ---- 3 files changed, 8 insertions(+), 18 deletions(-) diff --git a/nova/api/openstack/v2/contrib/floating_ips.py b/nova/api/openstack/v2/contrib/floating_ips.py index 9689eac48..8bb575682 100644 --- a/nova/api/openstack/v2/contrib/floating_ips.py +++ b/nova/api/openstack/v2/contrib/floating_ips.py @@ -77,13 +77,10 @@ class FloatingIPController(object): return _translate_floating_ip_view(floating_ip) def index(self, req): + """Return a list of floating ips allocated to a project.""" context = req.environ['nova.context'] - try: - get_floating_ips = self.network_api.get_floating_ips_by_project - floating_ips = get_floating_ips(context) - except exception.FloatingIpNotFoundForProject: - floating_ips = [] + floating_ips = self.network_api.get_floating_ips_by_project(context) return _translate_floating_ips_view(floating_ips) diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py index d8a52dd45..cd6d2b736 100644 --- a/nova/db/sqlalchemy/api.py +++ b/nova/db/sqlalchemy/api.py @@ -637,15 +637,12 @@ def floating_ip_get_all_by_project(context, project_id): authorize_project_context(context, project_id) session = get_session() # TODO(tr3buchet): why do we not want auto_assigned floating IPs here? - floating_ip_refs = session.query(models.FloatingIp).\ - options(joinedload_all('fixed_ip.instance')).\ - filter_by(project_id=project_id).\ - filter_by(auto_assigned=False).\ - filter_by(deleted=False).\ - all() - if not floating_ip_refs: - raise exception.FloatingIpNotFoundForProject(project_id=project_id) - return floating_ip_refs + return session.query(models.FloatingIp).\ + options(joinedload_all('fixed_ip.instance')).\ + filter_by(project_id=project_id).\ + filter_by(auto_assigned=False).\ + filter_by(deleted=False).\ + all() @require_context diff --git a/nova/exception.py b/nova/exception.py index c6e08824b..f30218ab0 100644 --- a/nova/exception.py +++ b/nova/exception.py @@ -548,10 +548,6 @@ class FloatingIpNotFoundForAddress(FloatingIpNotFound): message = _("Floating ip not found for address %(address)s.") -class FloatingIpNotFoundForProject(FloatingIpNotFound): - message = _("Floating ip not found for project %(project_id)s.") - - class FloatingIpNotFoundForHost(FloatingIpNotFound): message = _("Floating ip not found for host %(host)s.") -- cgit