1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-03 07:05:24 +02:00

[207095] Implicit connect needs to run in the same job as caller

This commit is contained in:
David McKnight 2007-10-25 16:23:37 +00:00
parent 456e55c23e
commit d3846713f6
2 changed files with 8 additions and 6 deletions

View file

@ -14,6 +14,7 @@
* Martin Oberhuber (Wind River) - [182454] improve getAbsoluteName() documentation
* Martin Oberhuber (Wind River) - [186128] Move IProgressMonitor last in all API
* Martin Oberhuber (Wind River) - [187218] Fix error reporting for connect()
* David McKnight (IBM) - [207095] Implicit connect needs to run in the same job as caller
********************************************************************************/
package org.eclipse.rse.core.subsystems;
@ -134,7 +135,7 @@ public interface ISubSystem extends ISystemFilterPoolReferenceManagerProvider, I
* will throw a SystemMessageException you can easily display to the user by using a method
* in it.
*/
public void checkIsConnected() throws SystemMessageException;
public void checkIsConnected(IProgressMonitor monitor) throws SystemMessageException;
// ---------------------------------------------------
// Methods for business partners to add their own

View file

@ -18,6 +18,7 @@
package org.eclipse.rse.subsystems.processes.servicesubsystem;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.rse.core.model.IHost;
import org.eclipse.rse.core.subsystems.IConnectorService;
import org.eclipse.rse.core.subsystems.IServiceSubSystemConfiguration;
@ -88,7 +89,7 @@ public class ProcessServiceSubSystem extends RemoteProcessSubSystemImpl implemen
*/
public IRemoteProcess getRemoteProcessObject(long pid) throws SystemMessageException
{
checkIsConnected();
checkIsConnected(new NullProgressMonitor());
HostProcessFilterImpl rpfs = new HostProcessFilterImpl();
rpfs.setPid("" + pid); //$NON-NLS-1$
IRemoteProcessContext context = new RemoteProcessContext(this, null, rpfs);
@ -109,7 +110,7 @@ public class ProcessServiceSubSystem extends RemoteProcessSubSystemImpl implemen
*/
public boolean kill(IRemoteProcess process, String signal) throws SystemMessageException
{
checkIsConnected();
checkIsConnected(new NullProgressMonitor());
return getProcessService().kill(process.getPid(), signal, null);
}
@ -118,7 +119,7 @@ public class ProcessServiceSubSystem extends RemoteProcessSubSystemImpl implemen
*/
public IRemoteProcess[] listAllProcesses(IHostProcessFilter processFilter, IRemoteProcessContext context, IProgressMonitor monitor) throws InterruptedException, SystemMessageException
{
checkIsConnected();
checkIsConnected(monitor);
IHostProcess[] processes = getProcessService().listAllProcesses(processFilter, monitor);
return getHostProcessToRemoteProcessAdapter().convertToRemoteProcesses(context, null, processes);
}
@ -128,7 +129,7 @@ public class ProcessServiceSubSystem extends RemoteProcessSubSystemImpl implemen
*/
public IRemoteProcess[] listChildProcesses(IRemoteProcess parent, IHostProcessFilter processFilter, IRemoteProcessContext context, IProgressMonitor monitor) throws SystemMessageException
{
checkIsConnected();
checkIsConnected(monitor);
IHostProcess[] processes = getProcessService().listChildProcesses(parent.getPid(), processFilter, monitor);
return getHostProcessToRemoteProcessAdapter().convertToRemoteProcesses(context, parent, processes);
}
@ -138,7 +139,7 @@ public class ProcessServiceSubSystem extends RemoteProcessSubSystemImpl implemen
*/
public IRemoteProcess[] listChildProcesses(IRemoteProcess parent, IRemoteProcessContext context, IProgressMonitor monitor) throws SystemMessageException
{
checkIsConnected();
checkIsConnected(monitor);
IHostProcess[] processes = getProcessService().listChildProcesses(parent.getPid(), monitor);
return getHostProcessToRemoteProcessAdapter().convertToRemoteProcesses(context, parent, processes);
}