diff options
author | Todd Willey <todd@ansolabs.com> | 2011-01-27 15:58:22 -0800 |
---|---|---|
committer | Todd Willey <todd@ansolabs.com> | 2011-01-27 15:58:22 -0800 |
commit | f61da82b6dc614867028e39eec71ed98de8bfac7 (patch) | |
tree | e935ca43b096cd8c79584c49ad32b42d30b0b69a /nova/adminclient.py | |
parent | 4b4781f5cc015c80c9acb0625aaeac9cde667d4b (diff) | |
parent | d4f77e1c9eaad19f2a917081737840f9e52dac13 (diff) | |
download | nova-f61da82b6dc614867028e39eec71ed98de8bfac7.tar.gz nova-f61da82b6dc614867028e39eec71ed98de8bfac7.tar.xz nova-f61da82b6dc614867028e39eec71ed98de8bfac7.zip |
Merge & fix conflict.
Diffstat (limited to 'nova/adminclient.py')
-rw-r--r-- | nova/adminclient.py | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/nova/adminclient.py b/nova/adminclient.py index b2609c8c4..3cdd8347f 100644 --- a/nova/adminclient.py +++ b/nova/adminclient.py @@ -190,6 +190,45 @@ class HostInfo(object): setattr(self, name, value) +class InstanceType(object): + """ + Information about a Nova instance type, as parsed through SAX. + + **Fields include** + + * name + * vcpus + * disk_gb + * memory_mb + * flavor_id + + """ + + def __init__(self, connection=None): + self.connection = connection + self.name = None + self.vcpus = None + self.disk_gb = None + self.memory_mb = None + self.flavor_id = None + + def __repr__(self): + return 'InstanceType:%s' % self.name + + def startElement(self, name, attrs, connection): + return None + + def endElement(self, name, value, connection): + if name == "memoryMb": + self.memory_mb = str(value) + elif name == "flavorId": + self.flavor_id = str(value) + elif name == "diskGb": + self.disk_gb = str(value) + else: + setattr(self, name, str(value)) + + class NovaAdminClient(object): def __init__( @@ -373,3 +412,8 @@ class NovaAdminClient(object): def get_hosts(self): return self.apiconn.get_list('DescribeHosts', {}, [('item', HostInfo)]) + + def get_instance_types(self): + """Grabs the list of all users.""" + return self.apiconn.get_list('DescribeInstanceTypes', {}, + [('item', InstanceType)]) |