diff options
Diffstat (limited to 'nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/HypervisorsExtension.java')
-rw-r--r-- | nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/HypervisorsExtension.java | 44 |
1 files changed, 43 insertions, 1 deletions
diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/HypervisorsExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/HypervisorsExtension.java index b092b0c..a785971 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/HypervisorsExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/HypervisorsExtension.java @@ -16,6 +16,48 @@ package com.woorea.openstack.nova.api.extensions; -public interface HypervisorsExtension { +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.nova.model.Hypervisor; +import com.woorea.openstack.nova.model.Hypervisors; +public class HypervisorsExtension { + + private final OpenStackClient client; + + public HypervisorsExtension(OpenStackClient client) { + this.client = client; + } + + public List list() { + return new List(); + } + + public ListDetail listDetail() { + return new ListDetail(); + } + + public Show show(String id) { + return new Show(id); + } + + public class List extends OpenStackRequest<Hypervisors> { + public List() { + super(client, HttpMethod.GET, "/os-hypervisors", null, Hypervisors.class); + } + } + + public class ListDetail extends OpenStackRequest<Hypervisors> { + public ListDetail() { + super(client, HttpMethod.GET, "/os-hypervisors/detail", null, Hypervisors.class); + } + } + + public class Show extends OpenStackRequest<Hypervisor> { + public Show(String id) { + super(client, HttpMethod.GET, new StringBuffer("/hypervisors").append(id).toString(), null, + Hypervisor.class); + } + } } |