Class: WpaCliRuby::WpaCli

Inherits:
Object
  • Object
show all
Defined in:
lib/wpa_cli_ruby/wpa_cli.rb

Defined Under Namespace

Classes: Response, ScanResult

Instance Method Summary collapse

Constructor Details

#initialize(wrapper = WpaCliWrapper.new) ⇒ WpaCli

Returns a new instance of WpaCli.



29
30
31
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 29

def initialize(wrapper = WpaCliWrapper.new)
  @wrapper = wrapper
end

Instance Method Details

#add_networkObject



44
45
46
47
48
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 44

def add_network
  response = @wrapper.add_network
  _, status = response.split("\n")
  network_id = status.to_i
end

#enable_network(network_id) ⇒ Object



75
76
77
78
79
80
81
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 75

def enable_network(network_id)
  response = @wrapper.enable_network(network_id)
  response = parse_interface_status_response(response)
  raise EnableNetworkFailure unless response.ok?

  response
end

#get_network(network_id, key) ⇒ Object

Raises:



66
67
68
69
70
71
72
73
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 66

def get_network(network_id, key)
  response = @wrapper.get_network(network_id, key)
  _, value = response.split("\n")

  raise NetworkNotFound if value == "FAIL"

  value
end

#save_configObject

Raises:



58
59
60
61
62
63
64
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 58

def save_config
  response = @wrapper.save_config
  response = parse_interface_status_response(response)
  raise SaveConfigFailure unless response.ok?

  response
end

#scanObject



33
34
35
36
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 33

def scan
  response = @wrapper.scan
  parse_interface_status_response(response)
end

#scan_resultsObject



38
39
40
41
42
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 38

def scan_results
  response = @wrapper.scan_results
  interface, header, *results = response.split("\n")
  results.map { |result| ScanResult.from_string(result) }
end

#set_network(network_id, key, value) ⇒ Object

Raises:



50
51
52
53
54
55
56
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 50

def set_network(network_id, key, value)
  response = @wrapper.set_network(network_id, key, value)
  response = parse_interface_status_response(response)
  raise SetNetworkFailure unless response.ok?

  response
end