CLOUDSTACK-2568: ACS41 regression in storage subsystem (seen with local storage and 2 or more hosts)

Changes:
- In VolumeReservationVO, the  getter method of a column had a typo, causing us to create a wrong searchbuilder. It was searching over the 'id' column instead of 'vm_reservation_id' causing
- This bug was causing the vm deployment to choose a wrong pool during deployment since the search was choosing incorrectly
- This bug in the GenericSearchBuilder is also fixed - if the getter method does not use the standard 'get' or 'is' prefix, one should annotate that method using
 @Column(name = "<column_name>") and indicate which column this method refers to. This will cause the GenericSearchBuilder to identify the field correctly.
CLOUDSTACK-2308 fixed adding route in vware for mgmt subnet

Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
CLOUDSTACK-681:Implicit Dedication UI support
CLOUDSTACK-2398: ssvm-check.sh failed with permission error

RPCbind service is running in the 4.2 systemVMs resulting in ssvm-check
trying to write to the mountpoint. Avoid writing to the rpc_pipefs.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Implicit Dedication - Key and Value for iMplicit Dedication planner
CLOUDSTACK-2585: Failed to apply new PF rules after deleting the existing PF Rule with Cisco VNMC Provider
Each rule created in VNMC under a policy object needs to have an unique order value. Rules are evaluated based on this value.
Eariler order was computed based on the rule count under a policy object. This resulted in duplicate order value when rules get
deleted and recreated. Changed the logic to compute order based on the CS db id of the rule which is unique.
Update the Logical Router NatRules to be compatible with the NVP 3.x.x
platform

Use the Gson adapters to serialize/deserialize the NatRules

Switch the NiciraNvpApi to a single gson Object with the proper adapters

Fix missing order setting for static nat rules and portforwarding rules

Return an error when a port range is passed in a portforwarding rule

The serializer is not required

Fix a bug where an ip address could be released even if it was still in
use for SourceNat

Throw a json parse exception when the type is unknown to the adapter
CLOUDSTACK-2567 - check for ! dmcEnabled.
Minor tagging and comments in tests

Adding tags to the deployvm test from the marvin tutorial
Adding docstrings to the vm snapshot tests
Add tag to the pvlan test

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Refactoring the planner tests

1. Planner tests rewritten to use marvin integration libraries
2. Included verification of multi VM deployment for user dispersion
3. Included a test for user concentrated planner

TODO: firstfit planner test doesn't actually test the planner strategy.
It only deploys a VM using the offering.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
CLOUDSTACK-2577: Fix exception handling for listPortForwarding API

listPortForwarding API returns an exception if the PF is deleted.
Changed testcases to handle this exception.

Signed-off-by: Girish Shilamkar <girish@clogeny.com>
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Bad indentation corrected

For some reason test got unindented wrongly by Eclipse.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
changing default 'GSLB provider' check box value to unchecked in UI
CLOUDSTACK-2360: listnetscalerloadbalancerresponse is not including any
information about GSLB status

adds the infomration if NetScaler is provisioned as GSLB service
provider
portable ip and api changes
CLOUDSTACK-2602. XenServer storage motion strategy returns true for canHandle even though hosts are of different hypervisor type. Fixed the canHandle routine to return true only if source and destination hosts are of type XenServer.
CLOUDSTACK-2623. Provide appropriate AWS EC2 error codes in error thrown by CS AWSAPI. Since CS has very few generic errorcode groups, in AWSAPI parse the response message and translate the CS error to AWS EC2 error code.
Provide support for the following error codes -
AuthFailure, DependencyViolation, IncorrectState, InvalidAMIID.NotFound, InvalidAttachment.NotFound, InvalidDevice.InUse, InvalidFilter, InvalidGroup.Duplicate, InvalidGroup.InUse, InvalidGroup.NotFound
InvalidInstanceID.NotFound, InvalidKeyPair.Duplicate, InvalidKeyPair.Format, InvalidKeyPair.NotFound, InvalidParameterCombinatio, InvalidParameterValue, InvalidPermission.Duplicate, InvalidPermission.Malformed
InvalidSnapshot.NotFound, InvalidVolume.NotFound, InvalidVolumeID.Duplicate, InvalidZone.NotFound, MissingParameter, UnsupportedOperation, SignatureDoesNotMatch, InternalError, AddressLimitExceeded, InstanceLimitExceeded
VolumeLimitExceeded, Unavailable, ResourceLimitExceeded

CLOUDSTACK-2624. Support ModifyInstanceAttribute API in AWSAPI.
2 AWS instance attributes will be supported, 'InstanceType' and 'UserData'
As per AWS EC2, to modify both the attributes, the instance must be stopped. If not throw 'IncorrectInstanceState' error
Add missing license headers
CLOUDSTACK-2516: Adding upgrade steps to deal with authenticator changes
CLOUDSTACK-747: UI - create network offering - default sourceNat type as per account instead of per zone.