Class: Ukey::CLI
- Inherits:
-
Thor
- Object
- Thor
- Ukey::CLI
- Defined in:
- lib/ukey/cli.rb
Overview
Command line interface for ukey
Instance Method Summary collapse
- #select_device(device = nil) ⇒ Object
- #select_interval(interval = nil) ⇒ Object
- #version ⇒ Object
- #watch ⇒ Object
Instance Method Details
#select_device(device = nil) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/ukey/cli.rb', line 24 def select_device(device = nil) return device_selected(device) if device watcher = UsbWatcher.new devices = watcher.list_devices choose do || .prompt = "Select a device (1-#{devices.count}):" devices.each do |dev| .choice(dev, &method(:device_selected)) end end end |
#select_interval(interval = nil) ⇒ Object
39 40 41 42 |
# File 'lib/ukey/cli.rb', line 39 def select_interval(interval = nil) interval = HighLine.ask('Enter interval (sec):', Integer) unless interval interval_selected(interval) end |
#watch ⇒ Object
10 11 12 13 14 15 16 17 18 |
# File 'lib/ukey/cli.rb', line 10 def watch interval = Config.interval device = Config.device watcher = UsbWatcher.new(device_name: device, interval: interval) puts 'Watching...' watcher.watch rescue DeviceNotSetError say(red('Device not set. Please run "ukey select_device"')) end |