Sha256: 6b064d4e3fcfb9f923b275741cae5e4b808e2caca4d36484b133f0d0ad1cd503

Contents?: true

Size: 871 Bytes

Versions: 2

Compression:

Stored size: 871 Bytes

Contents

module SparkApi
  module Models
    module Concerns

      module Destroyable

        def destroy(arguments = {})
          self.errors = []
          begin
            return destroy!(arguments)
          rescue BadResourceRequest => e
            self.errors << {:code => e.code, :message => e.message}
            SparkApi.logger.error("Failed to destroy resource #{self}: #{e.message}")
          rescue NotFound => e
            SparkApi.logger.error("Failed to destroy resource #{self}: #{e.message}")
          end
          false
        end
        def destroy!(arguments = {})
          connection.delete("#{self.class.path}/#{self.Id}", arguments)
          @destroyed = true
          true
        end
        alias_method :delete, :destroy # backwards compatibility

        def destroyed?; @destroyed ? @destroyed : false end

      end

    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
spark_api-1.2.1 lib/spark_api/models/concerns/destroyable.rb
spark_api-1.2.0 lib/spark_api/models/concerns/destroyable.rb