Sha256: d8b56c8946c8df34426b81a96b92e66b3aded605d090c6cbcab54dd97bcee0b9
Contents?: true
Size: 1.77 KB
Versions: 2
Compression:
Stored size: 1.77 KB
Contents
module Fog module VcloudDirector class Compute class Real # Delete a vApp or VM. # # This operation is asynchronous and returns a task that you can # monitor to track the progress of the request. # # @param [String] id Object identifier of the vApp. # @return [Excon::Response] # * body<~Hash>: # # @raise [Fog::VcloudDirector::Compute::BadRequest] # # @see http://pubs.vmware.com/vcd-51/topic/com.vmware.vcloud.api.reference.doc_51/doc/operations/DELETE-VApp.html # @since vCloud API version 0.9 def delete_vapp(id) request( :expects => 202, :method => 'DELETE', :parser => Fog::ToHashDocument.new, :path => "vApp/#{id}" ) end end class Mock def delete_vapp(id) unless data[:vapps][id] raise Fog::VcloudDirector::Compute::Forbidden.new( 'This operation is denied.' ) end owner = { :href => make_href("vApp/#{id}"), :type => 'application/vnd.vmware.vcloud.vApp+xml' } task_id = enqueue_task( "Deleting Virtual Application (#{id})", 'vdcDeleteVapp', owner, :on_success => lambda do data[:vapps].delete(id) end ) body = { :xmlns => xmlns, :xmlns_xsi => xmlns_xsi, :xsi_schemaLocation => xsi_schema_location, }.merge(task_body(task_id)) Excon::Response.new( :status => 202, :headers => {'Content-Type' => "#{body[:type]};version=#{api_version}"}, :body => body ) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
fog-vcloud-director-0.3.1 | lib/fog/vcloud_director/requests/compute/delete_vapp.rb |
fog-vcloud-director-0.3.0 | lib/fog/vcloud_director/requests/compute/delete_vapp.rb |