Sha256: 680c55c727255d82018ea4ba7124eb1a41be11c9f6f878a1ac6f0d380100c646

Contents?: true

Size: 1.5 KB

Versions: 39

Compression:

Stored size: 1.5 KB

Contents

module Fog
  module Rackspace
    class Monitoring
      class Real
        def create_entity(options = {})
          data = options.dup
          request(
            :body     => JSON.encode(data),
            :expects  => [201],
            :method   => 'POST',
            :path     => 'entities'
          )
        end
      end

      class Mock
        def create_entity(options = {})
          account_id = Fog::Mock.random_numbers(6).to_s
          entity_id = Fog::Mock.random_letters(10)

          if options[:label] == ""
            raise Fog::Rackspace::Monitoring::BadRequest
          end

          response = Excon::Response.new
          response.status = 201
          response.body = ""
          response.headers = {
            "Date"                  => Time.now.utc.to_s,
            "Location"              => "https://monitoring.api.rackspacecloud.com/v1.0/" + account_id + "/entities/" + entity_id,
            "X-Object-ID"           => entity_id,
            "X-RateLimit-Limit"     => "50000",
            "X-RateLimit-Remaining" => "47877",
            "X-RateLimit-Window"    => "24 hours",
            "X-RateLimit-Type"      => "global",
            "X-Response-Id"         => "lakbngf9bgewkgb39sobnsv",
            "X-LB"                  => "dfw1-maas-prod-api1",
            "Content-Length"        => "0",
            "Content-Type"          => "text/plain"
          }
          response.remote_ip = Fog::Rackspace::MockData.ipv4_address
          response
        end
      end
    end
  end
end

Version data entries

39 entries across 37 versions & 6 rubygems

Version Path
fog-rackspace-0.1.6 lib/fog/rackspace/requests/monitoring/create_entity.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-rackspace-0.1.5/lib/fog/rackspace/requests/monitoring/create_entity.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-rackspace-0.1.5/lib/fog/rackspace/requests/monitoring/create_entity.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-rackspace-0.1.5/lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-rackspace-0.1.5 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-rackspace-0.1.4 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-rackspace-0.1.3 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-rackspace-0.1.2 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-rackspace-0.1.1 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-rackspace-0.1.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-1.37.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-1.36.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-1.35.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-2.0.0.pre.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-1.32.0/lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-1.34.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-1.33.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-1.32.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
fog-1.31.0 lib/fog/rackspace/requests/monitoring/create_entity.rb
vagrant-cloudstack-1.1.0 vendor/bundle/gems/fog-1.22.1/lib/fog/rackspace/requests/monitoring/create_entity.rb