Optimize if/else logic in quantum.api.v2.base.prepare_request_body()

Removed redundant checkups of variables

Fixes bug #1096932

Change-Id: Icdee0e946a77865928b942d3248e39e771af0656
Remove accessing cfg.CONF.DATABASE in nec-agent

Fixes bug 1099162

The database configuration was moved to the common DB module.
There no longer needs to access database configuration in the
plugin specific code.

Change-Id: I4b80ea1e84ffa06d0fffa7f8ccdee08a5b77e239
Add exception validation for subnet used.

As a result of bug 1093754 there was no validation of the actual
exception returned.

Change-Id: Ia3104ca523d30ea40c354afa62ed5ce2b88d5b7e
Adds a Hyper-V Quantum plugin

Blueprint quantum-plugin-hyper-v

Initial Hyper-V Quantum plugin including VLAN support.
Support for NVGRE networking will be added in a subsequent patch.
The plugin architecture relies heavily on the OVS plugin, with some
design differences to handle different network types via polymorphism.

The plugin contains two main components:

The plugin itself, to be executed on Linux or Windows
The L2 agent, to be executed on each Hyper-V node

L3 networking is currently handled on Linux with the existing agents.

A Nova Quantum Vif plugin is included in the Nova project.

Change-Id: Ie64bff448e3fb1129c5e24baaf148cdcc0aed8b9
Adds support for deploying Quantum on Windows

Some changes in setup.py are required to properly handle dependencies
and data files on WIndows (including Hyper-V server).

A console script called "quantum-hyperv-agent" has also been added to
start the Hyper-V agent

Change-Id: Ifac2d33afabac242d9dab87b0bc1764421efc16f
Name the securitygrouprules.direction enum.

Updates to the SecurityGroupRule model and migration so that we
explicitly name the securitygrouprules.direction enum. This fixes
'Postgresql ENUM type requires a name.' errors.

Fixes LP Bug #1099267.

Change-Id: Ia46fe8d4b0793caaabbfc71b7fa5f0cbb8c6d24b
Merge "Remove accessing cfg.CONF.DATABASE in nec-agent"
Merge "Add exception validation for subnet used."
ensure all enums in loadbalancer models have names

fixes bug 1099565

Postgres requires that enums types have names.  This fix adds the name
parameter to the Enum declaration.

Change-Id: Ica67c6cf0b8959761f3022552c1c6a807a4ced82
Merge "Name the securitygrouprules.direction enum."
Merge "Adds a Hyper-V Quantum plugin"
Merge "Adds support for deploying Quantum on Windows"
Merge "Optimize if/else logic in quantum.api.v2.base.prepare_request_body()"
Merge "ensure all enums in loadbalancer models have names"