Class: CoreLibrary::Or

Inherits:
AuthGroup
  • Object
show all
Defined in:
lib/apimatic-core/authentication/multiple/or_auth_group.rb

Overview

The class to handle the OR combination of multiple authentications for a particular request.

Instance Attribute Summary

Attributes inherited from AuthGroup

#auth_participants, #error_messages, #is_valid_group, #mapped_group

Instance Method Summary collapse

Methods inherited from AuthGroup

#apply, #with_auth_managers

Constructor Details

#initialize(*auth_group) ⇒ Or

Initializes a new instance of Or.

Parameters:

  • auth_group (String | AuthGroup)

    AuthGroup instance or string.



12
13
14
15
# File 'lib/apimatic-core/authentication/multiple/or_auth_group.rb', line 12

def initialize(*auth_group)
  super auth_group
  @is_valid_group = false
end

Instance Method Details

#error_messageString

Getter for the error message for auth.

Returns:

  • (String)

    The error message while applying the auth.



6
7
8
# File 'lib/apimatic-core/authentication/multiple/or_auth_group.rb', line 6

def error_message
  @error_messages.join(' or ')
end

#validBoolean

Checks if the associated auth is valid.

Returns:

  • (Boolean)

    True if the associated auth is valid, false otherwise.



19
20
21
22
23
24
25
26
27
28
# File 'lib/apimatic-core/authentication/multiple/or_auth_group.rb', line 19

def valid
  @mapped_group.each do |participant|
    @is_valid_group = participant.valid
    return true if @is_valid_group

    @error_messages.append(participant.error_message)
  end

  @is_valid_group
end