Introduce the concept of a "device process".
Provide a QProcess-like abstraction that can be used to implement processes running locally or on a remote device. Objects of a concrete class implementing the functionality are created by IDevice objects. Current implementations are: - Local execution (QProcess-based), provided via the DesktopDevice. - Remote execution via SSH. - A specialized case of the former for remote Linux systems (provided by LinuxDevice). The latter is already being used in a number of places. As a result, lots of code dealing with details such as setting the remote environment could be moved to a central location. These things are no longer the concern of whoever is wishing to run a remote process. Change-Id: I919260ee6e77a020ca47226a4a534e7b8398106f Reviewed-by: hjk <email@example.com>
Showing with 857 additions and 49 deletions