Class: Aikido::Zen::RuntimeSettings::DomainSettings

Inherits:
Object
  • Object
show all
Defined in:
lib/aikido/zen/runtime_settings/domain_settings.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(mode:) ⇒ DomainSettings

Returns a new instance of DomainSettings.

Raises:

  • (ArgumentError)


13
14
15
16
17
# File 'lib/aikido/zen/runtime_settings/domain_settings.rb', line 13

def initialize(mode:)
  raise ArgumentError, "mode must be either :block or :allow" unless [:block, :allow].include?(mode)

  @mode = mode
end

Instance Attribute Details

#modeObject (readonly)

Returns the value of attribute mode.



11
12
13
# File 'lib/aikido/zen/runtime_settings/domain_settings.rb', line 11

def mode
  @mode
end

Class Method Details

.from_json(data) ⇒ Object



5
6
7
8
9
# File 'lib/aikido/zen/runtime_settings/domain_settings.rb', line 5

def self.from_json(data)
  new(
    mode: data["mode"]&.to_sym
  )
end

Instance Method Details

#block?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/aikido/zen/runtime_settings/domain_settings.rb', line 19

def block?
  @mode == :block
end