Class: TCellAgent::Policies::HttpRedirectPolicy

Inherits:
Policy
  • Object
show all
Defined in:
lib/tcell_agent/policies/http_redirect_policy.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(native_agent, enablements) ⇒ HttpRedirectPolicy

Returns a new instance of HttpRedirectPolicy.



12
13
14
15
# File 'lib/tcell_agent/policies/http_redirect_policy.rb', line 12

def initialize(native_agent, enablements)
  @native_agent = native_agent
  @enabled = enablements['http_redirect'] || false
end

Instance Attribute Details

#enabledObject

Returns the value of attribute enabled.



10
11
12
# File 'lib/tcell_agent/policies/http_redirect_policy.rb', line 10

def enabled
  @enabled
end

Class Method Details

.api_identifierObject



6
7
8
# File 'lib/tcell_agent/policies/http_redirect_policy.rb', line 6

def self.api_identifier
  'http-redirect'
end

Instance Method Details

#check_redirect(redirect_url, from_domain, status_code, tcell_context) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
# File 'lib/tcell_agent/policies/http_redirect_policy.rb', line 17

def check_redirect(redirect_url, from_domain, status_code, tcell_context)
  return redirect_url unless @enabled

  redirect_response = @native_agent.check_http_redirect(
    redirect_url, from_domain, status_code, tcell_context
  )

  return '/' if redirect_response['block']

  redirect_url
end