Interface HostAggregateApi
@Beta
@Consumes("application/json")
@Path("/os-aggregates")
public interface HostAggregateApi
Provide access to the OpenStack Compute (Nova) Host Aggregates extension API.
-
Method Summary
Modifier and TypeMethodDescriptionAdds a host to an aggregatecreateInAvailabilityZone(String name, String availabilityZone) Creates an aggregate, given its name and availability zone.Removes an aggregate.Retrieves the details of an aggregate, hosts and metadata included.com.google.common.collect.FluentIterable<HostAggregate>list()Lists all host aggregates.removeHost(String id, String host) Removes a host from an aggregatesetMetadata(String id, Map<String, String> metadata) Adds metadata to an aggregateupdateAvailabilityZone(String id, String availabilityZone) Updates the availability zone for an aggregate.updateName(String id, String name) Updates the name of an aggregate.
-
Method Details
-
list
Lists all host aggregates.- Returns:
- the set of host aggregates.
-
get
@Named("hostAggregate:get") @GET @Path("/{id}") @Nullable HostAggregate get(@PathParam("id") String id) Retrieves the details of an aggregate, hosts and metadata included.- Returns:
- the details of the aggregate requested.
-
createInAvailabilityZone
@Named("hostAggregate:create") @POST @Produces("application/json") HostAggregate createInAvailabilityZone(String name, String availabilityZone) Creates an aggregate, given its name and availability zone.- Returns:
- the newly created Aggregate
-
updateName
@Named("hostAggregate:update") @POST @Path("/{id}") HostAggregate updateName(@PathParam("id") String id, String name) Updates the name of an aggregate. -
updateAvailabilityZone
@Named("hostAggregate:update") @POST @Path("/{id}") HostAggregate updateAvailabilityZone(@PathParam("id") String id, String availabilityZone) Updates the availability zone for an aggregate. -
delete
Removes an aggregate. -
addHost
@Named("hostAggregate:addHost") @POST @Path("/{id}/action") @Produces("application/json") HostAggregate addHost(@PathParam("id") String id, String host) Adds a host to an aggregate -
removeHost
@Named("hostAggregate:removeHost") @POST @Path("/{id}/action") @Produces("application/json") HostAggregate removeHost(@PathParam("id") String id, String host) Removes a host from an aggregate -
setMetadata
@Named("hostAggregate:setMetadata") @POST @Path("/{id}/action") @Produces("application/json") HostAggregate setMetadata(@PathParam("id") String id, Map<String, String> metadata) Adds metadata to an aggregate
-