Merge pull request #1201 from rackspace/openstack-naming

@Named annotations in all async api methods for OpenStack.
This commit is contained in:
Adrian Cole 2013-01-19 16:53:54 -08:00
commit fe220e5105
29 changed files with 207 additions and 0 deletions

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.cinder.v1.features;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -56,6 +57,7 @@ public interface SnapshotAsyncApi {
/**
* @see SnapshotApi#list()
*/
@Named("snapshot:list")
@GET
@Path("/snapshots")
@SelectJson("snapshots")
@ -66,6 +68,7 @@ public interface SnapshotAsyncApi {
/**
* @see SnapshotApi#listInDetail()
*/
@Named("snapshot:list")
@GET
@Path("/snapshots/detail")
@SelectJson("snapshots")
@ -76,6 +79,7 @@ public interface SnapshotAsyncApi {
/**
* @see SnapshotApi#get(String)
*/
@Named("snapshot:get")
@GET
@Path("/snapshots/{id}")
@SelectJson("snapshot")
@ -86,6 +90,7 @@ public interface SnapshotAsyncApi {
/**
* @see SnapshotApi#create(String, CreateSnapshotOptions...)
*/
@Named("snapshot:create")
@POST
@Path("/snapshots")
@SelectJson("snapshot")
@ -97,6 +102,7 @@ public interface SnapshotAsyncApi {
/**
* @see SnapshotApi#delete(String)
*/
@Named("snapshot:delete")
@DELETE
@Path("/snapshots/{id}")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.cinder.v1.features;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -56,6 +57,7 @@ public interface VolumeAsyncApi {
/**
* @see VolumeApi#list()
*/
@Named("volume:list")
@GET
@Path("/volumes")
@SelectJson("volumes")
@ -66,6 +68,7 @@ public interface VolumeAsyncApi {
/**
* @see VolumeApi#listInDetail()
*/
@Named("volume:list")
@GET
@Path("/volumes/detail")
@SelectJson("volumes")
@ -76,6 +79,7 @@ public interface VolumeAsyncApi {
/**
* @see VolumeApi#get(String)
*/
@Named("volume:get")
@GET
@Path("/volumes/{id}")
@SelectJson("volume")
@ -86,6 +90,7 @@ public interface VolumeAsyncApi {
/**
* @see VolumeApi#create(int, CreateVolumeOptions...)
*/
@Named("volume:create")
@POST
@Path("/volumes")
@SelectJson("volume")
@ -97,6 +102,7 @@ public interface VolumeAsyncApi {
/**
* @see VolumeApi#delete(String)
*/
@Named("volume:delete")
@DELETE
@Path("/volumes/{id}")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.cinder.v1.features;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -49,6 +50,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#list()
*/
@Named("volumetype:list")
@GET
@Path("/types")
@SelectJson("volume_types")
@ -59,6 +61,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#get(String)
*/
@Named("volumetype:get")
@GET
@Path("/types/{id}")
@SelectJson("volume_type")

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.keystone.v2_0.features;
import java.util.Set;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -49,6 +50,7 @@ public interface ServiceAsyncApi {
/**
* @see ServiceApi#listTenants()
*/
@Named("service:listtenants")
@GET
@SelectJson("tenants")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.keystone.v2_0.features;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -60,6 +61,7 @@ public interface TenantAsyncApi {
/**
* @see TenantApi#list()
*/
@Named("tenant:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/tenants")
@ -70,6 +72,7 @@ public interface TenantAsyncApi {
ListenableFuture<? extends PagedIterable<? extends Tenant>> list();
/** @see TenantApi#list(PaginationOptions) */
@Named("tenant:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/tenants")
@ -79,6 +82,7 @@ public interface TenantAsyncApi {
ListenableFuture<? extends PaginatedCollection<? extends Tenant>> list(PaginationOptions options);
/** @see TenantApi#get(String) */
@Named("tenant:get")
@GET
@SelectJson("tenant")
@Consumes(MediaType.APPLICATION_JSON)
@ -88,6 +92,7 @@ public interface TenantAsyncApi {
ListenableFuture<? extends Tenant> get(@PathParam("tenantId") String tenantId);
/** @see TenantApi#getByName(String) */
@Named("tenant:get")
@GET
@SelectJson("tenant")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.keystone.v2_0.features;
import java.util.Set;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.HEAD;
@ -56,6 +57,7 @@ public interface TokenAsyncApi {
/** @see TokenApi#get(String) */
@Named("token:get")
@GET
@SelectJson("token")
@Consumes(MediaType.APPLICATION_JSON)
@ -65,6 +67,7 @@ public interface TokenAsyncApi {
ListenableFuture<? extends Token> get(@PathParam("token") String token);
/** @see TokenApi#getUserOfToken(String) */
@Named("token:getuser")
@GET
@SelectJson("user")
@Consumes(MediaType.APPLICATION_JSON)
@ -74,6 +77,7 @@ public interface TokenAsyncApi {
ListenableFuture<? extends User> getUserOfToken(@PathParam("token") String token);
/** @see TokenApi#isValid(String) */
@Named("token:valid")
@HEAD
@Path("/tokens/{token}")
@RequestFilters(AuthenticateRequest.class)
@ -81,6 +85,7 @@ public interface TokenAsyncApi {
ListenableFuture<Boolean> isValid(@PathParam("token") String token);
/** @see TokenApi#listEndpointsForToken(String) */
@Named("token:listendpoints")
@GET
@SelectJson("endpoints")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.keystone.v2_0.features;
import java.util.Set;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -64,6 +65,7 @@ public interface UserAsyncApi {
/**
* @see UserApi#list()
*/
@Named("user:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/users")
@ -74,6 +76,7 @@ public interface UserAsyncApi {
ListenableFuture<? extends PagedIterable<? extends User>> list();
/** @see UserApi#list(PaginationOptions) */
@Named("user:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/users")
@ -83,6 +86,7 @@ public interface UserAsyncApi {
ListenableFuture<? extends PaginatedCollection<? extends User>> list(PaginationOptions options);
/** @see UserApi#get(String) */
@Named("user:get")
@GET
@SelectJson("user")
@Consumes(MediaType.APPLICATION_JSON)
@ -92,6 +96,7 @@ public interface UserAsyncApi {
ListenableFuture<? extends User> get(@PathParam("userId") String userId);
/** @see UserApi#getByName(String) */
@Named("user:get")
@GET
@SelectJson("user")
@Consumes(MediaType.APPLICATION_JSON)
@ -101,6 +106,7 @@ public interface UserAsyncApi {
ListenableFuture<? extends User> getByName(@QueryParam("name") String userName);
/** @see UserApi#listRolesOfUser(String) */
@Named("user:listroles")
@GET
@SelectJson("roles")
@Consumes(MediaType.APPLICATION_JSON)
@ -110,6 +116,7 @@ public interface UserAsyncApi {
ListenableFuture<? extends Set<? extends Role>> listRolesOfUser(@PathParam("userId") String userId);
/** @see UserApi#listRolesOfUserOnTenant(String, String) */
@Named("user:listroles")
@GET
@SelectJson("roles")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.v2_0.features;
import java.util.Set;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -52,6 +53,7 @@ public interface ExtensionAsyncApi {
/**
* @see ExtensionApi#list
*/
@Named("extension:list")
@GET
@SelectJson("extensions")
@Consumes(MediaType.APPLICATION_JSON)
@ -62,6 +64,7 @@ public interface ExtensionAsyncApi {
/**
* @see ExtensionApi#get
*/
@Named("extension:get")
@GET
@SelectJson("extension")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.nova.ec2.services;
import static org.jclouds.aws.reference.FormParameters.ACTION;
import javax.inject.Named;
import javax.ws.rs.FormParam;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
@ -50,6 +51,7 @@ public interface NovaEC2KeyPairAsyncClient extends KeyPairAsyncClient {
/**
* @see NovaEC2KeyPairClient#importKeyPairInRegion(String, String, String)
*/
@Named("keypair:import")
@POST
@Path("/")
@FormParams(keys = ACTION, values = "ImportKeyPair")

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.nova.v2_0.extensions;
import java.util.Map;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -65,6 +66,7 @@ public interface FlavorExtraSpecsAsyncApi {
/**
* @see FlavorExtraSpecsApi#getMetadata(String)
*/
@Named("flavor:getmetadata")
@GET
@SelectJson("extra_specs")
@Path("/flavors/{flavor_id}/os-extra_specs")
@ -74,6 +76,7 @@ public interface FlavorExtraSpecsAsyncApi {
/**
* @see FlavorExtraSpecsApi#updateMetadataEntry(String, String, String)
*/
@Named("flavor:updatemetadata")
@POST
@Path("/flavors/{flavor_id}/os-extra_specs")
@Produces(MediaType.APPLICATION_JSON)
@ -84,6 +87,7 @@ public interface FlavorExtraSpecsAsyncApi {
/**
* @see FlavorExtraSpecsApi#getMetadataKey(String, String)
*/
@Named("flavor:getmetadata")
@GET
@Path("/flavors/{flavor_id}/os-extra_specs/{key}")
@Unwrap
@ -93,6 +97,7 @@ public interface FlavorExtraSpecsAsyncApi {
/**
* @see FlavorExtraSpecsApi#updateMetadataEntry(String, String, String)
*/
@Named("flavor:updatemetadata")
@PUT
@Path("/flavors/{flavor_id}/os-extra_specs/{key}")
@Produces(MediaType.APPLICATION_JSON)
@ -105,6 +110,7 @@ public interface FlavorExtraSpecsAsyncApi {
/**
* @see FlavorExtraSpecsApi#deleteMetadataKey(String, String)
*/
@Named("flavor:deletemetadata")
@DELETE
@Path("/flavors/{flavor_id}/os-extra_specs/{key}")
@Fallback(FalseOnNotFoundOr404.class)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -64,6 +65,7 @@ public interface FloatingIPAsyncApi {
/**
* @see FloatingIPApi#list
*/
@Named("floatingip:list")
@GET
@Path("/os-floating-ips")
@SelectJson("floating_ips")
@ -74,6 +76,7 @@ public interface FloatingIPAsyncApi {
/**
* @see FloatingIPApi#get
*/
@Named("floatingip:get")
@GET
@Path("/os-floating-ips/{id}")
@SelectJson("floating_ip")
@ -84,6 +87,7 @@ public interface FloatingIPAsyncApi {
/**
* @see FloatingIPApi#create
*/
@Named("floatingip:create")
@POST
@Path("/os-floating-ips")
@SelectJson("floating_ip")
@ -96,6 +100,7 @@ public interface FloatingIPAsyncApi {
/**
* @see FloatingIPApi#delete
*/
@Named("floatingip:delete")
@DELETE
@Consumes(MediaType.APPLICATION_JSON)
@Fallback(NullOnNotFoundOr404.class)
@ -105,6 +110,7 @@ public interface FloatingIPAsyncApi {
/**
* @see FloatingIPApi#addToServer
*/
@Named("floatingip:add")
@POST
@Path("/servers/{server}/action")
@Consumes
@ -116,6 +122,7 @@ public interface FloatingIPAsyncApi {
/**
* @see FloatingIPApi#removeFromServer
*/
@Named("floatingip:remove")
@POST
@Path("/servers/{server}/action")
@Consumes

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.PUT;
@ -69,6 +70,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#list()
*/
@Named("hostadmin:list")
@GET
@SelectJson("hosts")
@Fallback(EmptyFluentIterableOnNotFoundOr404.class)
@ -77,6 +79,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#listResourceUsage(String)
*/
@Named("hostadmin:listresource")
@GET
@Path("/{id}")
@SelectJson("host")
@ -86,6 +89,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#enable(String)
*/
@Named("hostadmin:enable")
@PUT
@Produces(MediaType.APPLICATION_JSON)
@Path("/{id}")
@ -96,6 +100,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#disable(String)
*/
@Named("hostadmin:disable")
@PUT
@Produces(MediaType.APPLICATION_JSON)
@Path("/{id}")
@ -106,6 +111,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#startMaintenance(String)
*/
@Named("hostadmin:startmaintenance")
@PUT
@Produces(MediaType.APPLICATION_JSON)
@Path("/{id}")
@ -116,6 +122,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#stopMaintenance(String)
*/
@Named("hostadmin:stopmaintenance")
@PUT
@Produces(MediaType.APPLICATION_JSON)
@Path("/{id}")
@ -126,6 +133,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#startup(String)
*/
@Named("hostadmin:startup")
@GET
@Path("/{id}/startup")
@ResponseParser(PowerIsStartupResponseParser.class)
@ -134,6 +142,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#shutdown(String)
*/
@Named("hostadmin:shutdown")
@GET
@Path("/{id}/shutdown")
@ResponseParser(PowerIsShutdownResponseParser.class)
@ -142,6 +151,7 @@ public interface HostAdministrationAsyncApi {
/**
* @see HostAdministrationApi#reboot(String)
*/
@Named("hostadmin:reboot")
@GET
@Path("/{id}/reboot")
@ResponseParser(PowerIsRebootResponseParser.class)

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.nova.v2_0.extensions;
import java.util.Map;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -61,6 +62,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#list()
*/
@Named("hostaggregate:list")
@GET
@SelectJson("aggregates")
@Consumes(MediaType.APPLICATION_JSON)
@ -70,6 +72,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#get(String)
*/
@Named("hostaggregate:get")
@GET
@Path("/{id}")
@SelectJson("aggregate")
@ -80,6 +83,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#createInAvailabilityZone(String, String)
*/
@Named("hostaggregate:create")
@POST
@SelectJson("aggregate")
@Consumes(MediaType.APPLICATION_JSON)
@ -91,6 +95,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#updateName
*/
@Named("hostaggregate:update")
@POST
@Path("/{id}")
@SelectJson("aggregate")
@ -101,6 +106,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#updateAvailabilityZone
*/
@Named("hostaggregate:update")
@POST
@Path("/{id}")
@SelectJson("aggregate")
@ -111,6 +117,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#delete(String)
*/
@Named("hostaggregate:delete")
@DELETE
@Path("/{id}")
@Consumes(MediaType.APPLICATION_JSON)
@ -120,6 +127,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#addHost(String,String)
*/
@Named("hostaggregate:addhost")
@POST
@Path("/{id}/action")
@SelectJson("aggregate")
@ -132,6 +140,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#removeHost(String,String)
*/
@Named("hostaggregate:removehost")
@POST
@Path("/{id}/action")
@SelectJson("aggregate")
@ -143,6 +152,7 @@ public interface HostAggregateAsyncApi {
/**
* @see HostAggregateApi#setMetadata
*/
@Named("hostaggregate:setmetadata")
@POST
@Path("/{id}/action")
@SelectJson("aggregate")

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -66,6 +67,7 @@ import com.google.common.util.concurrent.ListenableFuture;
@RequestFilters(AuthenticateRequest.class)
public interface KeyPairAsyncApi {
@Named("keypair:list")
@GET
@Path("/os-keypairs")
@ResponseParser(ParseKeyPairs.class)
@ -73,6 +75,7 @@ public interface KeyPairAsyncApi {
@Fallback(EmptyFluentIterableOnNotFoundOr404.class)
ListenableFuture<? extends FluentIterable<? extends KeyPair>> list();
@Named("keypair:create")
@POST
@Path("/os-keypairs")
@SelectJson("keypair")
@ -81,6 +84,7 @@ public interface KeyPairAsyncApi {
@Payload("%7B\"keypair\":%7B\"name\":\"{name}\"%7D%7D")
ListenableFuture<? extends KeyPair> create(@PayloadParam("name") String name);
@Named("keypair:create")
@POST
@Path("/os-keypairs")
@SelectJson("keypair")
@ -90,6 +94,7 @@ public interface KeyPairAsyncApi {
ListenableFuture<? extends KeyPair> createWithPublicKey(@PayloadParam("name") String name,
@PayloadParam("public_key") String publicKey);
@Named("keypair:delete")
@DELETE
@Path("/os-keypairs/{name}")
@Fallback(FalseOnNotFoundOr404.class)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.PUT;
@ -57,6 +58,7 @@ public interface QuotaAsyncApi {
/**
* @see QuotaApi#getDefaultsForTenant(String)
*/
@Named("quota:get")
@GET
@SelectJson("quota_set")
@Consumes(MediaType.APPLICATION_JSON)
@ -67,6 +69,7 @@ public interface QuotaAsyncApi {
/**
* @see QuotaApi#updateQuotaOfTenant
*/
@Named("quota:update")
@PUT
@Path("/{tenant_id}")
@Produces(MediaType.APPLICATION_JSON)
@ -77,6 +80,7 @@ public interface QuotaAsyncApi {
/**
* @see QuotaApi#getDefaultsForTenant(String)
*/
@Named("quota:get")
@GET
@SelectJson("quota_set")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.PUT;
@ -58,6 +59,7 @@ public interface QuotaClassAsyncApi {
/**
* @see QuotaClassApi#get
*/
@Named("quotaclass:get")
@GET
@SelectJson("quota_class_set")
@Consumes(MediaType.APPLICATION_JSON)
@ -68,6 +70,7 @@ public interface QuotaClassAsyncApi {
/**
* @see QuotaClassApi#update
*/
@Named("quotaclass:update")
@PUT
@Path("/{id}")
@Produces(MediaType.APPLICATION_JSON)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -67,6 +68,7 @@ public interface SecurityGroupAsyncApi {
/**
* @see SecurityGroupApi#list
*/
@Named("securitygroup:list")
@GET
@SelectJson("security_groups")
@Consumes(MediaType.APPLICATION_JSON)
@ -77,6 +79,7 @@ public interface SecurityGroupAsyncApi {
/**
* @see SecurityGroupApi#get
*/
@Named("securitygroup:get")
@GET
@Path("/os-security-groups/{id}")
@SelectJson("security_group")
@ -87,6 +90,7 @@ public interface SecurityGroupAsyncApi {
/**
* @see SecurityGroupApi#createWithDescription
*/
@Named("securitygroup:create")
@POST
@Path("/os-security-groups")
@SelectJson("security_group")
@ -100,6 +104,7 @@ public interface SecurityGroupAsyncApi {
/**
* @see SecurityGroupApi#delete
*/
@Named("securitygroup:delete")
@DELETE
@Path("/os-security-groups/{id}")
@Fallback(FalseOnNotFoundOr404.class)
@ -109,6 +114,7 @@ public interface SecurityGroupAsyncApi {
/**
* @see SecurityGroupApi#createRuleAllowingCidrBlock
*/
@Named("securitygroup:create")
@POST
@Path("/os-security-group-rules")
@SelectJson("security_group_rule")
@ -123,6 +129,7 @@ public interface SecurityGroupAsyncApi {
/**
* @see SecurityGroupApi#createRuleOnSecurityGroupToCidrBlock
*/
@Named("securitygroup:create")
@POST
@Path("/os-security-group-rules")
@SelectJson("security_group_rule")
@ -137,6 +144,7 @@ public interface SecurityGroupAsyncApi {
/**
* @see SecurityGroupApi#deleteRule
*/
@Named("securitygroup:delete")
@DELETE
@Path("/os-security-group-rules/{security_group_rule_ID}")
@Fallback(FalseOnNotFoundOr404.class)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
@ -58,6 +59,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#suspend(String)
*/
@Named("serveradmin:suspend")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"suspend\":null}")
@ -67,6 +69,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#resume(String)
*/
@Named("serveradmin:resume")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"resume\":null}")
@ -76,6 +79,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#migrate(String)
*/
@Named("serveradmin:migrate")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"migrate\":null}")
@ -85,6 +89,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#lock(String)
*/
@Named("serveradmin:lock")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"lock\":null}")
@ -94,6 +99,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#unlock(String)
*/
@Named("serveradmin:unlock")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"unlock\":null}")
@ -103,6 +109,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#resetNetwork(String)
*/
@Named("serveradmin:resetnetwork")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"resetNetwork\":null}")
@ -112,6 +119,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#createBackup
*/
@Named("serveradmin:createbackup")
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@ -127,6 +135,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#pause(String)
*/
@Named("serveradmin:pause")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"pause\":null}")
@ -136,6 +145,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#unpause(String)
*/
@Named("serveradmin:unpause")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"unpause\":null}")
@ -145,6 +155,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#injectNetworkInfo(String)
*/
@Named("serveradmin:injectnetwork")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Payload("{\"injectNetworkInfo\":null}")
@ -154,6 +165,7 @@ public interface ServerAdminAsyncApi {
/**
* @see ServerAdminApi#liveMigrate(String)
*/
@Named("serveradmin:livemigrate")
@POST
@Produces(MediaType.APPLICATION_JSON)
@Fallback(FalseOnNotFoundOr404.class)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -52,6 +53,7 @@ public interface ServerWithSecurityGroupsAsyncApi {
/**
* @see ServerWithSecurityGroupsApi#get(String)
*/
@Named("server:get")
@GET
@SelectJson("server")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -56,6 +57,7 @@ public interface SimpleTenantUsageAsyncApi {
/**
* @see SimpleTenantUsageApi#list()
*/
@Named("tenantusage:list")
@GET
@Path("/os-simple-tenant-usage")
@SelectJson("tenant_usages")
@ -66,6 +68,7 @@ public interface SimpleTenantUsageAsyncApi {
/**
* @see SimpleTenantUsageApi#get(String)
*/
@Named("tenantusage:get")
@GET
@Path("/os-simple-tenant-usage/{id}")
@SelectJson("tenant_usage")

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -50,6 +51,7 @@ public interface VirtualInterfaceAsyncApi {
/**
* @see VirtualInterfaceApi#listOnServer(String)
*/
@Named("virtualinterface:list")
@GET
@SelectJson("virtual_interfaces")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -65,6 +66,7 @@ public interface VolumeAsyncApi {
*
* @return the list of volumes
*/
@Named("volume:list")
@GET
@Path("/os-volumes")
@SelectJson("volumes")
@ -77,6 +79,7 @@ public interface VolumeAsyncApi {
*
* @return the list of volumes.
*/
@Named("volume:list")
@GET
@Path("/os-volumes/detail")
@SelectJson("volumes")
@ -89,6 +92,7 @@ public interface VolumeAsyncApi {
*
* @return details of a specific volume.
*/
@Named("volume:get")
@GET
@Path("/os-volumes/{id}")
@SelectJson("volume")
@ -101,6 +105,7 @@ public interface VolumeAsyncApi {
*
* @return the new Snapshot
*/
@Named("volume:create")
@POST
@Path("/os-volumes")
@SelectJson("volume")
@ -114,6 +119,7 @@ public interface VolumeAsyncApi {
*
* @return true if successful
*/
@Named("volume:delete")
@DELETE
@Path("/os-volumes/{id}")
@Consumes(MediaType.APPLICATION_JSON)
@ -127,6 +133,7 @@ public interface VolumeAsyncApi {
* @deprecated To be removed in jclouds 1.7
* @see VolumeAttachmentApi#listAttachmentsOnServer(String)
*/
@Named("volume:listattachments")
@GET
@Path("/servers/{server_id}/os-volume_attachments")
@SelectJson("volumeAttachments")
@ -141,6 +148,7 @@ public interface VolumeAsyncApi {
* @deprecated To be removed in jclouds 1.7
* @see VolumeAttachmentApi#getAttachmentForVolumeOnServer(String, String)
*/
@Named("volume:getattachments")
@GET
@Path("/servers/{server_id}/os-volume_attachments/{id}")
@SelectJson("volumeAttachment")
@ -156,6 +164,7 @@ public interface VolumeAsyncApi {
* @deprecated To be removed in jclouds 1.7
* @see VolumeAttachmentApi#attachVolumeToServerAsDevice(String, String, String)
*/
@Named("volume:attach")
@POST
@Path("/servers/{server_id}/os-volume_attachments")
@SelectJson("volumeAttachment")
@ -172,6 +181,7 @@ public interface VolumeAsyncApi {
* @deprecated To be removed in jclouds 1.7
* @see VolumeAttachmentApi#detachVolumeFromServer(String, String)
*/
@Named("volume:detach")
@DELETE
@Path("/servers/{server_id}/os-volume_attachments/{id}")
@Consumes(MediaType.APPLICATION_JSON)
@ -183,6 +193,7 @@ public interface VolumeAsyncApi {
*
* @return the list of snapshots
*/
@Named("volume:listsnapshots")
@GET
@Path("/os-snapshots")
@SelectJson("snapshots")
@ -195,6 +206,7 @@ public interface VolumeAsyncApi {
*
* @return the list of snapshots
*/
@Named("volume:listsnapshot")
@GET
@Path("/os-snapshots/detail")
@SelectJson("snapshots")
@ -207,6 +219,7 @@ public interface VolumeAsyncApi {
*
* @return details of a specific snapshot.
*/
@Named("volume:getsnapshot")
@GET
@Path("/os-snapshots/{id}")
@SelectJson("snapshot")
@ -219,6 +232,7 @@ public interface VolumeAsyncApi {
*
* @return the new Snapshot
*/
@Named("volume:createsnapshot")
@POST
@Path("/os-snapshots")
@SelectJson("snapshot")
@ -232,6 +246,7 @@ public interface VolumeAsyncApi {
*
* @return true if successful
*/
@Named("volume:deletesnapshot")
@DELETE
@Path("/os-snapshots/{id}")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.extensions;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -57,6 +58,7 @@ public interface VolumeAttachmentAsyncApi {
/**
* @see VolumeAttachmentApi#listAttachmentsOnServer(String)
*/
@Named("volumeattachment:list")
@GET
@Path("/servers/{server_id}/os-volume_attachments")
@SelectJson("volumeAttachments")
@ -68,6 +70,7 @@ public interface VolumeAttachmentAsyncApi {
/**
* @see VolumeAttachmentApi#getAttachmentForVolumeOnServer(String, String)
*/
@Named("volumeattachment:get")
@GET
@Path("/servers/{server_id}/os-volume_attachments/{id}")
@SelectJson("volumeAttachment")
@ -80,6 +83,7 @@ public interface VolumeAttachmentAsyncApi {
/**
* @see VolumeAttachmentApi#attachVolumeToServerAsDevice(String, String, String)
*/
@Named("volumeattachment:attach")
@POST
@Path("/servers/{server_id}/os-volume_attachments")
@SelectJson("volumeAttachment")
@ -94,6 +98,7 @@ public interface VolumeAttachmentAsyncApi {
/**
* @see VolumeAttachmentApi#detachVolumeFromServer(String, String)
*/
@Named("volumeattachment:detach")
@DELETE
@Path("/servers/{server_id}/os-volume_attachments/{id}")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.nova.v2_0.extensions;
import java.util.Map;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -69,6 +70,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#list
*/
@Named("volumetype:list")
@GET
@SelectJson("volume_types")
@Fallback(EmptyFluentIterableOnNotFoundOr404.class)
@ -78,6 +80,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#get
*/
@Named("volumetype:get")
@GET
@Path("/{id}")
@SelectJson("volume_type")
@ -87,6 +90,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#create
*/
@Named("volumetype:create")
@POST
@SelectJson("volume_type")
@Produces(MediaType.APPLICATION_JSON)
@ -96,6 +100,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#delete
*/
@Named("volumetype:delete")
@DELETE
@Path("/{id}")
@Fallback(FalseOnNotFoundOr404.class)
@ -104,6 +109,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#getExtraSpecs(String)
*/
@Named("volumetype:getextraspecs")
@GET
@SelectJson("extra_specs")
@Path("/{id}/extra_specs")
@ -113,6 +119,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#updateExtraSpecs(String, java.util.Map)
*/
@Named("volumetype:udpateextraspecs")
@POST
@Path("/{id}/extra_specs")
@Produces(MediaType.APPLICATION_JSON)
@ -123,6 +130,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#getExtraSpec(String, String)
*/
@Named("volumetype:getextraspec")
@GET
@Path("/{id}/extra_specs/{key}")
@Unwrap
@ -132,6 +140,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#updateExtraSpec(String, String, String)
*/
@Named("volumetype:updateextraspec")
@PUT
@Path("/{id}/extra_specs/{key}")
@Produces(MediaType.APPLICATION_JSON)
@ -144,6 +153,7 @@ public interface VolumeTypeAsyncApi {
/**
* @see VolumeTypeApi#deleteExtraSpec(String, String)
*/
@Named("volumetype:deleteextraspec")
@DELETE
@Path("/{id}/extra_specs/{key}")
@Fallback(FalseOnNotFoundOr404.class)

View File

@ -18,6 +18,7 @@
*/
package org.jclouds.openstack.nova.v2_0.features;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
@ -60,6 +61,7 @@ public interface FlavorAsyncApi {
/**
* @see FlavorApi#list()
*/
@Named("flavor:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/flavors")
@ -70,6 +72,7 @@ public interface FlavorAsyncApi {
ListenableFuture<? extends PagedIterable<? extends Resource>> list();
/** @see FlavorApi#list(PaginationOptions) */
@Named("flavor:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/flavors")
@ -81,6 +84,7 @@ public interface FlavorAsyncApi {
/**
* @see FlavorApi#listInDetail()
*/
@Named("flavor:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/flavors/detail")
@ -91,6 +95,7 @@ public interface FlavorAsyncApi {
ListenableFuture<? extends PagedIterable<? extends Flavor>> listInDetail();
/** @see FlavorApi#listInDetail(PaginationOptions) */
@Named("flavor:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/flavors/detail")
@ -102,6 +107,7 @@ public interface FlavorAsyncApi {
/**
* @see FlavorApi#get
*/
@Named("flavor:get")
@GET
@SelectJson("flavor")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.nova.v2_0.features;
import java.util.Map;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -69,6 +70,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#list()
*/
@Named("image:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/images")
@ -79,6 +81,7 @@ public interface ImageAsyncApi {
ListenableFuture<? extends PagedIterable<? extends Resource>> list();
/** @see ImageApi#list(PaginationOptions) */
@Named("image:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/images")
@ -90,6 +93,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#listInDetail()
*/
@Named("image:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/images/detail")
@ -100,6 +104,7 @@ public interface ImageAsyncApi {
ListenableFuture<? extends PagedIterable<? extends Image>> listInDetail();
/** @see ImageApi#listInDetail(PaginationOptions) */
@Named("image:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/images/detail")
@ -111,6 +116,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#get
*/
@Named("image:get")
@GET
@SelectJson("image")
@Consumes(MediaType.APPLICATION_JSON)
@ -121,6 +127,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#delete
*/
@Named("image:delete")
@DELETE
@Consumes(MediaType.APPLICATION_JSON)
@Path("/images/{id}")
@ -130,6 +137,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#getMetadata
*/
@Named("image:getmetadata")
@GET
@SelectJson("metadata")
@Path("/images/{id}/metadata")
@ -140,6 +148,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#setMetadata
*/
@Named("image:setmetadata")
@PUT
@SelectJson("metadata")
@Path("/images/{id}/metadata")
@ -152,6 +161,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#updateMetadata
*/
@Named("image:updatemetadata")
@POST
@SelectJson("metadata")
@Path("/images/{id}/metadata")
@ -164,6 +174,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#getMetadata
*/
@Named("image:getmetadata")
@GET
@Path("/images/{id}/metadata/{key}")
@Consumes(MediaType.APPLICATION_JSON)
@ -174,6 +185,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#updateMetadata
*/
@Named("image:updatemetadata")
@PUT
@Path("/images/{id}/metadata/{key}")
@Consumes(MediaType.APPLICATION_JSON)
@ -187,6 +199,7 @@ public interface ImageAsyncApi {
/**
* @see ImageApi#deleteMetadata
*/
@Named("image:deletemetadata")
@DELETE
@Consumes
@Path("/images/{id}/metadata/{key}")

View File

@ -20,6 +20,7 @@ package org.jclouds.openstack.nova.v2_0.features;
import java.util.Map;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -83,6 +84,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#list()
*/
@Named("server:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/servers")
@ -93,6 +95,7 @@ public interface ServerAsyncApi {
ListenableFuture<? extends PagedIterable<? extends Resource>> list();
/** @see ServerApi#list(PaginationOptions) */
@Named("server:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/servers")
@ -104,6 +107,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#listInDetail()
*/
@Named("server:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/servers/detail")
@ -114,6 +118,7 @@ public interface ServerAsyncApi {
ListenableFuture<? extends PagedIterable<? extends Server>> listInDetail();
/** @see ServerApi#listInDetail(PaginationOptions) */
@Named("server:list")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@Path("/servers/detail")
@ -125,6 +130,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#get
*/
@Named("server:get")
@GET
@SelectJson("server")
@Consumes(MediaType.APPLICATION_JSON)
@ -135,6 +141,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#delete
*/
@Named("server:delete")
@DELETE
@Consumes
@Fallback(FalseOnNotFoundOr404.class)
@ -144,6 +151,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#start
*/
@Named("server:start")
@POST
@Path("/servers/{id}/action")
@Consumes
@ -154,6 +162,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#stop
*/
@Named("server:stop")
@POST
@Path("/servers/{id}/action")
@Consumes
@ -164,6 +173,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#reboot
*/
@Named("server:reboot")
@POST
@Path("/servers/{id}/action")
@Consumes
@ -174,6 +184,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#resize
*/
@Named("server:resize")
@POST
@Path("/servers/{id}/action")
@Consumes
@ -184,6 +195,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#confirmResize
*/
@Named("server:resize")
@POST
@Path("/servers/{id}/action")
@Consumes
@ -194,6 +206,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#revertResize
*/
@Named("server:resize")
@POST
@Path("/servers/{id}/action")
@Consumes
@ -204,6 +217,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#create
*/
@Named("server:create")
@POST
@Unwrap
@Consumes(MediaType.APPLICATION_JSON)
@ -215,6 +229,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#rebuild
*/
@Named("server:rebuild")
@POST
@Path("/servers/{id}/action")
@Consumes
@ -224,6 +239,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#changeAdminPass
*/
@Named("server:changeadminpass")
@POST
@Path("/servers/{id}/action")
@Consumes
@ -234,6 +250,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#rename
*/
@Named("server:rename")
@PUT
@Path("/servers/{id}")
@Consumes
@ -244,6 +261,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#createImageFromServer
*/
@Named("server:create")
@POST
@Path("/servers/{id}/action")
@Consumes(MediaType.APPLICATION_JSON)
@ -256,6 +274,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#getMetadata
*/
@Named("server:getmetadata")
@GET
@SelectJson("metadata")
@Path("/servers/{id}/metadata")
@ -266,6 +285,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#setMetadata
*/
@Named("server:setmetadata")
@PUT
@SelectJson("metadata")
@Path("/servers/{id}/metadata")
@ -279,6 +299,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#updateMetadata
*/
@Named("server:updatemetadata")
@POST
@SelectJson("metadata")
@Path("/servers/{id}/metadata")
@ -292,6 +313,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#getMetadata
*/
@Named("server:getmetadata")
@GET
@Path("/servers/{id}/metadata/{key}")
@Consumes(MediaType.APPLICATION_JSON)
@ -302,6 +324,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#updateMetadata
*/
@Named("server:updatemetadata")
@PUT
@Path("/servers/{id}/metadata/{key}")
@Consumes(MediaType.APPLICATION_JSON)
@ -314,6 +337,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#deleteMetadata
*/
@Named("server:deletemetadata")
@DELETE
@Consumes
@Path("/servers/{id}/metadata/{key}")
@ -324,6 +348,7 @@ public interface ServerAsyncApi {
/**
* @see ServerApi#getDiagnostics
*/
@Named("server:getdiagnostics")
@GET
@Path("/servers/{id}/diagnostics")
@Consumes(MediaType.APPLICATION_JSON)

View File

@ -21,6 +21,7 @@ package org.jclouds.openstack.swift;
import java.util.Map;
import java.util.Set;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
@ -83,6 +84,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#getAccountStatistics
*/
@Named("swift:getaccountstats")
@HEAD
@Path("/")
@Consumes(MediaType.WILDCARD)
@ -92,6 +94,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#listContainers
*/
@Named("swift:listcontainers")
@GET
@Consumes(MediaType.APPLICATION_JSON)
@QueryParams(keys = "format", values = "json")
@ -101,6 +104,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#getContainerMetadata
*/
@Named("swift:getcontainermetadata")
@Beta
@HEAD
@Path("/{container}")
@ -112,6 +116,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#setContainerMetadata
*/
@Named("swift:setcontainermetadata")
@POST
@Path("/{container}")
@Fallback(FalseOnContainerNotFound.class)
@ -121,6 +126,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#deleteContainerMetadata
*/
@Named("swift:deletecontainermetadata")
@POST
@Path("/{container}")
@Fallback(FalseOnContainerNotFound.class)
@ -130,6 +136,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#createContainer
*/
@Named("swift:createcontainer")
@PUT
@Path("/{container}")
ListenableFuture<Boolean> createContainer(@PathParam("container") String container,
@ -138,6 +145,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#setObjectInfo
*/
@Named("swift:setobjectinfo")
@POST
@Path("/{container}/{name}")
ListenableFuture<Boolean> setObjectInfo(@PathParam("container") String container,
@ -147,6 +155,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#createContainer
*/
@Named("swift:createcontainer")
@PUT
@Path("/{container}")
ListenableFuture<Boolean> createContainer(@PathParam("container") String container);
@ -154,6 +163,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#deleteContainerIfEmpty
*/
@Named("swift:deletecontainerifempty")
@DELETE
@Fallback(TrueOn404FalseOn409.class)
@Path("/{container}")
@ -162,6 +172,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#listObjects
*/
@Named("swift:listobjects")
@GET
@QueryParams(keys = "format", values = "json")
@ResponseParser(ParseObjectInfoListFromJsonResponse.class)
@ -172,6 +183,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#containerExists
*/
@Named("swift:containerexists")
@HEAD
@Path("/{container}")
@Consumes(MediaType.WILDCARD)
@ -181,6 +193,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#putObject
*/
@Named("swift:putobject")
@PUT
@Path("/{container}/{name}")
@ResponseParser(ParseETagHeader.class)
@ -190,6 +203,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#copyObject
*/
@Named("swift:copyobject")
@PUT
@Path("/{destinationContainer}/{destinationObject}")
@Headers(keys = SwiftHeaders.OBJECT_COPY_FROM, values = "/{sourceContainer}/{sourceObject}")
@ -202,6 +216,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#getObject
*/
@Named("swift:getobject")
@GET
@ResponseParser(ParseObjectFromHeadersAndHttpContent.class)
@Fallback(NullOnKeyNotFound.class)
@ -213,6 +228,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#getObjectInfo
*/
@Named("swift:getobjectinfo")
@HEAD
@ResponseParser(ParseObjectInfoFromHeaders.class)
@Fallback(NullOnKeyNotFound.class)
@ -224,6 +240,7 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#objectExists
*/
@Named("swift:objectexists")
@HEAD
@Fallback(FalseOnKeyNotFound.class)
@Path("/{container}/{name}")
@ -234,12 +251,14 @@ public interface CommonSwiftAsyncClient {
/**
* @see CommonSwiftClient#removeObject
*/
@Named("swift:removeobject")
@DELETE
@Fallback(VoidOnNotFoundOr404.class)
@Path("/{container}/{name}")
ListenableFuture<Void> removeObject(@PathParam("container") String container,
@PathParam("name") String name);
@Named("swift:putobjectmanifest")
@PUT
@Path("/{container}/{name}")
@ResponseParser(ParseETagHeader.class)

View File

@ -27,6 +27,7 @@ import org.jclouds.rest.annotations.Endpoint;
import org.jclouds.rest.annotations.RequestFilters;
import org.jclouds.rest.annotations.ResponseParser;
import javax.inject.Named;
import javax.ws.rs.Consumes;
import javax.ws.rs.HEAD;
import javax.ws.rs.HeaderParam;
@ -45,6 +46,7 @@ public interface TemporaryUrlKeyAsyncApi {
/**
* @see TemporaryUrlKeyApi#getTemporaryUrlKey
*/
@Named("tempurlkey:get")
@HEAD
@Path("/")
@Consumes(MediaType.WILDCARD)
@ -54,6 +56,7 @@ public interface TemporaryUrlKeyAsyncApi {
/**
* @see TemporaryUrlKeyApi#setTemporaryUrlKey
*/
@Named("tempurlkey:set")
@POST
@Path("/")
ListenableFuture<Void> setTemporaryUrlKey(@HeaderParam(SwiftHeaders.ACCOUNT_TEMPORARY_URL_KEY) String key);