Commit Graph

12 Commits

Author SHA1 Message Date
David Schulz
a06af35631 ProjectExplorer: Introduce DeviceProcessSignalOperation.
Every device can now return a DeviceProcessSignalOperation,
which allows to kill or interrupt processes running on the
device.

Change-Id: Idaa04ebc767e09ca167fa033ed93860b9b81479e
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Reviewed-by: David Kaspar <dkaspar@blackberry.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-20 10:48:47 +02:00
Christian Kandeler
22599094b0 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 <hjk121@nokiamail.com>
2013-08-19 16:13:21 +02:00
Christian Kandeler
b055c0e506 Device support: Rename DeviceProcess to DeviceProcessItem.
We want to introduce a new class that has more right to that name.

Change-Id: I9535632e10872a97a8555e885a80c383bc5dcd2b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-08 12:24:40 +02:00
Christian Kandeler
5bca241afb Device support: Make device testing a "well-known" concept.
This entails the following:
    - Rename AbstractLinuxDeviceTester to DeviceTester and
      move it up into ProjectExplorer. The class stays
      unchanged, as there was nothing Linux-specific about it.
      The same goes for the associated dialog.
    - Move the createDeviceTester() function from LinuxDevice
      to IDevice and introduce IDevice::hasDeviceTester() to
      enable generic code to make use of this feature.
    - Move device testing out of the list of opaque
      device-specific actions; instead, the device settings widget
      now uses the device tester directly, if applicable.
Rationale:
    - Device testing, just like remote process listing (if not more so),
      is a general concept that implementors of device classes will
      probably want to implement (and they should be encouraged to do so).
      Without the mechanism provided here, they would all need to put
      basically the same code into the actionIds(), displayNameForActionId()
      and executeAction() functions.

This patch is the natural extension of b90e3bbd8b.

Change-Id: I94f2badb4ceeda9f5cd3b066c13626bb4f65505d
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
2013-07-02 15:02:48 +02:00
Tobias Nätterlund
b90e3bbd8b QNX/RemoteLinux/Madde: Made device test more generic
Any device inheriting from LinuxDevice can now implement
a createDeviceTester() method to return their own
AbstractLinuxDeviceTester that runs when the device wizard
is completed, or when the Test Device button is pressed.

The MaddeDevice implementation of the device actions now completely
matches that of LinuxDevice, so those are removed.

The QNX device check was improved with additional tool checking.

Change-Id: Ie761b7cfc5591238aa2a18a74fe1843fb2cdbeaa
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-05-31 14:51:02 +02:00
Tobias Nätterlund
1d792a9a15 QNX: Add support for listing processes for pure QNX devices
Change-Id: Id2d9bd6b7f5ce56ff0d7ece30bb93a69969beecf
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-05-13 11:30:40 +02:00
Robert Loehning
298531e370 Incremented year in copyright info
Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-01-29 16:27:03 +01:00
hjk
386ca7c8dd Adjust license headers
Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-10-05 17:12:56 +02:00
Christian Kandeler
753c62d75e Device support: Introduce IDevice helper classes.
These are for configuration of process and ports gathering activities,
respectively.
This couples related functionality more tightly, while keeping
the number of IDevice methods at a reasonable level.
For ports gathering, the patch also adds the ability to configure
both the command and the parsing function; the latter used to be
hardcoded in the PortsGatherer class.

Change-Id: I1b8940397a51efa7ddc05dd15cf861777d118c1a
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-02 10:36:04 +02:00
hjk
6460254931 remotelinux: rename LinuxDeviceConfiguration to LinuxDevice
Change-Id: I7e8a99d3339d2040a23e4e78816b13b57197dcdb
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
2012-08-01 14:26:28 +02:00
hjk
b906360a34 madde/qnx/remotelinux: adjust after profile changes
More Profile use, less dependency on QtSupport,
Derive qtVersionId from profile instead of qt build configuration.
Replace qt4BuildConfiguration with buildConfiguration.
Use IDevice base class in AbstractRemoteLinuxApplicationRunner
and in other places.  Simplify remote linux runconfiguration

Change-Id: I6414d3d8146d16c360b3a0465c57a052ea71f899
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
2012-07-26 12:50:06 +02:00
Tobias Nätterlund
a7ac2bb559 New QNX plugin.
This plugin adds support for cross-compiling, deploying, running
and debugging on a PlayBook or QNX Neutrino device.

Change-Id: I0da7ccee40bd7ce4c0d6bdc6884d48ef23167dac
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-07-13 15:37:34 +02:00