Class: AocCli::Core::Request

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/aoc_cli/core/request.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(token:) ⇒ Request

Returns a new instance of Request.



6
7
8
9
# File 'lib/aoc_cli/core/request.rb', line 6

def initialize(token:)
  @client = setup_client!(token)
  @ssl_context = setup_ssl_context!
end

Instance Attribute Details

#clientObject (readonly)

Returns the value of attribute client.



4
5
6
# File 'lib/aoc_cli/core/request.rb', line 4

def client
  @client
end

#ssl_contextObject (readonly)

Returns the value of attribute ssl_context.



4
5
6
# File 'lib/aoc_cli/core/request.rb', line 4

def ssl_context
  @ssl_context
end

Class Method Details

.buildObject



11
12
13
14
15
16
17
# File 'lib/aoc_cli/core/request.rb', line 11

def self.build
  token = AocCli.config.session.token

  raise "session token not set" if token.nil?

  new(token:)
end

Instance Method Details

#get(url) ⇒ Object



19
20
21
# File 'lib/aoc_cli/core/request.rb', line 19

def get(url)
  client.get(url, **default_options)
end

#post(url, **options) ⇒ Object



23
24
25
# File 'lib/aoc_cli/core/request.rb', line 23

def post(url, **options)
  client.post(url, **default_options.merge(options))
end