Sha256: 03834a1dd07d794b426bfde3af60f4200ab3e58690195c254d05379f25b46134

Contents?: true

Size: 1.05 KB

Versions: 9

Compression:

Stored size: 1.05 KB

Contents

module Fog
  module Compute
    class QingCloud
      class Real

        # Delete a key pair that you own
        # {API Reference}[https://docs.qingcloud.com/api/keypair/delete_key_pairs.html]
        def delete_key_pairs(key_id)
          args = {
            'action'    => 'DeleteKeyPairs',
          }
          args.merge! Fog::QingCloud.indexed_param('keypairs', [*key_id])
          request(args)
        end

      end

      class Mock

        def delete_key_pairs(key_id)
          response = Excon::Response.new
          key_id = [*key_id]
          unless (unknown_keys = key_id - self.data[:key_pairs].keys).empty?
            raise Fog::QingCloud::Errors::NotFound, "ResourceNotFound, resource #{unknown_keys.join(', ')} not found"
          end
          self.data[:key_pairs].delete_if {|k, v| key_id.include? k}
          response.status = 200
          response.body = {
            'action' => 'DeleteKeyPairsResponse',
            'keypairs' => [*key_id],
            'ret_code' => 0
          }
          response
        end

      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
ns-fog-1.22.11 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb
ns-fog-1.22.10 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb
ns-fog-1.22.9 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb
ns-fog-1.22.8 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb
ns-fog-1.22.7 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb
ns-fog-1.22.6 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb
ns-fog-1.22.4 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb
ns-fog-1.22.3 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb
ns-fog-1.22.2 lib/fog/qingcloud/requests/compute/delete_key_pairs.rb