Method: Roma::Command::SystemCommandReceiver#ev_wb_command_map

Defined in:
lib/roma/command/sys_command_receiver.rb

#ev_wb_command_map(s) ⇒ Object

wb_command_map <hash string> ex. :set=>1,:append=>2,:delete=>3



1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
# File 'lib/roma/command/sys_command_receiver.rb', line 1009

def ev_wb_command_map(s)
  if s.length < 2
    return send_data("CLIENT_ERROR number of arguments\r\n")
  end
  map = {}
  cmd = s[1..-1].join
  if cmd =~ /^\{(.+)\}$/
    $1.split(',').each do |kv|
      k, v = kv.split('=>')
      map[k[1..-1].to_sym] = v.to_i if v && k[0]==':'
    end

    res = broadcast_cmd("rwb_command_map #{s[1..-1].join}\r\n")
    @stats.wb_command_map = map
    res[@stats.ap_str] = map.inspect
    send_data("#{res}\r\n")
  else
    send_data("CLIENT_ERROR hash string parse error\r\n")
  end
end