Revision 7d368e73 snf-cyclades-app/synnefo/api/floating_ips.py

b/snf-cyclades-app/synnefo/api/floating_ips.py
46 46
from logging import getLogger
47 47
log = getLogger(__name__)
48 48

  
49
urlpatterns = patterns(
49
ips_urlpatterns = patterns(
50 50
    'synnefo.api.floating_ips',
51 51
    (r'^(?:/|.json|.xml)?$', 'demux'),
52 52
    (r'^/(\w+)(?:.json|.xml)?$', 'floating_ip_demux'),
53 53
)
54 54

  
55
pools_urlpatterns = patterns(
56
    "synnefo.api.floating_ips",
57
    (r'^(?:/|.json|.xml)?$', 'list_floating_ip_pools'),
58
)
59

  
55 60

  
56 61
def demux(request):
57 62
    if request.method == 'GET':
......
183 188
    log.info("User '%s' released IP '%s", userid, floating_ip)
184 189

  
185 190
    return HttpResponse(status=204)
191

  
192

  
193
@api.api_method(http_method='GET', user_required=True, logger=log)
194
def list_floating_ip_pools(request):
195
    networks = Network.objects.filter(public=True, deleted=False)
196
    pools = [{"name": str(net.id)} for net in networks]
197
    request.serialization = "json"
198
    data = json.dumps({"floating_ip_pools": pools})
199
    request.serialization = "json"
200
    return HttpResponse(data, status=200)

Also available in: Unified diff