From 776124914b916d6d8f1dd0c618872472af638f89 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Sat, 26 Jan 2013 21:43:17 +0530 Subject: [PATCH] marvin_refactor: create takes factories not reqd args - Let all entities inherit from CloudStackEntity - create and list are classmethods since they work without need for an entity to exist - create takes only factories by default. no need for long param list. Entitiy.create(apiclient) will give entity out of default factory - Use entityFactory.attributes() to init entities Signed-off-by: Prasanna Santhanam --- .../marvin/marvin/integration/lib/base/AccountFromProject.py | 4 ++++ tools/marvin/marvin/integration/lib/base/AccountToProject.py | 4 ++++ tools/marvin/marvin/integration/lib/base/ApiLimit.py | 4 ++++ tools/marvin/marvin/integration/lib/base/AsyncJobResult.py | 4 ++++ tools/marvin/marvin/integration/lib/base/CloudIdentifier.py | 4 ++++ tools/marvin/marvin/integration/lib/base/CustomCertificate.py | 4 ++++ .../marvin/integration/lib/base/DefaultZoneForAccount.py | 4 ++++ .../marvin/integration/lib/base/FromLoadBalancerRule.py | 4 ++++ .../marvin/marvin/integration/lib/base/HostForMaintenance.py | 4 ++++ tools/marvin/marvin/integration/lib/base/HostMaintenance.py | 4 ++++ tools/marvin/marvin/integration/lib/base/HostPassword.py | 4 ++++ tools/marvin/marvin/integration/lib/base/IpAddress.py | 4 ++++ .../marvin/integration/lib/base/PasswordForVirtualMachine.py | 4 ++++ tools/marvin/marvin/integration/lib/base/ResourceCount.py | 4 ++++ tools/marvin/marvin/integration/lib/base/SecondaryStorage.py | 4 ++++ .../marvin/marvin/integration/lib/base/SecurityGroupEgress.py | 4 ++++ .../marvin/integration/lib/base/SecurityGroupIngress.py | 4 ++++ tools/marvin/marvin/integration/lib/base/ServiceForRouter.py | 4 ++++ .../marvin/marvin/integration/lib/base/ServiceForSystemVm.py | 4 ++++ .../marvin/integration/lib/base/ServiceForVirtualMachine.py | 4 ++++ tools/marvin/marvin/integration/lib/base/StaticNat.py | 4 ++++ .../marvin/marvin/integration/lib/base/StorageMaintenance.py | 4 ++++ .../marvin/marvin/integration/lib/base/ToLoadBalancerRule.py | 4 ++++ tools/marvin/marvin/integration/lib/base/UserKeys.py | 4 ++++ tools/marvin/marvin/integration/lib/base/VMPassword.py | 4 ++++ 25 files changed, 100 insertions(+) diff --git a/tools/marvin/marvin/integration/lib/base/AccountFromProject.py b/tools/marvin/marvin/integration/lib/base/AccountFromProject.py index 88ba76d5e68..5cbaa6e7f6d 100644 --- a/tools/marvin/marvin/integration/lib/base/AccountFromProject.py +++ b/tools/marvin/marvin/integration/lib/base/AccountFromProject.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import deleteAccountFromProject class AccountFromProject(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/AccountToProject.py b/tools/marvin/marvin/integration/lib/base/AccountToProject.py index 649073f016c..867511b44ec 100644 --- a/tools/marvin/marvin/integration/lib/base/AccountToProject.py +++ b/tools/marvin/marvin/integration/lib/base/AccountToProject.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import addAccountToProject class AccountToProject(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/ApiLimit.py b/tools/marvin/marvin/integration/lib/base/ApiLimit.py index 48218011dc8..4a56df8dc86 100644 --- a/tools/marvin/marvin/integration/lib/base/ApiLimit.py +++ b/tools/marvin/marvin/integration/lib/base/ApiLimit.py @@ -21,6 +21,10 @@ from marvin.cloudstackAPI import getApiLimit class ApiLimit(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/AsyncJobResult.py b/tools/marvin/marvin/integration/lib/base/AsyncJobResult.py index 36ef31efffc..5c5683377cc 100644 --- a/tools/marvin/marvin/integration/lib/base/AsyncJobResult.py +++ b/tools/marvin/marvin/integration/lib/base/AsyncJobResult.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import queryAsyncJobResult class AsyncJobResult(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/CloudIdentifier.py b/tools/marvin/marvin/integration/lib/base/CloudIdentifier.py index 35c5f85bf36..cde136eb985 100644 --- a/tools/marvin/marvin/integration/lib/base/CloudIdentifier.py +++ b/tools/marvin/marvin/integration/lib/base/CloudIdentifier.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import getCloudIdentifier class CloudIdentifier(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/CustomCertificate.py b/tools/marvin/marvin/integration/lib/base/CustomCertificate.py index 20109468655..e41fc6bfbf6 100644 --- a/tools/marvin/marvin/integration/lib/base/CustomCertificate.py +++ b/tools/marvin/marvin/integration/lib/base/CustomCertificate.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import uploadCustomCertificate class CustomCertificate(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/DefaultZoneForAccount.py b/tools/marvin/marvin/integration/lib/base/DefaultZoneForAccount.py index 41b2b97ee37..58a72d5ba23 100644 --- a/tools/marvin/marvin/integration/lib/base/DefaultZoneForAccount.py +++ b/tools/marvin/marvin/integration/lib/base/DefaultZoneForAccount.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import markDefaultZoneForAccount class DefaultZoneForAccount(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/FromLoadBalancerRule.py b/tools/marvin/marvin/integration/lib/base/FromLoadBalancerRule.py index 6a8cc9964b2..d4ba7f14ec9 100644 --- a/tools/marvin/marvin/integration/lib/base/FromLoadBalancerRule.py +++ b/tools/marvin/marvin/integration/lib/base/FromLoadBalancerRule.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import removeFromLoadBalancerRule class FromLoadBalancerRule(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/HostForMaintenance.py b/tools/marvin/marvin/integration/lib/base/HostForMaintenance.py index 81c63af15ba..3d888cbbb20 100644 --- a/tools/marvin/marvin/integration/lib/base/HostForMaintenance.py +++ b/tools/marvin/marvin/integration/lib/base/HostForMaintenance.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import prepareHostForMaintenance class HostForMaintenance(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/HostMaintenance.py b/tools/marvin/marvin/integration/lib/base/HostMaintenance.py index 0d3825dc508..b8d9a719de2 100644 --- a/tools/marvin/marvin/integration/lib/base/HostMaintenance.py +++ b/tools/marvin/marvin/integration/lib/base/HostMaintenance.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import cancelHostMaintenance class HostMaintenance(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/HostPassword.py b/tools/marvin/marvin/integration/lib/base/HostPassword.py index 0d5d43af28c..a2c14fbc434 100644 --- a/tools/marvin/marvin/integration/lib/base/HostPassword.py +++ b/tools/marvin/marvin/integration/lib/base/HostPassword.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import updateHostPassword class HostPassword(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/IpAddress.py b/tools/marvin/marvin/integration/lib/base/IpAddress.py index 304028e8d93..a4950070121 100644 --- a/tools/marvin/marvin/integration/lib/base/IpAddress.py +++ b/tools/marvin/marvin/integration/lib/base/IpAddress.py @@ -21,6 +21,10 @@ from marvin.cloudstackAPI import associateIpAddress class IpAddress(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/PasswordForVirtualMachine.py b/tools/marvin/marvin/integration/lib/base/PasswordForVirtualMachine.py index 50a88a5b762..6b2a49c417a 100644 --- a/tools/marvin/marvin/integration/lib/base/PasswordForVirtualMachine.py +++ b/tools/marvin/marvin/integration/lib/base/PasswordForVirtualMachine.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import resetPasswordForVirtualMachine class PasswordForVirtualMachine(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/ResourceCount.py b/tools/marvin/marvin/integration/lib/base/ResourceCount.py index 35d1d6af0e5..147d0cd28e2 100644 --- a/tools/marvin/marvin/integration/lib/base/ResourceCount.py +++ b/tools/marvin/marvin/integration/lib/base/ResourceCount.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import updateResourceCount class ResourceCount(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py b/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py index c5cdd094083..d273347868e 100644 --- a/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py +++ b/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import addSecondaryStorage class SecondaryStorage(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/SecurityGroupEgress.py b/tools/marvin/marvin/integration/lib/base/SecurityGroupEgress.py index 34a7daf0659..c2e633248a4 100644 --- a/tools/marvin/marvin/integration/lib/base/SecurityGroupEgress.py +++ b/tools/marvin/marvin/integration/lib/base/SecurityGroupEgress.py @@ -21,6 +21,10 @@ from marvin.cloudstackAPI import revokeSecurityGroupEgress class SecurityGroupEgress(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/SecurityGroupIngress.py b/tools/marvin/marvin/integration/lib/base/SecurityGroupIngress.py index eb4c9f2911d..54226a10ecb 100644 --- a/tools/marvin/marvin/integration/lib/base/SecurityGroupIngress.py +++ b/tools/marvin/marvin/integration/lib/base/SecurityGroupIngress.py @@ -21,6 +21,10 @@ from marvin.cloudstackAPI import revokeSecurityGroupIngress class SecurityGroupIngress(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py b/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py index 5da4297c9df..d2d2b1aaf42 100644 --- a/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py +++ b/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import changeServiceForRouter class ServiceForRouter(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py b/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py index dc7ca381917..2af2bb0071f 100644 --- a/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py +++ b/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import changeServiceForSystemVm class ServiceForSystemVm(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py b/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py index 8f350107447..91e561fdcf5 100644 --- a/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py +++ b/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import changeServiceForVirtualMachine class ServiceForVirtualMachine(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/StaticNat.py b/tools/marvin/marvin/integration/lib/base/StaticNat.py index 60dec84ffe9..07a706d4a85 100644 --- a/tools/marvin/marvin/integration/lib/base/StaticNat.py +++ b/tools/marvin/marvin/integration/lib/base/StaticNat.py @@ -21,6 +21,10 @@ from marvin.cloudstackAPI import disableStaticNat class StaticNat(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/StorageMaintenance.py b/tools/marvin/marvin/integration/lib/base/StorageMaintenance.py index 658045133fb..989dd727146 100644 --- a/tools/marvin/marvin/integration/lib/base/StorageMaintenance.py +++ b/tools/marvin/marvin/integration/lib/base/StorageMaintenance.py @@ -21,6 +21,10 @@ from marvin.cloudstackAPI import enableStorageMaintenance class StorageMaintenance(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/ToLoadBalancerRule.py b/tools/marvin/marvin/integration/lib/base/ToLoadBalancerRule.py index e3ab42e5fa0..a40836edd2c 100644 --- a/tools/marvin/marvin/integration/lib/base/ToLoadBalancerRule.py +++ b/tools/marvin/marvin/integration/lib/base/ToLoadBalancerRule.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import assignToLoadBalancerRule class ToLoadBalancerRule(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/UserKeys.py b/tools/marvin/marvin/integration/lib/base/UserKeys.py index 2466902876d..329efe91506 100644 --- a/tools/marvin/marvin/integration/lib/base/UserKeys.py +++ b/tools/marvin/marvin/integration/lib/base/UserKeys.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import registerUserKeys class UserKeys(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items) diff --git a/tools/marvin/marvin/integration/lib/base/VMPassword.py b/tools/marvin/marvin/integration/lib/base/VMPassword.py index d9a6dc6da61..f68cd50ea05 100644 --- a/tools/marvin/marvin/integration/lib/base/VMPassword.py +++ b/tools/marvin/marvin/integration/lib/base/VMPassword.py @@ -20,6 +20,10 @@ from marvin.cloudstackAPI import getVMPassword class VMPassword(CloudStackEntity.CloudStackEntity): + def __init__(self, items): + self.__dict__.update(items) + + def __init__(self, items): self.__dict__.update(items)