You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ts...@apache.org on 2013/04/21 14:23:24 UTC

[11/17] make the module structure more relevant and simple

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/NetworkServiceProvider.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/NetworkServiceProvider.py b/tools/marvin/marvin/integration/lib/base/NetworkServiceProvider.py
deleted file mode 100644
index f9873d2..0000000
--- a/tools/marvin/marvin/integration/lib/base/NetworkServiceProvider.py
+++ /dev/null
@@ -1,62 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import addNetworkServiceProvider
-from marvin.cloudstackAPI import listNetworkServiceProviders
-from marvin.cloudstackAPI import updateNetworkServiceProvider
-from marvin.cloudstackAPI import deleteNetworkServiceProvider
-
-class NetworkServiceProvider(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def add(self, apiclient, physicalnetworkid, name, **kwargs):
-        cmd = addNetworkServiceProvider.addNetworkServiceProviderCmd()
-        cmd.id = self.id
-        cmd.name = name
-        cmd.physicalnetworkid = physicalnetworkid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        networkserviceprovider = apiclient.addNetworkServiceProvider(cmd)
-        return networkserviceprovider
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listNetworkServiceProviders.listNetworkServiceProvidersCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        networkserviceprovider = apiclient.listNetworkServiceProviders(cmd)
-        return map(lambda e: NetworkServiceProvider(e.__dict__), networkserviceprovider)
-
-
-    def update(self, apiclient, **kwargs):
-        cmd = updateNetworkServiceProvider.updateNetworkServiceProviderCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        networkserviceprovider = apiclient.updateNetworkServiceProvider(cmd)
-        return networkserviceprovider
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteNetworkServiceProvider.deleteNetworkServiceProviderCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        networkserviceprovider = apiclient.deleteNetworkServiceProvider(cmd)
-        return networkserviceprovider
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/Nic.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Nic.py b/tools/marvin/marvin/integration/lib/base/Nic.py
deleted file mode 100644
index cfa3b6e..0000000
--- a/tools/marvin/marvin/integration/lib/base/Nic.py
+++ /dev/null
@@ -1,56 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import listNics
-from marvin.cloudstackAPI import addIpToNic
-from marvin.cloudstackAPI import removeIpFromNic
-
-class Nic(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def list(self, apiclient, virtualmachineid, **kwargs):
-        cmd = listNics.listNicsCmd()
-        cmd.virtualmachineid = virtualmachineid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        nics = apiclient.listNics(cmd)
-        return map(lambda e: Nic(e.__dict__), nics)
-
-
-    def add_ip(self, apiclient, **kwargs):
-        cmd = addIpToNic.addIpToNicCmd()
-        cmd.nicid = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        iptonic = apiclient.addIpToNic(cmd)
-        return iptonic
-
-
-    def remove_ip(self, apiclient, **kwargs):
-        cmd = removeIpFromNic.removeIpFromNicCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        ipfromnic = apiclient.removeIpFromNic(cmd)
-        return ipfromnic
-
-
-
-
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/NiciraNvpDevice.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/NiciraNvpDevice.py b/tools/marvin/marvin/integration/lib/base/NiciraNvpDevice.py
deleted file mode 100644
index e0af4b5..0000000
--- a/tools/marvin/marvin/integration/lib/base/NiciraNvpDevice.py
+++ /dev/null
@@ -1,66 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import addNiciraNvpDevice
-from marvin.cloudstackAPI import listNiciraNvpDevices
-from marvin.cloudstackAPI import deleteNiciraNvpDevice
-from marvin.cloudstackAPI import listNiciraNvpDeviceNetworks
-
-class NiciraNvpDevice(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def add(self, apiclient, username, physicalnetworkid, password, hostname, transportzoneuuid, **kwargs):
-        cmd = addNiciraNvpDevice.addNiciraNvpDeviceCmd()
-        cmd.id = self.id
-        cmd.hostname = hostname
-        cmd.password = password
-        cmd.physicalnetworkid = physicalnetworkid
-        cmd.transportzoneuuid = transportzoneuuid
-        cmd.username = username
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        niciranvpdevice = apiclient.addNiciraNvpDevice(cmd)
-        return niciranvpdevice
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listNiciraNvpDevices.listNiciraNvpDevicesCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        niciranvpdevice = apiclient.listNiciraNvpDevices(cmd)
-        return map(lambda e: NiciraNvpDevice(e.__dict__), niciranvpdevice)
-
-
-    def delete(self, apiclient, nvpdeviceid, **kwargs):
-        cmd = deleteNiciraNvpDevice.deleteNiciraNvpDeviceCmd()
-        cmd.id = self.id
-        cmd.nvpdeviceid = nvpdeviceid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        niciranvpdevice = apiclient.deleteNiciraNvpDevice(cmd)
-        return niciranvpdevice
-
-    @classmethod
-    def listNetworks(self, apiclient, nvpdeviceid, **kwargs):
-        cmd = listNiciraNvpDeviceNetworks.listNiciraNvpDeviceNetworksCmd()
-        cmd.nvpdeviceid = nvpdeviceid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        niciranvpdevicenetworks = apiclient.listNiciraNvpDeviceNetworks(cmd)
-        return map(lambda e: NiciraNvpDevice(e.__dict__), niciranvpdevicenetworks)
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/OsCategories.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/OsCategories.py b/tools/marvin/marvin/integration/lib/base/OsCategories.py
deleted file mode 100644
index 7e911fd..0000000
--- a/tools/marvin/marvin/integration/lib/base/OsCategories.py
+++ /dev/null
@@ -1,33 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import listOsCategories
-
-class OsCategories(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listOsCategories.listOsCategoriesCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        oscategories = apiclient.listOsCategories(cmd)
-        return map(lambda e: OsCategories(e.__dict__), oscategories)
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/OsTypes.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/OsTypes.py b/tools/marvin/marvin/integration/lib/base/OsTypes.py
deleted file mode 100644
index 209366f..0000000
--- a/tools/marvin/marvin/integration/lib/base/OsTypes.py
+++ /dev/null
@@ -1,33 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import listOsTypes
-
-class OsTypes(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listOsTypes.listOsTypesCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        ostypes = apiclient.listOsTypes(cmd)
-        return map(lambda e: OsTypes(e.__dict__), ostypes)
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/PhysicalNetwork.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/PhysicalNetwork.py b/tools/marvin/marvin/integration/lib/base/PhysicalNetwork.py
deleted file mode 100644
index 60e3609..0000000
--- a/tools/marvin/marvin/integration/lib/base/PhysicalNetwork.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createPhysicalNetwork
-from marvin.cloudstackAPI import listPhysicalNetworks
-from marvin.cloudstackAPI import updatePhysicalNetwork
-from marvin.cloudstackAPI import deletePhysicalNetwork
-
-class PhysicalNetwork(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createPhysicalNetwork.createPhysicalNetworkCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        physicalnetwork = apiclient.createPhysicalNetwork(cmd)
-        return PhysicalNetwork(physicalnetwork.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listPhysicalNetworks.listPhysicalNetworksCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        physicalnetwork = apiclient.listPhysicalNetworks(cmd)
-        return map(lambda e: PhysicalNetwork(e.__dict__), physicalnetwork)
-
-
-    def update(self, apiclient, **kwargs):
-        cmd = updatePhysicalNetwork.updatePhysicalNetworkCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        physicalnetwork = apiclient.updatePhysicalNetwork(cmd)
-        return physicalnetwork
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deletePhysicalNetwork.deletePhysicalNetworkCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        physicalnetwork = apiclient.deletePhysicalNetwork(cmd)
-        return physicalnetwork
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/Pod.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Pod.py b/tools/marvin/marvin/integration/lib/base/Pod.py
deleted file mode 100644
index fdaea33..0000000
--- a/tools/marvin/marvin/integration/lib/base/Pod.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createPod
-from marvin.cloudstackAPI import listPods
-from marvin.cloudstackAPI import updatePod
-from marvin.cloudstackAPI import deletePod
-
-class Pod(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createPod.createPodCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        pod = apiclient.createPod(cmd)
-        return Pod(pod.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listPods.listPodsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        pod = apiclient.listPods(cmd)
-        return map(lambda e: Pod(e.__dict__), pod)
-
-
-    def update(self, apiclient, **kwargs):
-        cmd = updatePod.updatePodCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        pod = apiclient.updatePod(cmd)
-        return pod
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deletePod.deletePodCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        pod = apiclient.deletePod(cmd)
-        return pod
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/PortForwardingRule.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/PortForwardingRule.py b/tools/marvin/marvin/integration/lib/base/PortForwardingRule.py
deleted file mode 100644
index 8bf684a..0000000
--- a/tools/marvin/marvin/integration/lib/base/PortForwardingRule.py
+++ /dev/null
@@ -1,65 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createPortForwardingRule
-from marvin.cloudstackAPI import listPortForwardingRules
-from marvin.cloudstackAPI import updatePortForwardingRule
-from marvin.cloudstackAPI import deletePortForwardingRule
-
-class PortForwardingRule(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createPortForwardingRule.createPortForwardingRuleCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        portforwardingrule = apiclient.createPortForwardingRule(cmd)
-        return PortForwardingRule(portforwardingrule.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listPortForwardingRules.listPortForwardingRulesCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        portforwardingrule = apiclient.listPortForwardingRules(cmd)
-        return map(lambda e: PortForwardingRule(e.__dict__), portforwardingrule)
-
-
-    def update(self, apiclient, publicport, protocol, ipaddressid, privateport, **kwargs):
-        cmd = updatePortForwardingRule.updatePortForwardingRuleCmd()
-        cmd.id = self.id
-        cmd.ipaddressid = ipaddressid
-        cmd.privateport = privateport
-        cmd.protocol = protocol
-        cmd.publicport = publicport
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        portforwardingrule = apiclient.updatePortForwardingRule(cmd)
-        return portforwardingrule
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deletePortForwardingRule.deletePortForwardingRuleCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        portforwardingrule = apiclient.deletePortForwardingRule(cmd)
-        return portforwardingrule
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/PrivateGateway.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/PrivateGateway.py b/tools/marvin/marvin/integration/lib/base/PrivateGateway.py
deleted file mode 100644
index 6cec55a..0000000
--- a/tools/marvin/marvin/integration/lib/base/PrivateGateway.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createPrivateGateway
-from marvin.cloudstackAPI import listPrivateGateways
-from marvin.cloudstackAPI import deletePrivateGateway
-
-class PrivateGateway(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createPrivateGateway.createPrivateGatewayCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        privategateway = apiclient.createPrivateGateway(cmd)
-        return PrivateGateway(privategateway.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listPrivateGateways.listPrivateGatewaysCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        privategateway = apiclient.listPrivateGateways(cmd)
-        return map(lambda e: PrivateGateway(e.__dict__), privategateway)
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deletePrivateGateway.deletePrivateGatewayCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        privategateway = apiclient.deletePrivateGateway(cmd)
-        return privategateway
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/Project.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Project.py b/tools/marvin/marvin/integration/lib/base/Project.py
deleted file mode 100644
index 1fc5b53..0000000
--- a/tools/marvin/marvin/integration/lib/base/Project.py
+++ /dev/null
@@ -1,107 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import suspendProject
-from marvin.cloudstackAPI import createProject
-from marvin.cloudstackAPI import listProjects
-from marvin.cloudstackAPI import updateProject
-from marvin.cloudstackAPI import activateProject
-from marvin.cloudstackAPI import deleteProject
-from marvin.cloudstackAPI import deleteAccountFromProject
-from marvin.cloudstackAPI import addAccountToProject
-from marvin.cloudstackAPI import listProjectAccounts
-
-class Project(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def suspend(self, apiclient, **kwargs):
-        cmd = suspendProject.suspendProjectCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        project = apiclient.suspendProject(cmd)
-        return project
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createProject.createProjectCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        project = apiclient.createProject(cmd)
-        return Project(project.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listProjects.listProjectsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        project = apiclient.listProjects(cmd)
-        return map(lambda e: Project(e.__dict__), project)
-
-
-    def update(self, apiclient, **kwargs):
-        cmd = updateProject.updateProjectCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        project = apiclient.updateProject(cmd)
-        return project
-
-
-    def activate(self, apiclient, **kwargs):
-        cmd = activateProject.activateProjectCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        project = apiclient.activateProject(cmd)
-        return project
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteProject.deleteProjectCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        project = apiclient.deleteProject(cmd)
-        return project
-
-
-    def delete_account(self, apiclient, projectid, **kwargs):
-        cmd = deleteAccountFromProject.deleteAccountFromProjectCmd()
-        cmd.id = self.id
-        cmd.projectid = projectid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        deletefromproject = apiclient.deleteAccountFromProject(cmd)
-        return deletefromproject
-
-
-    def add_account(self, apiclient, projectid, **kwargs):
-        cmd = addAccountToProject.addAccountToProjectCmd()
-        cmd.id = self.id
-        cmd.projectid = projectid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        accounttoproject = apiclient.addAccountToProject(cmd)
-        return accounttoproject
-
-    @classmethod
-    def list_accounts(self, apiclient, projectid, **kwargs):
-        cmd = listProjectAccounts.listProjectAccountsCmd()
-        cmd.projectid = projectid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        projectaccounts = apiclient.listProjectAccounts(cmd)
-        return map(lambda e: Project(e.__dict__), projectaccounts)

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/ProjectInvitation.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ProjectInvitation.py b/tools/marvin/marvin/integration/lib/base/ProjectInvitation.py
deleted file mode 100644
index 196eec6..0000000
--- a/tools/marvin/marvin/integration/lib/base/ProjectInvitation.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import listProjectInvitations
-from marvin.cloudstackAPI import updateProjectInvitation
-from marvin.cloudstackAPI import deleteProjectInvitation
-
-class ProjectInvitation(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listProjectInvitations.listProjectInvitationsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        projectinvitation = apiclient.listProjectInvitations(cmd)
-        return map(lambda e: ProjectInvitation(e.__dict__), projectinvitation)
-
-
-    def update(self, apiclient, projectid, **kwargs):
-        cmd = updateProjectInvitation.updateProjectInvitationCmd()
-        cmd.id = self.id
-        cmd.projectid = projectid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        projectinvitation = apiclient.updateProjectInvitation(cmd)
-        return projectinvitation
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteProjectInvitation.deleteProjectInvitationCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        projectinvitation = apiclient.deleteProjectInvitation(cmd)
-        return projectinvitation
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/Region.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Region.py b/tools/marvin/marvin/integration/lib/base/Region.py
deleted file mode 100644
index ba0b1a8..0000000
--- a/tools/marvin/marvin/integration/lib/base/Region.py
+++ /dev/null
@@ -1,62 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import addRegion
-from marvin.cloudstackAPI import listRegions
-from marvin.cloudstackAPI import updateRegion
-from marvin.cloudstackAPI import removeRegion
-
-class Region(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def add(self, apiclient, endpoint, name, **kwargs):
-        cmd = addRegion.addRegionCmd()
-        cmd.id = self.id
-        cmd.endpoint = endpoint
-        cmd.name = name
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        region = apiclient.addRegion(cmd)
-        return region
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listRegions.listRegionsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        region = apiclient.listRegions(cmd)
-        return map(lambda e: Region(e.__dict__), region)
-
-
-    def update(self, apiclient, **kwargs):
-        cmd = updateRegion.updateRegionCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        region = apiclient.updateRegion(cmd)
-        return region
-
-
-    def remove(self, apiclient, **kwargs):
-        cmd = removeRegion.removeRegionCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        region = apiclient.removeRegion(cmd)
-        return region
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/RemoteAccessVpn.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/RemoteAccessVpn.py b/tools/marvin/marvin/integration/lib/base/RemoteAccessVpn.py
deleted file mode 100644
index 2c460bc..0000000
--- a/tools/marvin/marvin/integration/lib/base/RemoteAccessVpn.py
+++ /dev/null
@@ -1,54 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createRemoteAccessVpn
-from marvin.cloudstackAPI import listRemoteAccessVpns
-from marvin.cloudstackAPI import deleteRemoteAccessVpn
-
-class RemoteAccessVpn(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createRemoteAccessVpn.createRemoteAccessVpnCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        remoteaccessvpn = apiclient.createRemoteAccessVpn(cmd)
-        return RemoteAccessVpn(remoteaccessvpn.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, publicipid, **kwargs):
-        cmd = listRemoteAccessVpns.listRemoteAccessVpnsCmd()
-        cmd.publicipid = publicipid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        remoteaccessvpn = apiclient.listRemoteAccessVpns(cmd)
-        return map(lambda e: RemoteAccessVpn(e.__dict__), remoteaccessvpn)
-
-
-    def delete(self, apiclient, publicipid, **kwargs):
-        cmd = deleteRemoteAccessVpn.deleteRemoteAccessVpnCmd()
-        cmd.id = self.id
-        cmd.publicipid = publicipid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        remoteaccessvpn = apiclient.deleteRemoteAccessVpn(cmd)
-        return remoteaccessvpn
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/ResourceCount.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ResourceCount.py b/tools/marvin/marvin/integration/lib/base/ResourceCount.py
deleted file mode 100644
index dced15d..0000000
--- a/tools/marvin/marvin/integration/lib/base/ResourceCount.py
+++ /dev/null
@@ -1,34 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import updateResourceCount
-
-class ResourceCount(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def update(self, apiclient, domainid, **kwargs):
-        cmd = updateResourceCount.updateResourceCountCmd()
-        cmd.id = self.id
-        cmd.domainid = domainid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        resourcecount = apiclient.updateResourceCount(cmd)
-        return resourcecount
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/ResourceLimit.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ResourceLimit.py b/tools/marvin/marvin/integration/lib/base/ResourceLimit.py
deleted file mode 100644
index bdddadd..0000000
--- a/tools/marvin/marvin/integration/lib/base/ResourceLimit.py
+++ /dev/null
@@ -1,43 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import listResourceLimits
-from marvin.cloudstackAPI import updateResourceLimit
-
-class ResourceLimit(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listResourceLimits.listResourceLimitsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        resourcelimit = apiclient.listResourceLimits(cmd)
-        return map(lambda e: ResourceLimit(e.__dict__), resourcelimit)
-
-
-    def update(self, apiclient, resourcetype, **kwargs):
-        cmd = updateResourceLimit.updateResourceLimitCmd()
-        cmd.id = self.id
-        cmd.resourcetype = resourcetype
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        resourcelimit = apiclient.updateResourceLimit(cmd)
-        return resourcelimit
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/Router.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Router.py b/tools/marvin/marvin/integration/lib/base/Router.py
deleted file mode 100644
index 968412e..0000000
--- a/tools/marvin/marvin/integration/lib/base/Router.py
+++ /dev/null
@@ -1,69 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import destroyRouter
-from marvin.cloudstackAPI import listRouters
-from marvin.cloudstackAPI import stopRouter
-from marvin.cloudstackAPI import rebootRouter
-from marvin.cloudstackAPI import startRouter
-
-class Router(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def destroy(self, apiclient, **kwargs):
-        cmd = destroyRouter.destroyRouterCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        router = apiclient.destroyRouter(cmd)
-        return router
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listRouters.listRoutersCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        router = apiclient.listRouters(cmd)
-        return map(lambda e: Router(e.__dict__), router)
-
-
-    def stop(self, apiclient, **kwargs):
-        cmd = stopRouter.stopRouterCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        router = apiclient.stopRouter(cmd)
-        return router
-
-
-    def reboot(self, apiclient, **kwargs):
-        cmd = rebootRouter.rebootRouterCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        router = apiclient.rebootRouter(cmd)
-        return router
-
-
-    def start(self, apiclient, **kwargs):
-        cmd = startRouter.startRouterCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        router = apiclient.startRouter(cmd)
-        return router
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/S3.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/S3.py b/tools/marvin/marvin/integration/lib/base/S3.py
deleted file mode 100644
index ce1d65a..0000000
--- a/tools/marvin/marvin/integration/lib/base/S3.py
+++ /dev/null
@@ -1,45 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import addS3
-from marvin.cloudstackAPI import listS3s
-
-class S3(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def add(self, apiclient, secretkey, accesskey, bucket, **kwargs):
-        cmd = addS3.addS3Cmd()
-        cmd.id = self.id
-        cmd.accesskey = accesskey
-        cmd.bucket = bucket
-        cmd.secretkey = secretkey
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        s3 = apiclient.addS3(cmd)
-        return s3
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listS3s.listS3sCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        s3 = apiclient.listS3s(cmd)
-        return map(lambda e: S3(e.__dict__), s3)
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/SSHKeyPair.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SSHKeyPair.py b/tools/marvin/marvin/integration/lib/base/SSHKeyPair.py
deleted file mode 100644
index 6d1e5ef..0000000
--- a/tools/marvin/marvin/integration/lib/base/SSHKeyPair.py
+++ /dev/null
@@ -1,64 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createSSHKeyPair
-from marvin.cloudstackAPI import registerSSHKeyPair
-from marvin.cloudstackAPI import listSSHKeyPairs
-from marvin.cloudstackAPI import deleteSSHKeyPair
-
-class SSHKeyPair(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createSSHKeyPair.createSSHKeyPairCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        sshkeypair = apiclient.createSSHKeyPair(cmd)
-        return SSHKeyPair(sshkeypair.__dict__)
-
-
-    def register(self, apiclient, publickey, name, **kwargs):
-        cmd = registerSSHKeyPair.registerSSHKeyPairCmd()
-        cmd.id = self.id
-        cmd.name = name
-        cmd.publickey = publickey
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        sshkeypair = apiclient.registerSSHKeyPair(cmd)
-        return sshkeypair
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listSSHKeyPairs.listSSHKeyPairsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        sshkeypair = apiclient.listSSHKeyPairs(cmd)
-        return map(lambda e: SSHKeyPair(e.__dict__), sshkeypair)
-
-
-    def delete(self, apiclient, name, **kwargs):
-        cmd = deleteSSHKeyPair.deleteSSHKeyPairCmd()
-        cmd.id = self.id
-        cmd.name = name
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        sshkeypair = apiclient.deleteSSHKeyPair(cmd)
-        return sshkeypair
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py b/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py
deleted file mode 100644
index 535d797..0000000
--- a/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py
+++ /dev/null
@@ -1,34 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import addSecondaryStorage
-
-class SecondaryStorage(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def add(self, apiclient, url, **kwargs):
-        cmd = addSecondaryStorage.addSecondaryStorageCmd()
-        cmd.id = self.id
-        cmd.url = url
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        secondarystorage = apiclient.addSecondaryStorage(cmd)
-        return secondarystorage
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/SecurityGroup.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SecurityGroup.py b/tools/marvin/marvin/integration/lib/base/SecurityGroup.py
deleted file mode 100644
index e4bb53b..0000000
--- a/tools/marvin/marvin/integration/lib/base/SecurityGroup.py
+++ /dev/null
@@ -1,82 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createSecurityGroup
-from marvin.cloudstackAPI import listSecurityGroups
-from marvin.cloudstackAPI import deleteSecurityGroup
-from marvin.cloudstackAPI import revokeSecurityGroupEgress
-from marvin.cloudstackAPI import revokeSecurityGroupIngress
-from marvin.cloudstackAPI import authorizeSecurityGroupEgress
-from marvin.cloudstackAPI import authorizeSecurityGroupIngress
-
-class SecurityGroup(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createSecurityGroup.createSecurityGroupCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        securitygroup = apiclient.createSecurityGroup(cmd)
-        return SecurityGroup(securitygroup.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listSecurityGroups.listSecurityGroupsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        securitygroup = apiclient.listSecurityGroups(cmd)
-        return map(lambda e: SecurityGroup(e.__dict__), securitygroup)
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteSecurityGroup.deleteSecurityGroupCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        securitygroup = apiclient.deleteSecurityGroup(cmd)
-        return securitygroup
-
-
-    def authorize(self, apiclient, ingress=True, **kwargs):
-        if ingress:
-            cmd = authorizeSecurityGroupIngress.authorizeSecurityGroupIngressCmd()
-        else:
-            cmd = authorizeSecurityGroupEgress.authorizeSecurityGroupEgressCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        if ingress:
-            return apiclient.authorizeSecurityGroupIngress(cmd)
-        else:
-            return apiclient.authorizeSecurityGroupEgress(cmd)
-
-
-    def revoke(self, apiclient, ingress=True, **kwargs):
-        if ingress:
-            cmd = revokeSecurityGroupIngress.revokeSecurityGroupIngressCmd()
-        else:
-            cmd = revokeSecurityGroupEgress.revokeSecurityGroupEgressCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        if ingress:
-            return apiclient.revokeSecurityGroupIngress(cmd)
-        else:
-            return apiclient.revokeSecurityGroupEgress(cmd)
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py b/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py
deleted file mode 100644
index 84aa607..0000000
--- a/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py
+++ /dev/null
@@ -1,34 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import changeServiceForRouter
-
-class ServiceForRouter(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def change(self, apiclient, serviceofferingid, **kwargs):
-        cmd = changeServiceForRouter.changeServiceForRouterCmd()
-        cmd.id = self.id
-        cmd.serviceofferingid = serviceofferingid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        serviceforrouter = apiclient.changeServiceForRouter(cmd)
-        return serviceforrouter
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py b/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py
deleted file mode 100644
index e121766..0000000
--- a/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py
+++ /dev/null
@@ -1,34 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import changeServiceForSystemVm
-
-class ServiceForSystemVm(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def change(self, apiclient, serviceofferingid, **kwargs):
-        cmd = changeServiceForSystemVm.changeServiceForSystemVmCmd()
-        cmd.id = self.id
-        cmd.serviceofferingid = serviceofferingid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        serviceforsystemvm = apiclient.changeServiceForSystemVm(cmd)
-        return serviceforsystemvm
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py b/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py
deleted file mode 100644
index 4fd0918..0000000
--- a/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py
+++ /dev/null
@@ -1,34 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import changeServiceForVirtualMachine
-
-class ServiceForVirtualMachine(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def change(self, apiclient, serviceofferingid, **kwargs):
-        cmd = changeServiceForVirtualMachine.changeServiceForVirtualMachineCmd()
-        cmd.id = self.id
-        cmd.serviceofferingid = serviceofferingid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        serviceforvirtualmachine = apiclient.changeServiceForVirtualMachine(cmd)
-        return serviceforvirtualmachine
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/ServiceOffering.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ServiceOffering.py b/tools/marvin/marvin/integration/lib/base/ServiceOffering.py
deleted file mode 100644
index bf5df76..0000000
--- a/tools/marvin/marvin/integration/lib/base/ServiceOffering.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createServiceOffering
-from marvin.cloudstackAPI import listServiceOfferings
-from marvin.cloudstackAPI import updateServiceOffering
-from marvin.cloudstackAPI import deleteServiceOffering
-
-class ServiceOffering(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createServiceOffering.createServiceOfferingCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        serviceoffering = apiclient.createServiceOffering(cmd)
-        return ServiceOffering(serviceoffering.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listServiceOfferings.listServiceOfferingsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        serviceoffering = apiclient.listServiceOfferings(cmd)
-        return map(lambda e: ServiceOffering(e.__dict__), serviceoffering)
-
-
-    def update(self, apiclient, **kwargs):
-        cmd = updateServiceOffering.updateServiceOfferingCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        serviceoffering = apiclient.updateServiceOffering(cmd)
-        return serviceoffering
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteServiceOffering.deleteServiceOfferingCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        serviceoffering = apiclient.deleteServiceOffering(cmd)
-        return serviceoffering
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/Simulator.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Simulator.py b/tools/marvin/marvin/integration/lib/base/Simulator.py
deleted file mode 100644
index 8659dc1..0000000
--- a/tools/marvin/marvin/integration/lib/base/Simulator.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import configureSimulator
-
-class Simulator(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def configure(self, apiclient, name, value, **kwargs):
-        cmd = configureSimulator.configureSimulatorCmd()
-        cmd.id = self.id
-        cmd.name = name
-        cmd.value = value
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        simulator = apiclient.configureSimulator(cmd)
-        return simulator
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/Snapshot.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Snapshot.py b/tools/marvin/marvin/integration/lib/base/Snapshot.py
deleted file mode 100644
index 1dde1b4..0000000
--- a/tools/marvin/marvin/integration/lib/base/Snapshot.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createSnapshot
-from marvin.cloudstackAPI import listSnapshots
-from marvin.cloudstackAPI import deleteSnapshot
-
-class Snapshot(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createSnapshot.createSnapshotCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        snapshot = apiclient.createSnapshot(cmd)
-        return Snapshot(snapshot.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listSnapshots.listSnapshotsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        snapshot = apiclient.listSnapshots(cmd)
-        return map(lambda e: Snapshot(e.__dict__), snapshot)
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteSnapshot.deleteSnapshotCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        snapshot = apiclient.deleteSnapshot(cmd)
-        return snapshot
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/SnapshotPolicy.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SnapshotPolicy.py b/tools/marvin/marvin/integration/lib/base/SnapshotPolicy.py
deleted file mode 100644
index a3ef2f8..0000000
--- a/tools/marvin/marvin/integration/lib/base/SnapshotPolicy.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createSnapshotPolicy
-from marvin.cloudstackAPI import listSnapshotPolicies
-from marvin.cloudstackAPI import deleteSnapshotPolicies
-
-class SnapshotPolicy(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createSnapshotPolicy.createSnapshotPolicyCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        snapshotpolicy = apiclient.createSnapshotPolicy(cmd)
-        return SnapshotPolicy(snapshotpolicy.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, volumeid, **kwargs):
-        cmd = listSnapshotPolicies.listSnapshotPoliciesCmd()
-        cmd.volumeid = volumeid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        snapshotpolicies = apiclient.listSnapshotPolicies(cmd)
-        return map(lambda e: SnapshotPolicy(e.__dict__), snapshotpolicies)
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteSnapshotPolicies.deleteSnapshotPoliciesCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        snapshotpolicies = apiclient.deleteSnapshotPolicies(cmd)
-        return snapshotpolicies

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/StaticNat.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StaticNat.py b/tools/marvin/marvin/integration/lib/base/StaticNat.py
deleted file mode 100644
index 3fb5430..0000000
--- a/tools/marvin/marvin/integration/lib/base/StaticNat.py
+++ /dev/null
@@ -1,45 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import enableStaticNat
-from marvin.cloudstackAPI import disableStaticNat
-
-class StaticNat(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def enable(self, apiclient, ipaddressid, virtualmachineid, **kwargs):
-        cmd = enableStaticNat.enableStaticNatCmd()
-        cmd.id = self.id
-        cmd.ipaddressid = ipaddressid
-        cmd.virtualmachineid = virtualmachineid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        staticnat = apiclient.enableStaticNat(cmd)
-        return staticnat
-
-
-    def disable(self, apiclient, ipaddressid, **kwargs):
-        cmd = disableStaticNat.disableStaticNatCmd()
-        cmd.id = self.id
-        cmd.ipaddressid = ipaddressid
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        staticnat = apiclient.disableStaticNat(cmd)
-        return staticnat
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/StaticRoute.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StaticRoute.py b/tools/marvin/marvin/integration/lib/base/StaticRoute.py
deleted file mode 100644
index 4ccf546..0000000
--- a/tools/marvin/marvin/integration/lib/base/StaticRoute.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createStaticRoute
-from marvin.cloudstackAPI import listStaticRoutes
-from marvin.cloudstackAPI import deleteStaticRoute
-
-class StaticRoute(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createStaticRoute.createStaticRouteCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        staticroute = apiclient.createStaticRoute(cmd)
-        return StaticRoute(staticroute.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listStaticRoutes.listStaticRoutesCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        staticroute = apiclient.listStaticRoutes(cmd)
-        return map(lambda e: StaticRoute(e.__dict__), staticroute)
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteStaticRoute.deleteStaticRouteCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        staticroute = apiclient.deleteStaticRoute(cmd)
-        return staticroute
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/StorageNetworkIpRange.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StorageNetworkIpRange.py b/tools/marvin/marvin/integration/lib/base/StorageNetworkIpRange.py
deleted file mode 100644
index 666a9d2..0000000
--- a/tools/marvin/marvin/integration/lib/base/StorageNetworkIpRange.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createStorageNetworkIpRange
-from marvin.cloudstackAPI import listStorageNetworkIpRange
-from marvin.cloudstackAPI import updateStorageNetworkIpRange
-from marvin.cloudstackAPI import deleteStorageNetworkIpRange
-
-class StorageNetworkIpRange(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createStorageNetworkIpRange.createStorageNetworkIpRangeCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagenetworkiprange = apiclient.createStorageNetworkIpRange(cmd)
-        return StorageNetworkIpRange(storagenetworkiprange.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listStorageNetworkIpRange.listStorageNetworkIpRangeCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagenetworkiprange = apiclient.listStorageNetworkIpRange(cmd)
-        return map(lambda e: StorageNetworkIpRange(e.__dict__), storagenetworkiprange)
-
-
-    def update(self, apiclient, **kwargs):
-        cmd = updateStorageNetworkIpRange.updateStorageNetworkIpRangeCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagenetworkiprange = apiclient.updateStorageNetworkIpRange(cmd)
-        return storagenetworkiprange
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteStorageNetworkIpRange.deleteStorageNetworkIpRangeCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagenetworkiprange = apiclient.deleteStorageNetworkIpRange(cmd)
-        return storagenetworkiprange
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/StoragePool.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StoragePool.py b/tools/marvin/marvin/integration/lib/base/StoragePool.py
deleted file mode 100644
index 8b4bd4a..0000000
--- a/tools/marvin/marvin/integration/lib/base/StoragePool.py
+++ /dev/null
@@ -1,79 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import createStoragePool
-from marvin.cloudstackAPI import listStoragePools
-from marvin.cloudstackAPI import updateStoragePool
-from marvin.cloudstackAPI import deleteStoragePool
-from marvin.cloudstackAPI import cancelStorageMaintenance
-from marvin.cloudstackAPI import enableStorageMaintenance
-
-class StoragePool(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def create(cls, apiclient, factory, **kwargs):
-        cmd = createStoragePool.createStoragePoolCmd()
-        [setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagepool = apiclient.createStoragePool(cmd)
-        return StoragePool(storagepool.__dict__)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listStoragePools.listStoragePoolsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagepool = apiclient.listStoragePools(cmd)
-        return map(lambda e: StoragePool(e.__dict__), storagepool)
-
-
-    def update(self, apiclient, **kwargs):
-        cmd = updateStoragePool.updateStoragePoolCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagepool = apiclient.updateStoragePool(cmd)
-        return storagepool
-
-
-    def delete(self, apiclient, **kwargs):
-        cmd = deleteStoragePool.deleteStoragePoolCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagepool = apiclient.deleteStoragePool(cmd)
-        return storagepool
-
-
-    def cancel_maintenance(self, apiclient, **kwargs):
-        cmd = cancelStorageMaintenance.cancelStorageMaintenanceCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagemaintenance = apiclient.cancelStorageMaintenance(cmd)
-        return storagemaintenance
-
-
-    def enable_maintenance(self, apiclient, **kwargs):
-        cmd = enableStorageMaintenance.enableStorageMaintenanceCmd()
-        cmd.id = self.id
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storagemaintenance = apiclient.enableStorageMaintenance(cmd)
-        return storagemaintenance
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/StorageProviders.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StorageProviders.py b/tools/marvin/marvin/integration/lib/base/StorageProviders.py
deleted file mode 100644
index 406282f..0000000
--- a/tools/marvin/marvin/integration/lib/base/StorageProviders.py
+++ /dev/null
@@ -1,33 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import listStorageProviders
-
-class StorageProviders(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def list(self, apiclient, type, **kwargs):
-        cmd = listStorageProviders.listStorageProvidersCmd()
-        cmd.type = type
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        storageproviders = apiclient.listStorageProviders(cmd)
-        return map(lambda e: StorageProviders(e.__dict__), storageproviders)

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/SupportedNetworkServices.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SupportedNetworkServices.py b/tools/marvin/marvin/integration/lib/base/SupportedNetworkServices.py
deleted file mode 100644
index 081aa6f..0000000
--- a/tools/marvin/marvin/integration/lib/base/SupportedNetworkServices.py
+++ /dev/null
@@ -1,33 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import listSupportedNetworkServices
-
-class SupportedNetworkServices(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listSupportedNetworkServices.listSupportedNetworkServicesCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        supportednetworkservices = apiclient.listSupportedNetworkServices(cmd)
-        return map(lambda e: SupportedNetworkServices(e.__dict__), supportednetworkservices)
-

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/dd838d72/tools/marvin/marvin/integration/lib/base/Swift.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Swift.py b/tools/marvin/marvin/integration/lib/base/Swift.py
deleted file mode 100644
index 0a02280..0000000
--- a/tools/marvin/marvin/integration/lib/base/Swift.py
+++ /dev/null
@@ -1,43 +0,0 @@
-# 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.
-from marvin.integration.lib.base import CloudStackEntity
-from marvin.cloudstackAPI import addSwift
-from marvin.cloudstackAPI import listSwifts
-
-class Swift(CloudStackEntity.CloudStackEntity):
-
-
-    def __init__(self, items):
-        self.__dict__.update(items)
-
-
-    def add(self, apiclient, url, **kwargs):
-        cmd = addSwift.addSwiftCmd()
-        cmd.id = self.id
-        cmd.url = url
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        swift = apiclient.addSwift(cmd)
-        return swift
-
-
-    @classmethod
-    def list(self, apiclient, **kwargs):
-        cmd = listSwifts.listSwiftsCmd()
-        [setattr(cmd, key, value) for key,value in kwargs.iteritems()]
-        swift = apiclient.listSwifts(cmd)
-        return map(lambda e: Swift(e.__dict__), swift)
-