Class: Modgen::Session::APIKey

Inherits:
Object
  • Object
show all
Defined in:
lib/modgen/session/api_key.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeAPIKey

Returns a new instance of APIKey.



19
20
21
# File 'lib/modgen/session/api_key.rb', line 19

def initialize
  @key = Modgen.config.api_key.key
end

Class Method Details

.configObject



5
6
7
# File 'lib/modgen/session/api_key.rb', line 5

def self.config
  Modgen.config
end

.startObject



9
10
11
12
13
14
15
16
17
# File 'lib/modgen/session/api_key.rb', line 9

def self.start
  if config.api_key.key == nil
    raise Modgen::ConfigurationError, "API key cannot be nil."
  end

  client = Modgen::Session::APIKey.new

  Modgen::Session.store(client)
end

Instance Method Details

#execute(request) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/modgen/session/api_key.rb', line 23

def execute(request)
  conn = Faraday.new(url: request.url)

  if request.data['body'] && request.data['body'].empty?
    response = conn.send(request.http_method, "", request.data['params']) { |req|
      req.headers['Api-Key'] = @key
    }
  else
    response = conn.send(@http_method, "") { |req|
      req.headers['Api-Key'] = @key
      req.body = request.data['body']
    }
  end

  response
end