1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00

Add the implementation for #delete_server services.

This commit is contained in:
Rupak Ganguly 2011-06-22 12:31:14 -04:00
parent 79a3f96c34
commit f099070a4e

View file

@ -0,0 +1,43 @@
module Fog
module HP
class Compute
class Real
# Delete an existing server
#
# ==== Parameters
# * id<~Integer> - Id of server to delete
#
def delete_server(server_id)
request(
:expects => 202,
:method => 'DELETE',
:path => "servers/#{server_id}"
)
end
end
class Mock
def delete_server(server_id)
response = Excon::Response.new
if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
if server['status'] == 'BUILD'
response.status = 409
raise(Excon::Errors.status_error({:expects => 202}, response))
else
self.data[:last_modified][:servers].delete(server_id)
self.data[:servers].delete(server_id)
response.status = 202
end
response
else
raise Fog::HP::Compute::NotFound
end
end
end
end
end
end