]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commit
L3 Agent restructure - observer hierarchy
authorPaul Michali <pcm@cisco.com>
Wed, 10 Dec 2014 23:50:56 +0000 (18:50 -0500)
committerPaul Michali <pcm@cisco.com>
Fri, 12 Dec 2014 22:55:35 +0000 (17:55 -0500)
commitd264666bba0d633f2c6be423bf9f7e08db4ff289
treeef81e4193934c0209c777e07306df775d2cd4e98
parentd7c5306360a052201e0d91019ebc5a1062808241
L3 Agent restructure - observer hierarchy

This commit creates the basic observer hierarchy for advanced
services, as part of a multi-step refactoring effort of the L3 agent.

The change set has these modifications:

- Device drivers for VPN and FW services are loaded.
- AdvancedService child instances are created for VPN and FW.
- L3EventObservers is created by the L3 agent and the VPN and FW
  service objects are registered for notifications of events.
- VPN device driver event handlers moved to VPN service instance.
- VPN device driver callbacks to VPN agent, moved to VPN service.
  to service from the VPN device driver.
- Test cases updated and moved related to these changes.
- UT updated to test new methods and refactoring changes.

Future commits will massage the event notification points in the
L3 agent, and implement handlers.

Please keep these things in mind, when reviewing:
- The goal is to refactor the code and not 'improve/change'
  functionality (other than broken tests).
- This is one step of a series of steps to move to the 'final'
  restructuring.
- Because we're incrementally changing the code, there may be
  temporary changes to allow existing code to continue to work.

Co-Authored-By: Assaf Muller
Change-Id: I674c72e37b56aa1f729110310e6f697297c47c09
Partially-implements: blueprint restructure-l3-agent
neutron/agent/l3/agent.py
neutron/agent/l3/event_observers.py [new file with mode: 0644]
neutron/services/advanced_service.py [new file with mode: 0644]
neutron/tests/functional/agent/test_l3_agent.py
neutron/tests/unit/agent/test_l3_event_observers.py [new file with mode: 0644]
neutron/tests/unit/services/test_advanced_service.py [new file with mode: 0644]