Class: EnableTypeHandler

Inherits:
AbstractCommandHandler show all
Defined in:
lib/javonet-ruby-sdk/core/handler/enable_type_handler.rb,
lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/enable_type_handler.rb,
lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/enable_type_handler.rb,
lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/enable_type_handler.rb

Instance Method Summary collapse

Methods inherited from AbstractCommandHandler

#handle_command, #iterate

Constructor Details

#initializeEnableTypeHandler

Returns a new instance of EnableTypeHandler.



5
6
7
# File 'lib/javonet-ruby-sdk/core/handler/enable_type_handler.rb', line 5

def initialize
  @required_parameters_count = 1
end

Instance Method Details

#process(command) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/javonet-ruby-sdk/core/handler/enable_type_handler.rb', line 9

def process(command)
  begin
    if command.payload.length < @required_parameters_count
      raise "#{self.class.name} parameters mismatch!"
    end

    type_cache = TypeCache.instance

    command.payload.each do |payload|
      if payload.is_a? String
        type_cache.cache_type(payload)
      elsif payload.is_a? Array
        payload.each do |type_to_enable|
          type_cache.cache_type(type_to_enable)
        end
      end

    end
    0
  end
rescue Exception => e
  return e
end