Package org.jclouds.glesys.features
Interface ServerApi
public interface ServerApi
Provides synchronous access to Server.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionclone
(String serverid, String hostname, CloneServerOptions... options) Clone a servercreateWithHostnameAndRootPassword
(ServerSpec serverSpec, String hostname, String rootPassword, CreateServerOptions... options) Create a new servervoid
destroy
(String id, DestroyServerOptions keepIp) Destroy a serverGet detailed information about a server such as hostname, hardware configuration (cpu, memory and disk), ip addresses, cost, transfer, os and more.Get information about the OS templates availablegetConsole
(String id) Get information about how to connect to a server via VNCGet detailed information about a server's limits (for OpenVZ only).getResourceUsage
(String id, String resource, String resolution) Return resource usage over time for servergetStatus
(String id, ServerStatusOptions... options) Get detailed information about a server status including up-time and hardware usage (cpu, disk, memory and bandwidth)hard stop a servercom.google.common.collect.FluentIterable
<Server> list()
Get a list of all servers on this account.com.google.common.collect.FluentIterable
<OSTemplate> Get information about valid arguments to #createServer for each platformReboot a serverresetLimit
(String id, String type) Reset the fail count for a server limit (for OpenVZ only).resetPassword
(String id, String password) Reset the root password of a serverStart a serverStop a serverupdate
(String serverid, UpdateServerOptions options) Update the configuration of a server
-
Method Details
-
list
@Named("server:list") @POST @Path("/server/list/format/json") @Consumes("application/json") com.google.common.collect.FluentIterable<Server> list()Get a list of all servers on this account.- Returns:
- an account's associated server objects.
-
get
@Named("server:details") @POST @Path("/server/details/format/json") @Consumes("application/json") ServerDetails get(@FormParam("serverid") String id) Get detailed information about a server such as hostname, hardware configuration (cpu, memory and disk), ip addresses, cost, transfer, os and more.- Parameters:
id
- id of the server- Returns:
- server or null if not found
-
getStatus
@Named("server:status") @POST @Path("/server/status/format/json") @Consumes("application/json") ServerStatus getStatus(@FormParam("serverid") String id, ServerStatusOptions... options) Get detailed information about a server status including up-time and hardware usage (cpu, disk, memory and bandwidth)- Parameters:
id
- id of the serveroptions
- optional parameters- Returns:
- the status of the server or null if not found
-
getLimits
@Named("server:limits") @POST @Path("/server/limits/format/json") @Consumes("application/json") SortedMap<String,ServerLimit> getLimits(@FormParam("serverid") String id) Get detailed information about a server's limits (for OpenVZ only).- Parameters:
id
- id of the server- Returns:
- the requested information about the server or null if not found
-
getConsole
@Named("server:console") @POST @Path("/server/console/format/json") @Consumes("application/json") Console getConsole(@FormParam("serverid") String id) Get information about how to connect to a server via VNC- Parameters:
id
- id of the server- Returns:
- the requested information about the server or null if not found
-
getAllowedArgumentsForCreateByPlatform
@Named("server:allowedarguments") @GET @Path("/server/allowedarguments/format/json") @Consumes("application/json") Map<String,AllowedArgumentsForCreateServer> getAllowedArgumentsForCreateByPlatform()Get information about the OS templates available- Returns:
- the set of information about each template
-
listTemplates
@Named("server:templates") @GET @Path("/server/templates/format/json") @Consumes("application/json") com.google.common.collect.FluentIterable<OSTemplate> listTemplates()Get information about valid arguments to #createServer for each platform- Returns:
- a map of argument lists, keyed on platform
-
resetLimit
@Named("server:resetlimit") @POST @Path("/server/resetlimit/format/json") @Consumes("application/json") SortedMap<String,ServerLimit> resetLimit(@FormParam("serverid") String id, @FormParam("type") String type) Reset the fail count for a server limit (for OpenVZ only).- Parameters:
id
- id of the servertype
- the type of limit to reset
-
reboot
@Named("server:reboot") @POST @Path("/server/reboot/format/json") @Consumes("application/json") ServerDetails reboot(@FormParam("serverid") String id) Reboot a server- Parameters:
id
- id of the server
-
start
@Named("server:start") @POST @Path("/server/start/format/json") @Consumes("application/json") ServerDetails start(@FormParam("serverid") String id) Start a server- Parameters:
id
- id of the server
-
stop
@Named("server:stop") @POST @Path("/server/stop/format/json") @Consumes("application/json") ServerDetails stop(@FormParam("serverid") String id) Stop a server- Parameters:
id
- id of the server
-
hardStop
@Named("server:stop:hard") @POST @Path("/server/stop/format/json") @Consumes("application/json") ServerDetails hardStop(@FormParam("serverid") String id) hard stop a server- Parameters:
id
- id of the server
-
createWithHostnameAndRootPassword
@Named("server:create") @POST @Path("/server/create/format/json") @Consumes("application/json") ServerDetails createWithHostnameAndRootPassword(ServerSpec serverSpec, String hostname, String rootPassword, CreateServerOptions... options) Create a new server- Parameters:
hostname
- the host name of the new serverrootPassword
- the root password to useoptions
- optional settings ex. description
-
clone
@Named("server:clone") @POST @Path("/server/clone/format/json") @Consumes("application/json") ServerDetails clone(@FormParam("serverid") String serverid, @FormParam("hostname") String hostname, CloneServerOptions... options) Clone a server- Parameters:
serverid
- the serverId of the server to clonehostname
- the new host name of the cloned serveroptions
- the settings to change
-
update
@Named("server:edit") @POST @Path("/server/edit/format/json") @Consumes("application/json") ServerDetails update(@FormParam("serverid") String serverid, UpdateServerOptions options) Update the configuration of a server- Parameters:
serverid
- the serverId of the server to editoptions
- the settings to change
-
destroy
@Named("server:destroy") @POST @Path("/server/destroy/format/json") void destroy(@FormParam("serverid") String id, DestroyServerOptions keepIp) Destroy a server- Parameters:
id
- the id of the serverkeepIp
- if DestroyServerOptions.keepIp(true) the servers ip will be retained for use in your GleSYS account
-
resetPassword
@Named("server:resetpassword") @POST @Path("/server/resetpassword/format/json") @Consumes("application/json") ServerDetails resetPassword(@FormParam("serverid") String id, @FormParam("rootpassword") String password) Reset the root password of a server- Parameters:
id
- the id of the serverpassword
- the new password to use
-
getResourceUsage
@Named("server:resourceusage") @POST @Path("/server/resourceusage/format/json") @Consumes("application/json") ResourceUsage getResourceUsage(@FormParam("serverid") String id, @FormParam("resource") String resource, @FormParam("resolution") String resolution) Return resource usage over time for server- Parameters:
id
- the id of the serverresource
- the name of the resource to retrieve usage information for (e.g. "cpuusage")resolution
- the time-period to extract data for (one of "minute", "hour" or "day)
-