You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ta...@apache.org on 2013/11/08 11:34:03 UTC

[16/29] CLOUSTACK-5099: Utils.py-has-wrong-reference, cleaned it. As well added Uniform naming convention Signed-off-by: SrikanteswaraRao Talluri

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listIsos.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listIsos.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listIsos.py
new file mode 100644
index 0000000..9394c05
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listIsos.py
@@ -0,0 +1,162 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all available ISO files."""
+from baseCmd import *
+from baseResponse import *
+class listIsosCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """list resources by account. Must be used with the domainId parameter."""
+        self.account = None
+        """true if the ISO is bootable, false otherwise"""
+        self.bootable = None
+        """list only resources belonging to the domain specified"""
+        self.domainid = None
+        """the hypervisor for which to restrict the search"""
+        self.hypervisor = None
+        """list ISO by id"""
+        self.id = None
+        """possible values are "featured", "self", "selfexecutable","sharedexecutable","executable", and "community". * featured : templates that have been marked as featured and public. * self : templates that have been registered or created by the calling user. * selfexecutable : same as self, but only returns templates that can be used to deploy a new VM. * sharedexecutable : templates ready to be deployed that have been granted to the calling user by another user. * executable : templates that are owned by the calling user, or public templates, that can be used to deploy a VM. * community : templates that have been marked as public but not featured. * all : all templates (only usable by admins)."""
+        self.isofilter = None
+        """true if the ISO is publicly available to all users, false otherwise."""
+        self.ispublic = None
+        """true if this ISO is ready to be deployed"""
+        self.isready = None
+        """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+        self.isrecursive = None
+        """List by keyword"""
+        self.keyword = None
+        """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+        self.listall = None
+        """list all isos by name"""
+        self.name = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """list objects by project"""
+        self.projectid = None
+        """List resources by tags (key/value pairs)"""
+        self.tags = []
+        """the ID of the zone"""
+        self.zoneid = None
+        self.required = []
+
+class listIsosResponse (baseResponse):
+    def __init__(self):
+        """the template ID"""
+        self.id = None
+        """the account name to which the template belongs"""
+        self.account = None
+        """the account id to which the template belongs"""
+        self.accountid = None
+        """true if the ISO is bootable, false otherwise"""
+        self.bootable = None
+        """checksum of the template"""
+        self.checksum = None
+        """the date this template was created"""
+        self.created = None
+        """true if the template is managed across all Zones, false otherwise"""
+        self.crossZones = None
+        """additional key/value details tied with template"""
+        self.details = None
+        """the template display text"""
+        self.displaytext = None
+        """the name of the domain to which the template belongs"""
+        self.domain = None
+        """the ID of the domain to which the template belongs"""
+        self.domainid = None
+        """the format of the template."""
+        self.format = None
+        """the ID of the secondary storage host for the template"""
+        self.hostid = None
+        """the name of the secondary storage host for the template"""
+        self.hostname = None
+        """the hypervisor on which the template runs"""
+        self.hypervisor = None
+        """true if template contains XS/VMWare tools inorder to support dynamic scaling of VM cpu/memory"""
+        self.isdynamicallyscalable = None
+        """true if the template is extractable, false otherwise"""
+        self.isextractable = None
+        """true if this template is a featured template, false otherwise"""
+        self.isfeatured = None
+        """true if this template is a public template, false otherwise"""
+        self.ispublic = None
+        """true if the template is ready to be deployed from, false otherwise."""
+        self.isready = None
+        """the template name"""
+        self.name = None
+        """the ID of the OS type for this template."""
+        self.ostypeid = None
+        """the name of the OS type for this template."""
+        self.ostypename = None
+        """true if the reset password feature is enabled, false otherwise"""
+        self.passwordenabled = None
+        """the project name of the template"""
+        self.project = None
+        """the project id of the template"""
+        self.projectid = None
+        """the date this template was removed"""
+        self.removed = None
+        """the size of the template"""
+        self.size = None
+        """the template ID of the parent template if present"""
+        self.sourcetemplateid = None
+        """true if template is sshkey enabled, false otherwise"""
+        self.sshkeyenabled = None
+        """the status of the template"""
+        self.status = None
+        """the tag of this template"""
+        self.templatetag = None
+        """the type of the template"""
+        self.templatetype = None
+        """the ID of the zone for this template"""
+        self.zoneid = None
+        """the name of the zone for this template"""
+        self.zonename = None
+        """the list of resource tags associated with tempate"""
+        self.tags = []
+        """the ID of the latest async job acting on this object"""
+        self.jobid = None
+        """the current status of the latest async job acting on this object"""
+        self.jobstatus = None
+
+class tags:
+    def __init__(self):
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listLBHealthCheckPolicies.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listLBHealthCheckPolicies.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listLBHealthCheckPolicies.py
new file mode 100644
index 0000000..03c312d
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listLBHealthCheckPolicies.py
@@ -0,0 +1,69 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists load balancer HealthCheck policies."""
+from baseCmd import *
+from baseResponse import *
+class listLBHealthCheckPoliciesCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """the ID of the load balancer rule"""
+        """Required"""
+        self.lbruleid = None
+        """List by keyword"""
+        self.keyword = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        self.required = ["lbruleid",]
+
+class listLBHealthCheckPoliciesResponse (baseResponse):
+    def __init__(self):
+        """the account of the HealthCheck policy"""
+        self.account = None
+        """the domain of the HealthCheck policy"""
+        self.domain = None
+        """the domain ID of the HealthCheck policy"""
+        self.domainid = None
+        """the LB rule ID"""
+        self.lbruleid = None
+        """the id of the zone the HealthCheck policy belongs to"""
+        self.zoneid = None
+        """the list of healthcheckpolicies"""
+        self.healthcheckpolicy = []
+
+class healthcheckpolicy:
+    def __init__(self):
+        """"the LB HealthCheck policy ID"""
+        self.id = None
+        """"the description of the healthcheck policy"""
+        self.description = None
+        """"Amount of time between health checks"""
+        self.healthcheckinterval = None
+        """"Number of consecutive health check success before declaring an instance healthy"""
+        self.healthcheckthresshold = None
+        """"the pingpath  of the healthcheck policy"""
+        self.pingpath = None
+        """"Time to wait when receiving a response from the health check"""
+        self.responsetime = None
+        """"the state of the policy"""
+        self.state = None
+        """"Number of consecutive health check failures before declaring an instance unhealthy."""
+        self.unhealthcheckthresshold = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listLBStickinessPolicies.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listLBStickinessPolicies.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listLBStickinessPolicies.py
new file mode 100644
index 0000000..1d3c7cb
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listLBStickinessPolicies.py
@@ -0,0 +1,71 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists LBStickiness policies."""
+from baseCmd import *
+from baseResponse import *
+class listLBStickinessPoliciesCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """the ID of the load balancer rule"""
+        """Required"""
+        self.lbruleid = None
+        """List by keyword"""
+        self.keyword = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        self.required = ["lbruleid",]
+
+class listLBStickinessPoliciesResponse (baseResponse):
+    def __init__(self):
+        """the account of the Stickiness policy"""
+        self.account = None
+        """the description of the Stickiness policy"""
+        self.description = None
+        """the domain of the Stickiness policy"""
+        self.domain = None
+        """the domain ID of the Stickiness policy"""
+        self.domainid = None
+        """the LB rule ID"""
+        self.lbruleid = None
+        """the name of the Stickiness policy"""
+        self.name = None
+        """the state of the policy"""
+        self.state = None
+        """the id of the zone the Stickiness policy belongs to"""
+        self.zoneid = None
+        """the list of stickinesspolicies"""
+        self.stickinesspolicy = []
+
+class stickinesspolicy:
+    def __init__(self):
+        """"the LB Stickiness policy ID"""
+        self.id = None
+        """"the description of the Stickiness policy"""
+        self.description = None
+        """"the method name of the Stickiness policy"""
+        self.methodname = None
+        """"the name of the Stickiness policy"""
+        self.name = None
+        """"the params of the policy"""
+        self.params = None
+        """"the state of the policy"""
+        self.state = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listLdapConfigurations.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listLdapConfigurations.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listLdapConfigurations.py
new file mode 100644
index 0000000..3203a05
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listLdapConfigurations.py
@@ -0,0 +1,43 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all LDAP configurations"""
+from baseCmd import *
+from baseResponse import *
+class listLdapConfigurationsCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """Hostname"""
+        self.hostname = None
+        """List by keyword"""
+        self.keyword = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """Port"""
+        self.port = None
+        self.required = []
+
+class listLdapConfigurationsResponse (baseResponse):
+    def __init__(self):
+        """hostname"""
+        self.hostname = None
+        """port"""
+        self.port = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listLdapUsers.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listLdapUsers.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listLdapUsers.py
new file mode 100644
index 0000000..0dec30e
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listLdapUsers.py
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all LDAP Users"""
+from baseCmd import *
+from baseResponse import *
+class listLdapUsersCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """List by keyword"""
+        self.keyword = None
+        """Determines whether all ldap users are returned or just non-cloudstack users"""
+        self.listtype = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        self.required = []
+
+class listLdapUsersResponse (baseResponse):
+    def __init__(self):
+        """The user's email"""
+        self.email = None
+        """The user's firstname"""
+        self.firstname = None
+        """The user's lastname"""
+        self.lastname = None
+        """The user's principle"""
+        self.principal = None
+        """The user's username"""
+        self.username = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancerRuleInstances.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancerRuleInstances.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancerRuleInstances.py
new file mode 100644
index 0000000..908ff44
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancerRuleInstances.py
@@ -0,0 +1,377 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""List all virtual machine instances that are assigned to a load balancer rule."""
+from baseCmd import *
+from baseResponse import *
+class listLoadBalancerRuleInstancesCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """the ID of the load balancer rule"""
+        """Required"""
+        self.id = None
+        """true if listing all virtual machines currently applied to the load balancer rule; default is true"""
+        self.applied = None
+        """List by keyword"""
+        self.keyword = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        self.required = ["id",]
+
+class listLoadBalancerRuleInstancesResponse (baseResponse):
+    def __init__(self):
+        """the ID of the virtual machine"""
+        self.id = None
+        """the account associated with the virtual machine"""
+        self.account = None
+        """the number of cpu this virtual machine is running with"""
+        self.cpunumber = None
+        """the speed of each cpu"""
+        self.cpuspeed = None
+        """the amount of the vm's CPU currently used"""
+        self.cpuused = None
+        """the date when this virtual machine was created"""
+        self.created = None
+        """the read (io) of disk on the vm"""
+        self.diskioread = None
+        """the write (io) of disk on the vm"""
+        self.diskiowrite = None
+        """the read (bytes) of disk on the vm"""
+        self.diskkbsread = None
+        """the write (bytes) of disk on the vm"""
+        self.diskkbswrite = None
+        """user generated name. The name of the virtual machine is returned if no displayname exists."""
+        self.displayname = None
+        """an optional field whether to the display the vm to the end user or not."""
+        self.displayvm = None
+        """the name of the domain in which the virtual machine exists"""
+        self.domain = None
+        """the ID of the domain in which the virtual machine exists"""
+        self.domainid = None
+        """the virtual network for the service offering"""
+        self.forvirtualnetwork = None
+        """the group name of the virtual machine"""
+        self.group = None
+        """the group ID of the virtual machine"""
+        self.groupid = None
+        """Os type ID of the virtual machine"""
+        self.guestosid = None
+        """true if high-availability is enabled, false otherwise"""
+        self.haenable = None
+        """the ID of the host for the virtual machine"""
+        self.hostid = None
+        """the name of the host for the virtual machine"""
+        self.hostname = None
+        """the hypervisor on which the template runs"""
+        self.hypervisor = None
+        """instance name of the user vm; this parameter is returned to the ROOT admin only"""
+        self.instancename = None
+        """true if vm contains XS/VMWare tools inorder to support dynamic scaling of VM cpu/memory."""
+        self.isdynamicallyscalable = None
+        """an alternate display text of the ISO attached to the virtual machine"""
+        self.isodisplaytext = None
+        """the ID of the ISO attached to the virtual machine"""
+        self.isoid = None
+        """the name of the ISO attached to the virtual machine"""
+        self.isoname = None
+        """ssh key-pair"""
+        self.keypair = None
+        """the memory allocated for the virtual machine"""
+        self.memory = None
+        """the name of the virtual machine"""
+        self.name = None
+        """the incoming network traffic on the vm"""
+        self.networkkbsread = None
+        """the outgoing network traffic on the host"""
+        self.networkkbswrite = None
+        """the password (if exists) of the virtual machine"""
+        self.password = None
+        """true if the password rest feature is enabled, false otherwise"""
+        self.passwordenabled = None
+        """the project name of the vm"""
+        self.project = None
+        """the project id of the vm"""
+        self.projectid = None
+        """public IP address id associated with vm via Static nat rule"""
+        self.publicip = None
+        """public IP address id associated with vm via Static nat rule"""
+        self.publicipid = None
+        """device ID of the root volume"""
+        self.rootdeviceid = None
+        """device type of the root volume"""
+        self.rootdevicetype = None
+        """the ID of the service offering of the virtual machine"""
+        self.serviceofferingid = None
+        """the name of the service offering of the virtual machine"""
+        self.serviceofferingname = None
+        """State of the Service from LB rule"""
+        self.servicestate = None
+        """the state of the virtual machine"""
+        self.state = None
+        """an alternate display text of the template for the virtual machine"""
+        self.templatedisplaytext = None
+        """the ID of the template for the virtual machine. A -1 is returned if the virtual machine was created from an ISO file."""
+        self.templateid = None
+        """the name of the template for the virtual machine"""
+        self.templatename = None
+        """the ID of the availablility zone for the virtual machine"""
+        self.zoneid = None
+        """the name of the availability zone for the virtual machine"""
+        self.zonename = None
+        """list of affinity groups associated with the virtual machine"""
+        self.affinitygroup = []
+        """the list of nics associated with vm"""
+        self.nic = []
+        """list of security groups associated with the virtual machine"""
+        self.securitygroup = []
+        """the list of resource tags associated with vm"""
+        self.tags = []
+        """the ID of the latest async job acting on this object"""
+        self.jobid = None
+        """the current status of the latest async job acting on this object"""
+        self.jobstatus = None
+
+class affinitygroup:
+    def __init__(self):
+        """"the ID of the affinity group"""
+        self.id = None
+        """"the account owning the affinity group"""
+        self.account = None
+        """"the description of the affinity group"""
+        self.description = None
+        """"the domain name of the affinity group"""
+        self.domain = None
+        """"the domain ID of the affinity group"""
+        self.domainid = None
+        """"the name of the affinity group"""
+        self.name = None
+        """"the type of the affinity group"""
+        self.type = None
+        """"virtual machine Ids associated with this affinity group"""
+        self.virtualmachineIds = None
+
+class nic:
+    def __init__(self):
+        """"the ID of the nic"""
+        self.id = None
+        """"the broadcast uri of the nic"""
+        self.broadcasturi = None
+        """"the gateway of the nic"""
+        self.gateway = None
+        """"the IPv6 address of network"""
+        self.ip6address = None
+        """"the cidr of IPv6 network"""
+        self.ip6cidr = None
+        """"the gateway of IPv6 network"""
+        self.ip6gateway = None
+        """"the ip address of the nic"""
+        self.ipaddress = None
+        """"true if nic is default, false otherwise"""
+        self.isdefault = None
+        """"the isolation uri of the nic"""
+        self.isolationuri = None
+        """"true if nic is default, false otherwise"""
+        self.macaddress = None
+        """"the netmask of the nic"""
+        self.netmask = None
+        """"the ID of the corresponding network"""
+        self.networkid = None
+        """"the name of the corresponding network"""
+        self.networkname = None
+        """"the Secondary ipv4 addr of nic"""
+        self.secondaryip = None
+        """"the traffic type of the nic"""
+        self.traffictype = None
+        """"the type of the nic"""
+        self.type = None
+
+class egressrule:
+    def __init__(self):
+        """"account owning the security group rule"""
+        self.account = None
+        """"the CIDR notation for the base IP address of the security group rule"""
+        self.cidr = None
+        """"the ending IP of the security group rule"""
+        self.endport = None
+        """"the code for the ICMP message response"""
+        self.icmpcode = None
+        """"the type of the ICMP message response"""
+        self.icmptype = None
+        """"the protocol of the security group rule"""
+        self.protocol = None
+        """"the id of the security group rule"""
+        self.ruleid = None
+        """"security group name"""
+        self.securitygroupname = None
+        """"the starting IP of the security group rule"""
+        self.startport = None
+
+class ingressrule:
+    def __init__(self):
+        """"account owning the security group rule"""
+        self.account = None
+        """"the CIDR notation for the base IP address of the security group rule"""
+        self.cidr = None
+        """"the ending IP of the security group rule"""
+        self.endport = None
+        """"the code for the ICMP message response"""
+        self.icmpcode = None
+        """"the type of the ICMP message response"""
+        self.icmptype = None
+        """"the protocol of the security group rule"""
+        self.protocol = None
+        """"the id of the security group rule"""
+        self.ruleid = None
+        """"security group name"""
+        self.securitygroupname = None
+        """"the starting IP of the security group rule"""
+        self.startport = None
+
+class tags:
+    def __init__(self):
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+
+class securitygroup:
+    def __init__(self):
+        """"the ID of the security group"""
+        self.id = None
+        """"the account owning the security group"""
+        self.account = None
+        """"the description of the security group"""
+        self.description = None
+        """"the domain name of the security group"""
+        self.domain = None
+        """"the domain ID of the security group"""
+        self.domainid = None
+        """"the name of the security group"""
+        self.name = None
+        """"the project name of the group"""
+        self.project = None
+        """"the project id of the group"""
+        self.projectid = None
+        """"the list of egress rules associated with the security group"""
+        self.egressrule = []
+        """"account owning the security group rule"""
+        self.account = None
+        """"the CIDR notation for the base IP address of the security group rule"""
+        self.cidr = None
+        """"the ending IP of the security group rule"""
+        self.endport = None
+        """"the code for the ICMP message response"""
+        self.icmpcode = None
+        """"the type of the ICMP message response"""
+        self.icmptype = None
+        """"the protocol of the security group rule"""
+        self.protocol = None
+        """"the id of the security group rule"""
+        self.ruleid = None
+        """"security group name"""
+        self.securitygroupname = None
+        """"the starting IP of the security group rule"""
+        self.startport = None
+        """"the list of ingress rules associated with the security group"""
+        self.ingressrule = []
+        """"account owning the security group rule"""
+        self.account = None
+        """"the CIDR notation for the base IP address of the security group rule"""
+        self.cidr = None
+        """"the ending IP of the security group rule"""
+        self.endport = None
+        """"the code for the ICMP message response"""
+        self.icmpcode = None
+        """"the type of the ICMP message response"""
+        self.icmptype = None
+        """"the protocol of the security group rule"""
+        self.protocol = None
+        """"the id of the security group rule"""
+        self.ruleid = None
+        """"security group name"""
+        self.securitygroupname = None
+        """"the starting IP of the security group rule"""
+        self.startport = None
+        """"the list of resource tags associated with the rule"""
+        self.tags = []
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+        """"the ID of the latest async job acting on this object"""
+        self.jobid = None
+        """"the current status of the latest async job acting on this object"""
+        self.jobstatus = None
+
+class tags:
+    def __init__(self):
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancerRules.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancerRules.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancerRules.py
new file mode 100644
index 0000000..770f3b3
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancerRules.py
@@ -0,0 +1,118 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists load balancer rules."""
+from baseCmd import *
+from baseResponse import *
+class listLoadBalancerRulesCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """list resources by account. Must be used with the domainId parameter."""
+        self.account = None
+        """list only resources belonging to the domain specified"""
+        self.domainid = None
+        """the ID of the load balancer rule"""
+        self.id = None
+        """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+        self.isrecursive = None
+        """List by keyword"""
+        self.keyword = None
+        """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+        self.listall = None
+        """the name of the load balancer rule"""
+        self.name = None
+        """list by network id the rule belongs to"""
+        self.networkid = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """list objects by project"""
+        self.projectid = None
+        """the public IP address id of the load balancer rule"""
+        self.publicipid = None
+        """List resources by tags (key/value pairs)"""
+        self.tags = []
+        """the ID of the virtual machine of the load balancer rule"""
+        self.virtualmachineid = None
+        """the availability zone ID"""
+        self.zoneid = None
+        self.required = []
+
+class listLoadBalancerRulesResponse (baseResponse):
+    def __init__(self):
+        """the load balancer rule ID"""
+        self.id = None
+        """the account of the load balancer rule"""
+        self.account = None
+        """the load balancer algorithm (source, roundrobin, leastconn)"""
+        self.algorithm = None
+        """the cidr list to forward traffic from"""
+        self.cidrlist = None
+        """the description of the load balancer"""
+        self.description = None
+        """the domain of the load balancer rule"""
+        self.domain = None
+        """the domain ID of the load balancer rule"""
+        self.domainid = None
+        """the name of the load balancer"""
+        self.name = None
+        """the id of the guest network the lb rule belongs to"""
+        self.networkid = None
+        """the private port"""
+        self.privateport = None
+        """the project name of the load balancer"""
+        self.project = None
+        """the project id of the load balancer"""
+        self.projectid = None
+        """the public ip address"""
+        self.publicip = None
+        """the public ip address id"""
+        self.publicipid = None
+        """the public port"""
+        self.publicport = None
+        """the state of the rule"""
+        self.state = None
+        """the id of the zone the rule belongs to"""
+        self.zoneid = None
+        """the list of resource tags associated with load balancer"""
+        self.tags = []
+
+class tags:
+    def __init__(self):
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancers.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancers.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancers.py
new file mode 100644
index 0000000..5cde328
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listLoadBalancers.py
@@ -0,0 +1,132 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists Load Balancers"""
+from baseCmd import *
+from baseResponse import *
+class listLoadBalancersCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """list resources by account. Must be used with the domainId parameter."""
+        self.account = None
+        """list only resources belonging to the domain specified"""
+        self.domainid = None
+        """the ID of the Load Balancer"""
+        self.id = None
+        """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+        self.isrecursive = None
+        """List by keyword"""
+        self.keyword = None
+        """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+        self.listall = None
+        """the name of the Load Balancer"""
+        self.name = None
+        """the network id of the Load Balancer"""
+        self.networkid = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """list objects by project"""
+        self.projectid = None
+        """the scheme of the Load Balancer. Supported value is Internal in the current release"""
+        self.scheme = None
+        """the source ip address of the Load Balancer"""
+        self.sourceipaddress = None
+        """the network id of the source ip address"""
+        self.sourceipaddressnetworkid = None
+        """List resources by tags (key/value pairs)"""
+        self.tags = []
+        self.required = []
+
+class listLoadBalancersResponse (baseResponse):
+    def __init__(self):
+        """the Load Balancer ID"""
+        self.id = None
+        """the account of the Load Balancer"""
+        self.account = None
+        """the load balancer algorithm (source, roundrobin, leastconn)"""
+        self.algorithm = None
+        """the description of the Load Balancer"""
+        self.description = None
+        """the domain of the Load Balancer"""
+        self.domain = None
+        """the domain ID of the Load Balancer"""
+        self.domainid = None
+        """the name of the Load Balancer"""
+        self.name = None
+        """Load Balancer network id"""
+        self.networkid = None
+        """the project name of the Load Balancer"""
+        self.project = None
+        """the project id of the Load Balancer"""
+        self.projectid = None
+        """Load Balancer source ip"""
+        self.sourceipaddress = None
+        """Load Balancer source ip network id"""
+        self.sourceipaddressnetworkid = None
+        """the list of instances associated with the Load Balancer"""
+        self.loadbalancerinstance = []
+        """the list of rules associated with the Load Balancer"""
+        self.loadbalancerrule = []
+        """the list of resource tags associated with the Load Balancer"""
+        self.tags = []
+
+class loadbalancerinstance:
+    def __init__(self):
+        """"the instance ID"""
+        self.id = None
+        """"the ip address of the instance"""
+        self.ipaddress = None
+        """"the name of the instance"""
+        self.name = None
+        """"the state of the instance"""
+        self.state = None
+
+class loadbalancerrule:
+    def __init__(self):
+        """"instance port of the load balancer rule"""
+        self.instanceport = None
+        """"source port of the load balancer rule"""
+        self.sourceport = None
+        """"the state of the load balancer rule"""
+        self.state = None
+
+class tags:
+    def __init__(self):
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkACLLists.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkACLLists.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkACLLists.py
new file mode 100644
index 0000000..a7bc92b
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkACLLists.py
@@ -0,0 +1,51 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all network ACLs"""
+from baseCmd import *
+from baseResponse import *
+class listNetworkACLListsCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """Lists network ACL with the specified ID."""
+        self.id = None
+        """List by keyword"""
+        self.keyword = None
+        """list network ACLs by specified name"""
+        self.name = None
+        """list network ACLs by network Id"""
+        self.networkid = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """list network ACLs by Vpc Id"""
+        self.vpcid = None
+        self.required = []
+
+class listNetworkACLListsResponse (baseResponse):
+    def __init__(self):
+        """the ID of the ACL"""
+        self.id = None
+        """Description of the ACL"""
+        self.description = None
+        """the Name of the ACL"""
+        self.name = None
+        """Id of the VPC this ACL is associated with"""
+        self.vpcid = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkACLs.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkACLs.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkACLs.py
new file mode 100644
index 0000000..10dd316
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkACLs.py
@@ -0,0 +1,108 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all network ACL items"""
+from baseCmd import *
+from baseResponse import *
+class listNetworkACLsCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """list resources by account. Must be used with the domainId parameter."""
+        self.account = None
+        """list network ACL Items by ACL Id"""
+        self.aclid = None
+        """list network ACL Items by Action"""
+        self.action = None
+        """list only resources belonging to the domain specified"""
+        self.domainid = None
+        """Lists network ACL Item with the specified ID"""
+        self.id = None
+        """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+        self.isrecursive = None
+        """List by keyword"""
+        self.keyword = None
+        """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+        self.listall = None
+        """list network ACL Items by network Id"""
+        self.networkid = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """list objects by project"""
+        self.projectid = None
+        """list network ACL Items by Protocol"""
+        self.protocol = None
+        """List resources by tags (key/value pairs)"""
+        self.tags = []
+        """list network ACL Items by traffic type - Ingress or Egress"""
+        self.traffictype = None
+        self.required = []
+
+class listNetworkACLsResponse (baseResponse):
+    def __init__(self):
+        """the ID of the ACL Item"""
+        self.id = None
+        """the ID of the ACL this item belongs to"""
+        self.aclid = None
+        """Action of ACL Item. Allow/Deny"""
+        self.action = None
+        """the cidr list to forward traffic from"""
+        self.cidrlist = None
+        """the ending port of ACL's port range"""
+        self.endport = None
+        """error code for this icmp message"""
+        self.icmpcode = None
+        """type of the icmp message being sent"""
+        self.icmptype = None
+        """Number of the ACL Item"""
+        self.number = None
+        """the protocol of the ACL"""
+        self.protocol = None
+        """the starting port of ACL's port range"""
+        self.startport = None
+        """the state of the rule"""
+        self.state = None
+        """the traffic type for the ACL"""
+        self.traffictype = None
+        """the list of resource tags associated with the network ACLs"""
+        self.tags = []
+
+class tags:
+    def __init__(self):
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkDevice.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkDevice.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkDevice.py
new file mode 100644
index 0000000..a1199c6
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkDevice.py
@@ -0,0 +1,41 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""List network devices"""
+from baseCmd import *
+from baseResponse import *
+class listNetworkDeviceCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """List by keyword"""
+        self.keyword = None
+        """parameters for network device"""
+        self.networkdeviceparameterlist = []
+        """Network device type, now supports ExternalDhcp, PxeServer, NetscalerMPXLoadBalancer, NetscalerVPXLoadBalancer, NetscalerSDXLoadBalancer, F5BigIpLoadBalancer, JuniperSRXFirewall"""
+        self.networkdevicetype = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        self.required = []
+
+class listNetworkDeviceResponse (baseResponse):
+    def __init__(self):
+        """the ID of the network device"""
+        self.id = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkIsolationMethods.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkIsolationMethods.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkIsolationMethods.py
new file mode 100644
index 0000000..67ed7fd
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkIsolationMethods.py
@@ -0,0 +1,37 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists supported methods of network isolation"""
+from baseCmd import *
+from baseResponse import *
+class listNetworkIsolationMethodsCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """List by keyword"""
+        self.keyword = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        self.required = []
+
+class listNetworkIsolationMethodsResponse (baseResponse):
+    def __init__(self):
+        """Network isolation method name"""
+        self.name = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkOfferings.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkOfferings.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkOfferings.py
new file mode 100644
index 0000000..a36f46d
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkOfferings.py
@@ -0,0 +1,166 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all available network offerings."""
+from baseCmd import *
+from baseResponse import *
+class listNetworkOfferingsCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """the availability of network offering. Default value is Required"""
+        self.availability = None
+        """list network offerings by display text"""
+        self.displaytext = None
+        """the network offering can be used only for network creation inside the VPC"""
+        self.forvpc = None
+        """list network offerings by guest type: Shared or Isolated"""
+        self.guestiptype = None
+        """list network offerings by id"""
+        self.id = None
+        """true if need to list only default network offerings. Default value is false"""
+        self.isdefault = None
+        """true if offering has tags specified"""
+        self.istagged = None
+        """List by keyword"""
+        self.keyword = None
+        """list network offerings by name"""
+        self.name = None
+        """the ID of the network. Pass this in if you want to see the available network offering that a network can be changed to."""
+        self.networkid = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """true if need to list only netwok offerings where source nat is supported, false otherwise"""
+        self.sourcenatsupported = None
+        """true if need to list only network offerings which support specifying ip ranges"""
+        self.specifyipranges = None
+        """the tags for the network offering."""
+        self.specifyvlan = None
+        """list network offerings by state"""
+        self.state = None
+        """list network offerings supporting certain services"""
+        self.supportedservices = []
+        """list network offerings by tags"""
+        self.tags = None
+        """list by traffic type"""
+        self.traffictype = None
+        """list netowrk offerings available for network creation in specific zone"""
+        self.zoneid = None
+        self.required = []
+
+class listNetworkOfferingsResponse (baseResponse):
+    def __init__(self):
+        """the id of the network offering"""
+        self.id = None
+        """availability of the network offering"""
+        self.availability = None
+        """true if network offering is ip conserve mode enabled"""
+        self.conservemode = None
+        """the date this network offering was created"""
+        self.created = None
+        """additional key/value details tied with network offering"""
+        self.details = None
+        """an alternate display text of the network offering."""
+        self.displaytext = None
+        """true if network offering supports persistent networks, false otherwise"""
+        self.egressdefaultpolicy = None
+        """true if network offering can be used by VPC networks only"""
+        self.forvpc = None
+        """guest type of the network offering, can be Shared or Isolated"""
+        self.guestiptype = None
+        """true if network offering is default, false otherwise"""
+        self.isdefault = None
+        """true if network offering supports persistent networks, false otherwise"""
+        self.ispersistent = None
+        """maximum number of concurrents connections to be handled by lb"""
+        self.maxconnections = None
+        """the name of the network offering"""
+        self.name = None
+        """data transfer rate in megabits per second allowed."""
+        self.networkrate = None
+        """the ID of the service offering used by virtual router provider"""
+        self.serviceofferingid = None
+        """true if network offering supports specifying ip ranges, false otherwise"""
+        self.specifyipranges = None
+        """true if network offering supports vlans, false otherwise"""
+        self.specifyvlan = None
+        """state of the network offering. Can be Disabled/Enabled/Inactive"""
+        self.state = None
+        """the tags for the network offering"""
+        self.tags = None
+        """the traffic type for the network offering, supported types are Public, Management, Control, Guest, Vlan or Storage."""
+        self.traffictype = None
+        """the list of supported services"""
+        self.service = []
+
+class capability:
+    def __init__(self):
+        """"can this service capability value can be choosable while creatine network offerings"""
+        self.canchooseservicecapability = None
+        """"the capability name"""
+        self.name = None
+        """"the capability value"""
+        self.value = None
+
+class provider:
+    def __init__(self):
+        """"uuid of the network provider"""
+        self.id = None
+        """"true if individual services can be enabled/disabled"""
+        self.canenableindividualservice = None
+        """"the destination physical network"""
+        self.destinationphysicalnetworkid = None
+        """"the provider name"""
+        self.name = None
+        """"the physical network this belongs to"""
+        self.physicalnetworkid = None
+        """"services for this provider"""
+        self.servicelist = None
+        """"state of the network provider"""
+        self.state = None
+
+class service:
+    def __init__(self):
+        """"the service name"""
+        self.name = None
+        """"the list of capabilities"""
+        self.capability = []
+        """"can this service capability value can be choosable while creatine network offerings"""
+        self.canchooseservicecapability = None
+        """"the capability name"""
+        self.name = None
+        """"the capability value"""
+        self.value = None
+        """"the service provider name"""
+        self.provider = []
+        """"uuid of the network provider"""
+        self.id = None
+        """"true if individual services can be enabled/disabled"""
+        self.canenableindividualservice = None
+        """"the destination physical network"""
+        self.destinationphysicalnetworkid = None
+        """"the provider name"""
+        self.name = None
+        """"the physical network this belongs to"""
+        self.physicalnetworkid = None
+        """"services for this provider"""
+        self.servicelist = None
+        """"state of the network provider"""
+        self.state = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkServiceProviders.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkServiceProviders.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkServiceProviders.py
new file mode 100644
index 0000000..287401e
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworkServiceProviders.py
@@ -0,0 +1,55 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists network serviceproviders for a given physical network."""
+from baseCmd import *
+from baseResponse import *
+class listNetworkServiceProvidersCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """List by keyword"""
+        self.keyword = None
+        """list providers by name"""
+        self.name = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """the Physical Network ID"""
+        self.physicalnetworkid = None
+        """list providers by state"""
+        self.state = None
+        self.required = []
+
+class listNetworkServiceProvidersResponse (baseResponse):
+    def __init__(self):
+        """uuid of the network provider"""
+        self.id = None
+        """true if individual services can be enabled/disabled"""
+        self.canenableindividualservice = None
+        """the destination physical network"""
+        self.destinationphysicalnetworkid = None
+        """the provider name"""
+        self.name = None
+        """the physical network this belongs to"""
+        self.physicalnetworkid = None
+        """services for this provider"""
+        self.servicelist = None
+        """state of the network provider"""
+        self.state = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworks.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworks.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworks.py
new file mode 100644
index 0000000..60e4516
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNetworks.py
@@ -0,0 +1,243 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all available networks."""
+from baseCmd import *
+from baseResponse import *
+class listNetworksCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """list resources by account. Must be used with the domainId parameter."""
+        self.account = None
+        """list networks by ACL (access control list) type. Supported values are Account and Domain"""
+        self.acltype = None
+        """list networks available for vm deployment"""
+        self.canusefordeploy = None
+        """list only resources belonging to the domain specified"""
+        self.domainid = None
+        """the network belongs to vpc"""
+        self.forvpc = None
+        """list networks by id"""
+        self.id = None
+        """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+        self.isrecursive = None
+        """true if network is system, false otherwise"""
+        self.issystem = None
+        """List by keyword"""
+        self.keyword = None
+        """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+        self.listall = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """list networks by physical network id"""
+        self.physicalnetworkid = None
+        """list objects by project"""
+        self.projectid = None
+        """list networks by restartRequired"""
+        self.restartrequired = None
+        """true if need to list only networks which support specifying ip ranges"""
+        self.specifyipranges = None
+        """list networks supporting certain services"""
+        self.supportedservices = []
+        """List resources by tags (key/value pairs)"""
+        self.tags = []
+        """type of the traffic"""
+        self.traffictype = None
+        """the type of the network. Supported values are: Isolated and Shared"""
+        self.type = None
+        """List networks by VPC"""
+        self.vpcid = None
+        """the Zone ID of the network"""
+        self.zoneid = None
+        self.required = []
+
+class listNetworksResponse (baseResponse):
+    def __init__(self):
+        """the id of the network"""
+        self.id = None
+        """the owner of the network"""
+        self.account = None
+        """ACL Id associated with the VPC network"""
+        self.aclid = None
+        """acl type - access type to the network"""
+        self.acltype = None
+        """Broadcast domain type of the network"""
+        self.broadcastdomaintype = None
+        """broadcast uri of the network. This parameter is visible to ROOT admins only"""
+        self.broadcasturi = None
+        """list networks available for vm deployment"""
+        self.canusefordeploy = None
+        """Cloudstack managed address space, all CloudStack managed VMs get IP address from CIDR"""
+        self.cidr = None
+        """an optional field, whether to the display the network to the end user or not."""
+        self.displaynetwork = None
+        """the displaytext of the network"""
+        self.displaytext = None
+        """the first DNS for the network"""
+        self.dns1 = None
+        """the second DNS for the network"""
+        self.dns2 = None
+        """the domain name of the network owner"""
+        self.domain = None
+        """the domain id of the network owner"""
+        self.domainid = None
+        """the network's gateway"""
+        self.gateway = None
+        """the cidr of IPv6 network"""
+        self.ip6cidr = None
+        """the gateway of IPv6 network"""
+        self.ip6gateway = None
+        """true if network is default, false otherwise"""
+        self.isdefault = None
+        """list networks that are persistent"""
+        self.ispersistent = None
+        """true if network is system, false otherwise"""
+        self.issystem = None
+        """the name of the network"""
+        self.name = None
+        """the network's netmask"""
+        self.netmask = None
+        """the network CIDR of the guest network configured with IP reservation. It is the summation of CIDR and RESERVED_IP_RANGE"""
+        self.networkcidr = None
+        """the network domain"""
+        self.networkdomain = None
+        """availability of the network offering the network is created from"""
+        self.networkofferingavailability = None
+        """true if network offering is ip conserve mode enabled"""
+        self.networkofferingconservemode = None
+        """display text of the network offering the network is created from"""
+        self.networkofferingdisplaytext = None
+        """network offering id the network is created from"""
+        self.networkofferingid = None
+        """name of the network offering the network is created from"""
+        self.networkofferingname = None
+        """the physical network id"""
+        self.physicalnetworkid = None
+        """the project name of the address"""
+        self.project = None
+        """the project id of the ipaddress"""
+        self.projectid = None
+        """related to what other network configuration"""
+        self.related = None
+        """the network's IP range not to be used by CloudStack guest VMs and can be used for non CloudStack purposes"""
+        self.reservediprange = None
+        """true network requires restart"""
+        self.restartrequired = None
+        """true if network supports specifying ip ranges, false otherwise"""
+        self.specifyipranges = None
+        """state of the network"""
+        self.state = None
+        """true if users from subdomains can access the domain level network"""
+        self.subdomainaccess = None
+        """the traffic type of the network"""
+        self.traffictype = None
+        """the type of the network"""
+        self.type = None
+        """The vlan of the network. This parameter is visible to ROOT admins only"""
+        self.vlan = None
+        """VPC the network belongs to"""
+        self.vpcid = None
+        """zone id of the network"""
+        self.zoneid = None
+        """the name of the zone the network belongs to"""
+        self.zonename = None
+        """the list of services"""
+        self.service = []
+        """the list of resource tags associated with network"""
+        self.tags = []
+
+class capability:
+    def __init__(self):
+        """"can this service capability value can be choosable while creatine network offerings"""
+        self.canchooseservicecapability = None
+        """"the capability name"""
+        self.name = None
+        """"the capability value"""
+        self.value = None
+
+class provider:
+    def __init__(self):
+        """"uuid of the network provider"""
+        self.id = None
+        """"true if individual services can be enabled/disabled"""
+        self.canenableindividualservice = None
+        """"the destination physical network"""
+        self.destinationphysicalnetworkid = None
+        """"the provider name"""
+        self.name = None
+        """"the physical network this belongs to"""
+        self.physicalnetworkid = None
+        """"services for this provider"""
+        self.servicelist = None
+        """"state of the network provider"""
+        self.state = None
+
+class service:
+    def __init__(self):
+        """"the service name"""
+        self.name = None
+        """"the list of capabilities"""
+        self.capability = []
+        """"can this service capability value can be choosable while creatine network offerings"""
+        self.canchooseservicecapability = None
+        """"the capability name"""
+        self.name = None
+        """"the capability value"""
+        self.value = None
+        """"the service provider name"""
+        self.provider = []
+        """"uuid of the network provider"""
+        self.id = None
+        """"true if individual services can be enabled/disabled"""
+        self.canenableindividualservice = None
+        """"the destination physical network"""
+        self.destinationphysicalnetworkid = None
+        """"the provider name"""
+        self.name = None
+        """"the physical network this belongs to"""
+        self.physicalnetworkid = None
+        """"services for this provider"""
+        self.servicelist = None
+        """"state of the network provider"""
+        self.state = None
+
+class tags:
+    def __init__(self):
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNiciraNvpDeviceNetworks.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNiciraNvpDeviceNetworks.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNiciraNvpDeviceNetworks.py
new file mode 100644
index 0000000..d19ba54
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNiciraNvpDeviceNetworks.py
@@ -0,0 +1,208 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""lists network that are using a nicira nvp device"""
+from baseCmd import *
+from baseResponse import *
+class listNiciraNvpDeviceNetworksCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """nicira nvp device ID"""
+        """Required"""
+        self.nvpdeviceid = None
+        """List by keyword"""
+        self.keyword = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        self.required = ["nvpdeviceid",]
+
+class listNiciraNvpDeviceNetworksResponse (baseResponse):
+    def __init__(self):
+        """the id of the network"""
+        self.id = None
+        """the owner of the network"""
+        self.account = None
+        """ACL Id associated with the VPC network"""
+        self.aclid = None
+        """acl type - access type to the network"""
+        self.acltype = None
+        """Broadcast domain type of the network"""
+        self.broadcastdomaintype = None
+        """broadcast uri of the network. This parameter is visible to ROOT admins only"""
+        self.broadcasturi = None
+        """list networks available for vm deployment"""
+        self.canusefordeploy = None
+        """Cloudstack managed address space, all CloudStack managed VMs get IP address from CIDR"""
+        self.cidr = None
+        """an optional field, whether to the display the network to the end user or not."""
+        self.displaynetwork = None
+        """the displaytext of the network"""
+        self.displaytext = None
+        """the first DNS for the network"""
+        self.dns1 = None
+        """the second DNS for the network"""
+        self.dns2 = None
+        """the domain name of the network owner"""
+        self.domain = None
+        """the domain id of the network owner"""
+        self.domainid = None
+        """the network's gateway"""
+        self.gateway = None
+        """the cidr of IPv6 network"""
+        self.ip6cidr = None
+        """the gateway of IPv6 network"""
+        self.ip6gateway = None
+        """true if network is default, false otherwise"""
+        self.isdefault = None
+        """list networks that are persistent"""
+        self.ispersistent = None
+        """true if network is system, false otherwise"""
+        self.issystem = None
+        """the name of the network"""
+        self.name = None
+        """the network's netmask"""
+        self.netmask = None
+        """the network CIDR of the guest network configured with IP reservation. It is the summation of CIDR and RESERVED_IP_RANGE"""
+        self.networkcidr = None
+        """the network domain"""
+        self.networkdomain = None
+        """availability of the network offering the network is created from"""
+        self.networkofferingavailability = None
+        """true if network offering is ip conserve mode enabled"""
+        self.networkofferingconservemode = None
+        """display text of the network offering the network is created from"""
+        self.networkofferingdisplaytext = None
+        """network offering id the network is created from"""
+        self.networkofferingid = None
+        """name of the network offering the network is created from"""
+        self.networkofferingname = None
+        """the physical network id"""
+        self.physicalnetworkid = None
+        """the project name of the address"""
+        self.project = None
+        """the project id of the ipaddress"""
+        self.projectid = None
+        """related to what other network configuration"""
+        self.related = None
+        """the network's IP range not to be used by CloudStack guest VMs and can be used for non CloudStack purposes"""
+        self.reservediprange = None
+        """true network requires restart"""
+        self.restartrequired = None
+        """true if network supports specifying ip ranges, false otherwise"""
+        self.specifyipranges = None
+        """state of the network"""
+        self.state = None
+        """true if users from subdomains can access the domain level network"""
+        self.subdomainaccess = None
+        """the traffic type of the network"""
+        self.traffictype = None
+        """the type of the network"""
+        self.type = None
+        """The vlan of the network. This parameter is visible to ROOT admins only"""
+        self.vlan = None
+        """VPC the network belongs to"""
+        self.vpcid = None
+        """zone id of the network"""
+        self.zoneid = None
+        """the name of the zone the network belongs to"""
+        self.zonename = None
+        """the list of services"""
+        self.service = []
+        """the list of resource tags associated with network"""
+        self.tags = []
+
+class capability:
+    def __init__(self):
+        """"can this service capability value can be choosable while creatine network offerings"""
+        self.canchooseservicecapability = None
+        """"the capability name"""
+        self.name = None
+        """"the capability value"""
+        self.value = None
+
+class provider:
+    def __init__(self):
+        """"uuid of the network provider"""
+        self.id = None
+        """"true if individual services can be enabled/disabled"""
+        self.canenableindividualservice = None
+        """"the destination physical network"""
+        self.destinationphysicalnetworkid = None
+        """"the provider name"""
+        self.name = None
+        """"the physical network this belongs to"""
+        self.physicalnetworkid = None
+        """"services for this provider"""
+        self.servicelist = None
+        """"state of the network provider"""
+        self.state = None
+
+class service:
+    def __init__(self):
+        """"the service name"""
+        self.name = None
+        """"the list of capabilities"""
+        self.capability = []
+        """"can this service capability value can be choosable while creatine network offerings"""
+        self.canchooseservicecapability = None
+        """"the capability name"""
+        self.name = None
+        """"the capability value"""
+        self.value = None
+        """"the service provider name"""
+        self.provider = []
+        """"uuid of the network provider"""
+        self.id = None
+        """"true if individual services can be enabled/disabled"""
+        self.canenableindividualservice = None
+        """"the destination physical network"""
+        self.destinationphysicalnetworkid = None
+        """"the provider name"""
+        self.name = None
+        """"the physical network this belongs to"""
+        self.physicalnetworkid = None
+        """"services for this provider"""
+        self.servicelist = None
+        """"state of the network provider"""
+        self.state = None
+
+class tags:
+    def __init__(self):
+        """"the account associated with the tag"""
+        self.account = None
+        """"customer associated with the tag"""
+        self.customer = None
+        """"the domain associated with the tag"""
+        self.domain = None
+        """"the ID of the domain associated with the tag"""
+        self.domainid = None
+        """"tag key name"""
+        self.key = None
+        """"the project name where tag belongs to"""
+        self.project = None
+        """"the project id the tag belongs to"""
+        self.projectid = None
+        """"id of the resource"""
+        self.resourceid = None
+        """"resource type"""
+        self.resourcetype = None
+        """"tag value"""
+        self.value = None
+

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNiciraNvpDevices.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNiciraNvpDevices.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNiciraNvpDevices.py
new file mode 100644
index 0000000..fde7195
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNiciraNvpDevices.py
@@ -0,0 +1,53 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists Nicira NVP devices"""
+from baseCmd import *
+from baseResponse import *
+class listNiciraNvpDevicesCmd (baseCmd):
+    def __init__(self):
+        self.isAsync = "false"
+        """List by keyword"""
+        self.keyword = None
+        """nicira nvp device ID"""
+        self.nvpdeviceid = None
+        """"""
+        self.page = None
+        """"""
+        self.pagesize = None
+        """the Physical Network ID"""
+        self.physicalnetworkid = None
+        self.required = []
+
+class listNiciraNvpDevicesResponse (baseResponse):
+    def __init__(self):
+        """the controller Ip address"""
+        self.hostname = None
+        """this L3 gateway service Uuid"""
+        self.l3gatewayserviceuuid = None
+        """device name"""
+        self.niciradevicename = None
+        """device id of the Nicire Nvp"""
+        self.nvpdeviceid = None
+        """the physical network to which this Nirica Nvp belongs to"""
+        self.physicalnetworkid = None
+        """name of the provider"""
+        self.provider = None
+        """the transport zone Uuid"""
+        self.transportzoneuuid = None
+