/** * @see TemplateClient#listTemplatePermissions */ @Named("listTemplatePermissions") @GET @QueryParams(keys = { "command", "listAll" }, values = { "listTemplatePermissions", "true" }) @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<Set<TemplatePermission>> listTemplatePermissions(@QueryParam("id") String id, AccountInDomainOptions... options);
/** * @see TemplateClient#extractTemplate */ @Named("extractTemplate") @GET @QueryParams(keys = "command", values = "extractTemplate") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> extractTemplate(@QueryParam("id") String id, @QueryParam("mode") ExtractMode mode, @QueryParam("zoneid") String zoneId, ExtractTemplateOptions... options); }
/** * @see CloudServersClient#listAddresses */ @GET @Unwrap @Consumes(MediaType.APPLICATION_JSON) @QueryParams(keys = "format", values = "json") @Path("/servers/{id}/ips") ListenableFuture<Addresses> getAddresses(@PathParam("id") int serverId);
/** * @see VolumeClient#createVolumeFromDiskOfferingInZone(String, String, String) */ @Named("createVolume") @GET @QueryParams(keys = "command", values = "createVolume") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> createVolumeFromDiskOfferingInZone(@QueryParam("name") String name, @QueryParam("diskofferingid") String diskOfferingId, @QueryParam("zoneid") String zoneId);
/** * @see FirewallClient#createPortForwardingRuleForVirtualMachine */ @Named("createPortForwardingRule") @GET @QueryParams(keys = "command", values = "createPortForwardingRule") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> createPortForwardingRuleForVirtualMachine( @QueryParam("ipaddressid") String ipAddressId, @QueryParam("protocol") PortForwardingRule.Protocol protocol, @QueryParam("publicport") int publicPort, @QueryParam("virtualmachineid") String virtualMachineId, @QueryParam("privateport") int privatePort);
/** * @see VolumeClient#createVolumeFromCustomDiskOfferingInZone(String, String, String, int) */ @GET @QueryParams(keys = "command", values = "createVolume") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> createVolumeFromCustomDiskOfferingInZone(@QueryParam("name") String name, @QueryParam("diskofferingid") String diskOfferingId, @QueryParam("zoneid") String zoneId, @QueryParam("size") int size);
/** * @see TemplateClient#copyTemplate */ @Named("copyTemplate") @GET @QueryParams(keys = "command", values = "copyTemplate") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> copyTemplateToZone(@QueryParam("id") String id, @QueryParam("sourcezoneid") String sourceZoneId, @QueryParam("destzoneid") String destZoneId);
/** * @see VolumeClient#createVolumeFromSnapshotInZone(String, String, String) */ @Named("createVolume") @GET @QueryParams(keys = "command", values = "createVolume") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> createVolumeFromSnapshotInZone(@QueryParam("name") String name, @QueryParam("snapshotid") String snapshotId, @QueryParam("zoneid") String zoneId);
/** * @see FirewallClient#createFirewallRuleForIpAndProtocol */ @Named("createFirewallRule") @GET @QueryParams(keys = "command", values = "createFirewallRule") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> createFirewallRuleForIpAndProtocol(@QueryParam("ipaddressid") String ipAddressId, @QueryParam("protocol") FirewallRule.Protocol protocol, CreateFirewallRuleOptions... options);
/** * @see FirewallApi#createFirewallRuleForIpAndProtocol */ @Named("createFirewallRule") @GET @QueryParams(keys = "command", values = "createFirewallRule") @Unwrap @Consumes(MediaType.APPLICATION_JSON) AsyncCreateResponse createFirewallRuleForIpAndProtocol(@QueryParam("ipaddressid") String ipAddressId, @QueryParam("protocol") FirewallRule.Protocol protocol, CreateFirewallRuleOptions... options);
/** * @see FirewallApi#createEgressFirewallRuleForNetworkProtocolAndPort */ @Named("createEgressFirewallRule") @GET @QueryParams(keys = "command", values = "createEgressFirewallRule") @Unwrap @Consumes(MediaType.APPLICATION_JSON) AsyncCreateResponse createEgressFirewallRuleForNetworkProtocolAndPort(@QueryParam("networkId") String networkId, @QueryParam("protocol") FirewallRule.Protocol protocol, @QueryParam("startPort") int startPort, @QueryParam("endPort") int endPort);
/** * Create flavor according to the provided object * * @param flavor - flavor object * @return newly created flavor */ @Named("flavor:create") @POST @Unwrap @Produces(MediaType.APPLICATION_JSON) Flavor create(@WrapWith("flavor") Flavor flavor);
/** * @see TemplateClient#deleteTemplate */ @Named("deleteTemplate") @GET @QueryParams(keys = "command", values = "deleteTemplate") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> deleteTemplate(@QueryParam("id") String id, DeleteTemplateOptions... options);
/** * @see VolumeTypeApi#getExtraSpec(String, String) */ @Named("volumetype:getextraspec") @GET @Path("/{id}/extra_specs/{key}") @Unwrap @Fallback(NullOnNotFoundOr404.class) ListenableFuture<String> getExtraSpec(@PathParam("id") String id, @PathParam("key") String key);
/** * Detaches any ISO file (if any) currently attached to a virtual machine. * * @param vmId The ID of the virtual machine * @return an asynchronous job response. */ @Named("detachIso") @GET @Consumes(MediaType.APPLICATION_JSON) @QueryParams(keys = "command", values = "detachIso") @Unwrap ListenableFuture<AsyncCreateResponse> detachISO(@QueryParam("virtualmachineid") String vmId);
/** * @see CloudServersClient#listBackupSchedule */ @GET @Unwrap @Consumes(MediaType.APPLICATION_JSON) @QueryParams(keys = "format", values = "json") @Path("/servers/{id}/backup_schedule") ListenableFuture<BackupSchedule> getBackupSchedule(@PathParam("id") int serverId);
/** * @see NATClient#createIPForwardingRule */ @Named("createIpForwardingRule") @GET @QueryParams(keys = "command", values = "createIpForwardingRule") @Unwrap @Consumes(MediaType.APPLICATION_JSON) ListenableFuture<AsyncCreateResponse> createIPForwardingRule(@QueryParam("ipaddressid") String IPAddressId, @QueryParam("protocol") String protocol, @QueryParam("startport") int startPort, CreateIPForwardingRuleOptions... options);
/** * @see FlavorApi#create */ @Named("flavor:create") @POST @Unwrap @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) @Path("/flavors") ListenableFuture<? extends Flavor> create(@WrapWith("flavor") Flavor flavor);
/** * @see CloudServersClient#getImage */ @GET @Unwrap @Consumes(MediaType.APPLICATION_JSON) @Fallback(NullOnNotFoundOr404.class) @QueryParams(keys = "format", values = "json") @Path("/images/{id}") ListenableFuture<Image> getImage(@PathParam("id") int id);
/** * @see DomainAccountAsyncClient#disableAccount */ @Named("disableAccount") @GET @QueryParams(keys = "command", values = "disableAccount") @Unwrap @Consumes(MediaType.APPLICATION_JSON) @Fallback(NullOnNotFoundOr404.class) ListenableFuture<AsyncCreateResponse> disableAccount(@QueryParam("account") String accountName, @QueryParam("domainid") String domainId, @QueryParam("lock") boolean onlyLock);