Module: Crevalle::Pulse

Defined in:
lib/crevalle/pulse.rb,
lib/crevalle/pulse/version.rb

Defined Under Namespace

Classes: Config

Constant Summary collapse

VERSION =
'0.1.1'

Class Method Summary collapse

Class Method Details

.beat(name) ⇒ Object

Raises:

  • (ArgumentError)


17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/crevalle/pulse.rb', line 17

def self.beat name
  raise ArgumentError, 'please supply a beat name' if name.nil? || name == ''
  raise 'Please configure with an api key' if config.api_key.nil?

  return false if config.disabled?

  uri = URI.parse "#{config.host}#{config.endpoint}"
  http = Net::HTTP.new(uri.host, uri.port)
  http.use_ssl = true

  request = Net::HTTP::Post.new uri.request_uri
  request.body = { 'beat' => name }.to_json

  request['Content-Type'] = 'application/json'
  request['X-API-KEY' ] = config.api_key

  Thread.new do
    http.request request
  end

  true
end

.configObject



13
14
15
# File 'lib/crevalle/pulse.rb', line 13

def self.config
  @@config ||= Config.new
end

.configure {|config| ... } ⇒ Object

Yields:



8
9
10
11
# File 'lib/crevalle/pulse.rb', line 8

def self.configure
  yield config
  config
end