Class: PCPServerSDK::RequestHeaderGenerator
- Inherits:
-
Object
- Object
- PCPServerSDK::RequestHeaderGenerator
- Defined in:
- lib/PCP-server-Ruby-SDK/request_header_generator.rb
Constant Summary collapse
- SERVER_META_INFO_HEADER_NAME =
'X-GCS-ServerMetaInfo'
- CLIENT_META_INFO_HEADER_NAME =
'X-GCS-ClientMetaInfo'
- AUTHORIZATION_HEADER_NAME =
'Authorization'
- DATE_HEADER_NAME =
'Date'
- CONTENT_TYPE_HEADER_NAME =
'Content-Type'
- ALGORITHM =
'sha256'
- WHITESPACE_REGEX =
/\r?\n[h]*/.freeze
Instance Method Summary collapse
-
#generate_additional_request_headers(url, request) ⇒ Object
Generate additional request headers.
-
#initialize(config) ⇒ RequestHeaderGenerator
constructor
A new instance of RequestHeaderGenerator.
Constructor Details
#initialize(config) ⇒ RequestHeaderGenerator
Returns a new instance of RequestHeaderGenerator.
19 20 21 |
# File 'lib/PCP-server-Ruby-SDK/request_header_generator.rb', line 19 def initialize(config) @config = config end |
Instance Method Details
#generate_additional_request_headers(url, request) ⇒ Object
Generate additional request headers
26 27 28 29 30 31 32 33 34 35 |
# File 'lib/PCP-server-Ruby-SDK/request_header_generator.rb', line 26 def generate_additional_request_headers(url, request) headers = request[:headers] || {} headers[DATE_HEADER_NAME] ||= Time.now.utc.httpdate headers[SERVER_META_INFO_HEADER_NAME] ||= headers[CLIENT_META_INFO_HEADER_NAME] ||= headers[AUTHORIZATION_HEADER_NAME] ||= get_auth_header(url, request, headers) request.merge(headers: headers) end |