Class: OpenapiBlocks::Configuration::SecurityBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/openapi_blocks/configuration/security_builder.rb

Overview

rubocop:disable Style/Documentation

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeSecurityBuilder

Returns a new instance of SecurityBuilder.



8
9
10
# File 'lib/openapi_blocks/configuration/security_builder.rb', line 8

def initialize
  @schemes = {}
end

Instance Attribute Details

#schemesObject (readonly)

Returns the value of attribute schemes.



6
7
8
# File 'lib/openapi_blocks/configuration/security_builder.rb', line 6

def schemes
  @schemes
end

Instance Method Details

#api_key(name: "X-API-Key", in: :header) ⇒ Object



20
21
22
23
24
25
26
# File 'lib/openapi_blocks/configuration/security_builder.rb', line 20

def api_key(name: "X-API-Key", in: :header)
  @schemes[:apiKey] = {
    type: "apiKey",
    name: name,
    in:   binding.local_variable_get(:in).to_s
  }
end

#bearer_token(format: "JWT") ⇒ Object



12
13
14
15
16
17
18
# File 'lib/openapi_blocks/configuration/security_builder.rb', line 12

def bearer_token(format: "JWT")
  @schemes[:bearerAuth] = {
    type:         "http",
    scheme:       "bearer",
    bearerFormat: format
  }
end

#to_hObject



28
29
30
# File 'lib/openapi_blocks/configuration/security_builder.rb', line 28

def to_h
  @schemes
end