Class: Stf::StopAllDebugSessionsInteractor

Inherits:
Object
  • Object
show all
Includes:
ADB, Log
Defined in:
lib/stf/interactor/stop_all_debug_sessions_interactor.rb

Instance Method Summary collapse

Methods included from Log

#logger, verbose

Instance Method Details

#execute(options = {}) ⇒ Object

byFilter: exceptFilter:



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/stf/interactor/stop_all_debug_sessions_interactor.rb', line 17

def execute(options = {})
  DI[:demonizer].kill unless options[:nokill]

  stf_devices = DeviceList.new(DI[:stf].get_user_devices)

  stf_devices = stf_devices.byFilter options[:byFilter] if options[:byFilter]
  stf_devices = stf_devices.exceptFilter options[:exceptFilter] if options[:exceptFilter]

  connected_devices = devices()
  remote_devices = stf_devices.asConnectUrlList

  pending_disconnect = connected_devices & remote_devices

  pending_disconnect.each {|d| DI[:stop_debug_session_interactor].execute d}
end