bug : 14543

XenServer doesn't need to provide gateway
CS-13589: cloudstack 3.0 UI - volume page - when a volume is in "Migrating" state, disallow any action.
CS-9919: Support for Nexus Swiches (Cisco Vswitches)

Reviewed by: Sateesh Chodapuneedi, Devdeep Singh

Description:

This is the first in a series of commits for integrating the
Cloudstack Management Server with the Nexus 1000v Virtual
Supervisor Module.

These changes introduce the necessary API command interfaces
to work with a Cisco N1KV VSM. The backend logic is still to
be put in and will be incorporated in subsequent commits.
Please do not attempt to use these APIs until then. Also,
these are not yet filled in into commands.xml, so they are
not currently exposed.

Additional APIs would be added if required.

These changes will not break any current management server
functionality.

Given below is a description of the changes put in here:

	Added Cisco N1KV commands to core/api:
	    These are the added commands -

		AddCiscoNexusVSMCmd
		DeleteCiscoNexusVSMCmd
		ConfigureCiscoNexusVSMCmd
		ListCiscoNexusVSMCmd
		ListCiscoNexusVSMNetworksCmd

	Added a Network Element service file for Cisco N1KV.

	Declared the interface functions that we'll need for
	the N1KV VSM.

	Defined a DeviceVO file for the Cisco Nexus Element.

	Created a response file for Cisco Nexus VSM.

	Created new event types for external Switching Management devices.

	Put in logic to call interface methods in ListCiscoNexusVSMNetworksCmd
	and ListCiscoNexusVSMCmd

NOT VSM RELATED:
	Fixed minor typo in some of the event types for external load balancers.
Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)

    Description:

       Added properties of a VSM in the VSM VO class.

       Replaced the "url" input parameter by "ipaddress"
       in the AddCiscoNexusVSMCmd API.

       Added a new file - CiscoNexusVSMElement.java to
       contain the implementation of the functions
       declared in the VSMElementService interface, and
       put in implementations of the functions for the
       Nexus VSM API commands. These functions are
       defined in the CiscoNexusVSMElement class.

       Added a class for Port Profiles (PortProfile.java).
       The fields in this class are still not correctly
       declared as of now. We'll make the required changes
       going forward.

       In the next phase, we shall define and call the actual
       resource functions that will invoke the XML-RPC APIs
       (or equivalent API in face of XML-RPC API issues)
       to the N1KV VSM. We also need to define all the Dao
       access functions for the N1kv VSM. We will need to
       define new db tables and VO classes as applicable.
Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)

****NOTE*****
This set of changes will not compile. This is WIP.
*************

Description:

	Added CiscoNexusVSMDeviceManagerImpl class.

	Added CiscoNexusVSMResource class.

	Created a new class to provide a package to
	connect to Cisco Nexus VSMs. This will be a
	set of Java wrapper functions that allow us
	to connect/disconnect and send commands and
	receive the results of those commands via
	XML-RPC. These functions are yet to be
	implemented, and will be checked in in future
	commits.

	Added two new classes, VSMCommand and
	VSMResponse, to encapsulate XML-RPCcommands
	and responses to and from a Ciscon Nexus VSM.

	Put in the following function stubs inside the
	CiscoNexusVSMService class:

		connectToVSM()
		disconnectFromVSM()
		executeVSMCommand()

	Added new field in the Type enum of the "Host"
	interface, for Cisco Nexus VSMs.

****TODO in immediate commit****
************i*******************

	Fix all compile errors in CiscoNexusVSMDeviceManagerImpl.

	Define a new interface "CiscoNexusVSMDeviceManager" and
	make CiscoNexusVSMElement implement it.
Merge branch 'pvt-nexus-feature' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into pvt-nexus-feature

	Removed merge conflict in server/src/com/cloud/network/element/CiscoNexusVSMElement.java