Class: WSDL::Security::Policy

Inherits:
Object
  • Object
show all
Defined in:
lib/wsdl/security/policy.rb

Overview

Immutable container for request and response security policies.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request:, response:) ⇒ Policy

Returns a new instance of Policy.

Parameters:



9
10
11
12
13
# File 'lib/wsdl/security/policy.rb', line 9

def initialize(request:, response:)
  @request = request
  @response = response
  freeze
end

Instance Attribute Details

#requestRequestPolicy (readonly)

Returns:



24
25
26
# File 'lib/wsdl/security/policy.rb', line 24

def request
  @request
end

#responseResponsePolicy (readonly)

Returns:



27
28
29
# File 'lib/wsdl/security/policy.rb', line 27

def response
  @response
end

Class Method Details

.defaultPolicy

Creates the default security policy.

Returns:



19
20
21
# File 'lib/wsdl/security/policy.rb', line 19

def self.default
  new(request: RequestPolicy.empty, response: ResponsePolicy.default)
end

Instance Method Details

#with_request(request) ⇒ Policy

Parameters:

Returns:



31
32
33
# File 'lib/wsdl/security/policy.rb', line 31

def with_request(request)
  self.class.new(request:, response: @response)
end

#with_response(response) ⇒ Policy

Parameters:

Returns:



37
38
39
# File 'lib/wsdl/security/policy.rb', line 37

def with_response(response)
  self.class.new(request: @request, response:)
end