Module: DeltacloudVM::Client::Methods::Common
- Included in:
- Connection, Firewall, Instance, StorageVolume
- Defined in:
- lib/deltacloud_vm/client/methods/common.rb
Instance Method Summary collapse
-
#create_resource(resource_name, create_opts = {}) ⇒ Object
A generic method for creating a new resources.
-
#destroy_resource(resource_name, resource_id) ⇒ Object
A generic method for destroying resources.
Instance Method Details
#create_resource(resource_name, create_opts = {}) ⇒ Object
A generic method for creating a new resources
-
resource_name -> A resource name to create (eg. :image)
-
create_opts -> HTTP options to pass into the create operation
25 26 27 28 29 30 31 32 |
# File 'lib/deltacloud_vm/client/methods/common.rb', line 25 def create_resource(resource_name, create_opts={}) no_convert_model = create_opts.delete(:no_convert_model) must_support! resource_name.to_s.pluralize response = connection.post(api_uri(resource_name.to_s.pluralize)) do |request| request.params = create_opts end no_convert_model ? response : model(resource_name).convert(self, response.body) end |
#destroy_resource(resource_name, resource_id) ⇒ Object
A generic method for destroying resources
36 37 38 39 40 41 42 |
# File 'lib/deltacloud_vm/client/methods/common.rb', line 36 def destroy_resource(resource_name, resource_id) must_support! resource_name.to_s.pluralize result = connection.delete( api_uri([resource_name.to_s.pluralize, resource_id].join('/')) ) result.status.is_no_content? end |