Module: Adb::Peco
- Defined in:
- lib/adb/peco.rb,
lib/adb/peco/version.rb
Constant Summary collapse
Class.new(StandardError)
- VERSION =
'2.0.3'
Class Method Summary collapse
- .adb_action ⇒ Object
- .adb_available? ⇒ Boolean
- .ensure_adb_available ⇒ Object
- .need_serial_option? ⇒ Boolean
- .quote(args) ⇒ Object
- .serial_option ⇒ Object
Class Method Details
.adb_action ⇒ Object
36 37 38 |
# File 'lib/adb/peco.rb', line 36 def self.adb_action ARGV.reject{|a| a[0] == '-'}.first end |
.adb_available? ⇒ Boolean
26 27 28 |
# File 'lib/adb/peco.rb', line 26 def self.adb_available? system('which', 'adb', out: File::NULL) end |
.ensure_adb_available ⇒ Object
30 31 32 33 34 |
# File 'lib/adb/peco.rb', line 30 def self.ensure_adb_available unless adb_available? raise AdbUnavailableError, 'adb command is not available.' end end |
.need_serial_option? ⇒ Boolean
40 41 42 43 44 45 46 47 |
# File 'lib/adb/peco.rb', line 40 def self.need_serial_option? !['help', 'devices', 'version', 'start-server', 'stop-server', ].include?(adb_action) end |
.quote(args) ⇒ Object
49 50 51 |
# File 'lib/adb/peco.rb', line 49 def self.quote(args) args.map{|a| a.include?(' ') ? %Q{"#{a}"} : a } end |
.serial_option ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/adb/peco.rb', line 9 def self.serial_option return nil unless adb_action return nil unless need_serial_option? devices = DeviceAPI::Android.devices return nil if devices.size <= 1 || devices.size == 0 device = PecoSelector.select_from(devices.map{|device| ["#{device.model} (#{device.qualifier})", device] }).first "-s #{device.qualifier}" rescue PecoSelector::PecoUnavailableError => e puts e. exit 1 end |