allow subclasses to modify the parents model hooks

fixes bug 1210387

This change modifies the model hook processing to call the method on the
instance if a hook is registered as a string.  If the hook is a
callable, then callable is called with the hook arguments.

Change-Id: Id14ae89f3f12a500920d248226e0ecba8e35e74c
Enable conversion for composite attribute items

Bug 1207881

Enable 'dict validators' to convert composite attributes' items
using a 'convert_to' specification in a way similar to first-level
API attributes.
This is needed in order to ensure boolean sub-attributes are
properly handled.

Change-Id: I7f466befaa88112cf7e9b77d854ac292b2af638f
Updated from global requirements

Also, revert commit 9826e0932596e77414b16b3c4ba237d847b30db1

Change-Id: Ibf423f14a5c37aa298b2115bfd4936f660c6f530
Remove last vestiges of nose

We don't use nose anymore, but it was still referenced in a few places.

Delete them.

Closes-Bug: 1210998
Change-Id: I5e00edd071b8e99e54cdbbf2de277aa95eb57567
Fix some NVP tests do not do cleanup of nvp ports

Some of the NVP test do not execute self.addCleanup(self.fc.reset_all)
from setUp() as NiciraPluginV2TestCase is not the first mixin.
This casuses left over ports to still exist between different testcases.
This patch only fixes this issue for TestNiciraPortsV2 and
NiciraPortSecurityTestCaseas, some of the other tests require the setUp()
for the first mixin to be called for their tests to work.

Note: this is why the tests for the Remove DHCP lease logic are failing.

Fixes bug: 1209355

Change-Id: I932471cdb8925353c5825cd70c8217511d6d7938
Remove DHCP lease logic

Previously neutron was keeping track of dhcp lease time in order
to ensure it didn't hand out an ip address that was already leased.
This patch removes that logic and instead leverages the dhcp_release
utility. This allows us to reuse ip addresses immediately after a port
is deleted. This patch also bumps the lease time to 24 hours instead
of 2 minutes with reduces the amount of dhcp traffic.

DocImpact

There is a DocImpact for this bug related to the upgrade path. One should
first upgrade their dhcp-agents. Then wait till the dhcp_lease time has
expired. Lastly, update neutron-server in order to avoid the case where
an instance is deleted and the dnsmasq process has not released the lease
and neturon allocates that ip to a new port.

Fixes bug: 1202392
Implements blueprint: remove-dhcp-lease

Change-Id: Ifcb4f093c92904ceb896438987d53e692eb7fb26
Firewall as a Service (FWaaS) Iptables Driver

blueprint quantum-fwaas-iptables-driver

This is IPTables Driver for "Firewall As A
Service" feature.

This implements
- Fwaas rules are mapped to IPTables
- The rules are installed in the network
  namespace of quantum-routers

Change-Id: I157182f2c86fbcf8c141b9ad3cfc71168153ebf8
Imported Translations from Transifex

Change-Id: I4f909a71b04e20767183908d834fa79fa253e62e
Revert "Sync rpc/impl_qpid.py from oslo-incubator."

This reverts commit 3f4bb0443e96e9b7d04e3e4e77a8bb4e8647e01e.

Fixes LP Bug #1211778.

Change-Id: I254995a1bf5416fb70fbcac28ee399b1373efde7
Merge "Imported Translations from Transifex"
fix up inadevertant octal to make hacking pass

Change-Id: I82097f1f507ddf0827714598c27ec3c950bdeaee
Merge "Fix some NVP tests do not do cleanup of nvp ports"
Merge "Remove DHCP lease logic"
Remove references to enable_metadata_access_network_option

Bug 1211850

This configuration variable is vestigial and not used anywhere
in the code. References to it should be removed to avoid confusion.

Change-Id: I13f86fe8b964c163324160b4c983e773e6b93e40
Nicira plugin: Reduce message severity to DEBUG from INFO

Bug 1211860

This applies to the message logged for missing or empty cluster attributes.

Change-Id: I30dfac773f5ac268ffb6658984108f1698caabfd
Merge "fix up inadevertant octal to make hacking pass"
Fix copy and paste error in docstring.

Change-Id: I763791f733b75b971d3db3a90d5eeefc62947266
Merge "Revert "Sync rpc/impl_qpid.py from oslo-incubator.""
Merge "Remove references to enable_metadata_access_network_option"
Refactor configuring of floating ips on a router.

This approach to configuring floating ips is stateless and idempotent.
This allows it to handle corner cases, such as reusing a floating ip
address with a different floating ip id in a way that is easier to
understand.

The concept is to wipe the floating ips clean and rebuild them each
time with the following optimizations.  To avoid bad performance in
manipulating iptables, it is called in the context of a call to
defer_apply_on.  To avoid a disruption in network flow a set
difference is use to determine the set of addresses that no longer
belong on the inteface rather than removing them all blindly.

Change-Id: I0cfb58d487b1925e0a0db2a701c5ea3c56a0b2b5
Fixes: Bug #1209011