neutron/neutron/api
Salvatore Orlando 2c40310584 Use pecan controllers for routing
Pecan defines several efficient mechanism for routing requests to
the appropriate controller, but the current code for Neutron's
Pecan WSGI server basically uses Pecan hooks to route requests.

This patch partially fixes that, removing the 'resource_identifier'
pecan hook and replacing it with explicit pecan routes between
controllers added at resource registration time.

All the remaining hooks, like attribute_population and
policy_enforments, which were relying on finding the resource
name in the pecan.request threadlocal variable have been updated.

This patch also:
- ensures the appropriate plugin is always selected for a given
  resource
- add a common NeutronPecanController base class for the classes
  CollectionsController and ItemaController
- Fixes the way in which plurals and singulars are handled in
  neutron.api.v2.resource_heper

Change-Id: I4ec0d2276c3974117b497228d289c3fb0dc5a140
2015-09-18 06:00:14 -07:00
..
rpc Fix TypeError caused by delete_agent_gateway_port() 2015-09-14 17:09:19 -04:00
v2 Use pecan controllers for routing 2015-09-18 06:00:14 -07:00
views Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
__init__.py Rename Quantum to Neutron 2013-07-06 15:02:43 -04:00
api_common.py Python 3: do not compare int and NoneType 2015-08-05 11:24:57 +02:00
extensions.py Use pecan controllers for routing 2015-09-18 06:00:14 -07:00
versions.py Python 3: encode unicode response bodies 2015-08-13 19:13:38 +09:00