mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
Bug 317173: Fix more new warnings of missing @Override now that we use java 6
This commit is contained in:
parent
2737d2c708
commit
c42d3a5587
14 changed files with 174 additions and 3 deletions
|
@ -84,6 +84,7 @@ public class GdbServerDebuggerPage extends GdbDebuggerPage {
|
||||||
field.setItems(fConnections);
|
field.setItems(fConnections);
|
||||||
field.setDialogFieldListener(new IDialogFieldListener() {
|
field.setDialogFieldListener(new IDialogFieldListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
public void dialogFieldChanged(DialogField f) {
|
public void dialogFieldChanged(DialogField f) {
|
||||||
if (!isInitializing())
|
if (!isInitializing())
|
||||||
connectionTypeChanged();
|
connectionTypeChanged();
|
||||||
|
|
|
@ -102,6 +102,7 @@ public class SerialPortSettingsBlock extends Observable {
|
||||||
field.setLabelText(LaunchUIMessages.getString("SerialPortSettingsBlock.0")); //$NON-NLS-1$
|
field.setLabelText(LaunchUIMessages.getString("SerialPortSettingsBlock.0")); //$NON-NLS-1$
|
||||||
field.setDialogFieldListener(new IDialogFieldListener() {
|
field.setDialogFieldListener(new IDialogFieldListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
public void dialogFieldChanged(DialogField f) {
|
public void dialogFieldChanged(DialogField f) {
|
||||||
deviceFieldChanged();
|
deviceFieldChanged();
|
||||||
}
|
}
|
||||||
|
@ -115,6 +116,7 @@ public class SerialPortSettingsBlock extends Observable {
|
||||||
field.setItems(fSpeedChoices);
|
field.setItems(fSpeedChoices);
|
||||||
field.setDialogFieldListener(new IDialogFieldListener() {
|
field.setDialogFieldListener(new IDialogFieldListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
public void dialogFieldChanged(DialogField f) {
|
public void dialogFieldChanged(DialogField f) {
|
||||||
speedFieldChanged();
|
speedFieldChanged();
|
||||||
}
|
}
|
||||||
|
|
|
@ -108,6 +108,7 @@ public class SolibSearchPathBlock extends Observable implements IMILaunchConfigu
|
||||||
fText.setLayoutData(new GridData(GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL));
|
fText.setLayoutData(new GridData(GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL));
|
||||||
fText.addModifyListener(new ModifyListener() {
|
fText.addModifyListener(new ModifyListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
public void modifyText(ModifyEvent e) {
|
public void modifyText(ModifyEvent e) {
|
||||||
updateOKButton();
|
updateOKButton();
|
||||||
}
|
}
|
||||||
|
@ -243,9 +244,11 @@ public class SolibSearchPathBlock extends Observable implements IMILaunchConfigu
|
||||||
buttonLabels[i] = customButtonLabels[i - fgStaticButtonLabels.length];
|
buttonLabels[i] = customButtonLabels[i - fgStaticButtonLabels.length];
|
||||||
}
|
}
|
||||||
IListAdapter listAdapter = new IListAdapter() {
|
IListAdapter listAdapter = new IListAdapter() {
|
||||||
|
@Override
|
||||||
public void customButtonPressed(DialogField field, int index) {
|
public void customButtonPressed(DialogField field, int index) {
|
||||||
buttonPressed(index);
|
buttonPressed(index);
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
public void selectionChanged(DialogField field) {
|
public void selectionChanged(DialogField field) {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -97,6 +97,7 @@ public class TCPSettingsBlock extends Observable {
|
||||||
field.setLabelText(LaunchUIMessages.getString("TCPSettingsBlock.0")); //$NON-NLS-1$
|
field.setLabelText(LaunchUIMessages.getString("TCPSettingsBlock.0")); //$NON-NLS-1$
|
||||||
field.setDialogFieldListener(new IDialogFieldListener() {
|
field.setDialogFieldListener(new IDialogFieldListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
public void dialogFieldChanged(DialogField f) {
|
public void dialogFieldChanged(DialogField f) {
|
||||||
hostNameFieldChanged();
|
hostNameFieldChanged();
|
||||||
}
|
}
|
||||||
|
@ -109,6 +110,7 @@ public class TCPSettingsBlock extends Observable {
|
||||||
field.setLabelText(LaunchUIMessages.getString("TCPSettingsBlock.1")); //$NON-NLS-1$
|
field.setLabelText(LaunchUIMessages.getString("TCPSettingsBlock.1")); //$NON-NLS-1$
|
||||||
field.setDialogFieldListener(new IDialogFieldListener() {
|
field.setDialogFieldListener(new IDialogFieldListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
public void dialogFieldChanged(DialogField f) {
|
public void dialogFieldChanged(DialogField f) {
|
||||||
portNumberFieldChanged();
|
portNumberFieldChanged();
|
||||||
}
|
}
|
||||||
|
|
|
@ -199,6 +199,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
return gdbCommandLine.toString();
|
return gdbCommandLine.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getGDBInitFile() throws CoreException {
|
public String getGDBInitFile() throws CoreException {
|
||||||
if (fGDBInitFile == null) {
|
if (fGDBInitFile == null) {
|
||||||
String defaultGdbInit = Platform.getPreferencesService().getString(GdbPlugin.PLUGIN_ID,
|
String defaultGdbInit = Platform.getPreferencesService().getString(GdbPlugin.PLUGIN_ID,
|
||||||
|
@ -211,6 +212,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
return fGDBInitFile;
|
return fGDBInitFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IPath getGDBWorkingDirectory() throws CoreException {
|
public IPath getGDBWorkingDirectory() throws CoreException {
|
||||||
if (fGDBWorkingDirectory == null) {
|
if (fGDBWorkingDirectory == null) {
|
||||||
|
|
||||||
|
@ -268,6 +270,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
return fGDBWorkingDirectory;
|
return fGDBWorkingDirectory;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getProgramArguments() throws CoreException {
|
public String getProgramArguments() throws CoreException {
|
||||||
if (fProgramArguments == null) {
|
if (fProgramArguments == null) {
|
||||||
fProgramArguments = fLaunchConfiguration.getAttribute(
|
fProgramArguments = fLaunchConfiguration.getAttribute(
|
||||||
|
@ -282,11 +285,13 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
return fProgramArguments;
|
return fProgramArguments;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IPath getProgramPath() {
|
public IPath getProgramPath() {
|
||||||
return fProgramPath;
|
return fProgramPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
|
@Override
|
||||||
public List<String> getSharedLibraryPaths() throws CoreException {
|
public List<String> getSharedLibraryPaths() throws CoreException {
|
||||||
if (fSharedLibPaths == null) {
|
if (fSharedLibPaths == null) {
|
||||||
fSharedLibPaths = fLaunchConfiguration.getAttribute(IGDBLaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH,
|
fSharedLibPaths = fLaunchConfiguration.getAttribute(IGDBLaunchConfigurationConstants.ATTR_DEBUGGER_SOLIB_PATH,
|
||||||
|
@ -297,6 +302,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 3.0 */
|
/** @since 3.0 */
|
||||||
|
@Override
|
||||||
public Properties getEnvironmentVariables() throws CoreException {
|
public Properties getEnvironmentVariables() throws CoreException {
|
||||||
if (fEnvVariables == null) {
|
if (fEnvVariables == null) {
|
||||||
fEnvVariables = new Properties();
|
fEnvVariables = new Properties();
|
||||||
|
@ -340,11 +346,13 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 3.0 */
|
/** @since 3.0 */
|
||||||
|
@Override
|
||||||
public boolean getClearEnvironment() throws CoreException {
|
public boolean getClearEnvironment() throws CoreException {
|
||||||
return !fLaunchConfiguration.getAttribute(ILaunchManager.ATTR_APPEND_ENVIRONMENT_VARIABLES, true);
|
return !fLaunchConfiguration.getAttribute(ILaunchManager.ATTR_APPEND_ENVIRONMENT_VARIABLES, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 3.0 */
|
/** @since 3.0 */
|
||||||
|
@Override
|
||||||
public boolean getUpdateThreadListOnSuspend() throws CoreException {
|
public boolean getUpdateThreadListOnSuspend() throws CoreException {
|
||||||
return fLaunchConfiguration
|
return fLaunchConfiguration
|
||||||
.getAttribute(
|
.getAttribute(
|
||||||
|
@ -372,18 +380,22 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
return fProcess;
|
return fProcess;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public OutputStream getMIOutputStream() {
|
public OutputStream getMIOutputStream() {
|
||||||
return fProcess.getOutputStream();
|
return fProcess.getOutputStream();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@Override
|
||||||
public InputStream getMIInputStream() {
|
public InputStream getMIInputStream() {
|
||||||
return fProcess.getInputStream();
|
return fProcess.getInputStream();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getId() {
|
public String getId() {
|
||||||
return fBackendId;
|
return fBackendId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void interrupt() {
|
public void interrupt() {
|
||||||
if (fProcess instanceof Spawner) {
|
if (fProcess instanceof Spawner) {
|
||||||
Spawner gdbSpawner = (Spawner) fProcess;
|
Spawner gdbSpawner = (Spawner) fProcess;
|
||||||
|
@ -405,6 +417,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void interruptAndWait(int timeout, RequestMonitor rm) {
|
public void interruptAndWait(int timeout, RequestMonitor rm) {
|
||||||
if (fProcess instanceof Spawner) {
|
if (fProcess instanceof Spawner) {
|
||||||
Spawner gdbSpawner = (Spawner) fProcess;
|
Spawner gdbSpawner = (Spawner) fProcess;
|
||||||
|
@ -430,6 +443,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void interruptInferiorAndWait(long pid, int timeout, RequestMonitor rm) {
|
public void interruptInferiorAndWait(long pid, int timeout, RequestMonitor rm) {
|
||||||
if (fProcess instanceof Spawner) {
|
if (fProcess instanceof Spawner) {
|
||||||
Spawner gdbSpawner = (Spawner) fProcess;
|
Spawner gdbSpawner = (Spawner) fProcess;
|
||||||
|
@ -441,6 +455,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void destroy() {
|
public void destroy() {
|
||||||
// Don't close the streams ourselves as it may be too early.
|
// Don't close the streams ourselves as it may be too early.
|
||||||
// Wait for the actual user of the streams to close it.
|
// Wait for the actual user of the streams to close it.
|
||||||
|
@ -452,14 +467,17 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public State getState() {
|
public State getState() {
|
||||||
return fBackendState;
|
return fBackendState;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public int getExitCode() {
|
public int getExitCode() {
|
||||||
return fGDBExitValue;
|
return fGDBExitValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public SessionType getSessionType() {
|
public SessionType getSessionType() {
|
||||||
if (fSessionType == null) {
|
if (fSessionType == null) {
|
||||||
fSessionType = LaunchUtils.getSessionType(fLaunchConfiguration);
|
fSessionType = LaunchUtils.getSessionType(fLaunchConfiguration);
|
||||||
|
@ -467,6 +485,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
return fSessionType;
|
return fSessionType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean getIsAttachSession() {
|
public boolean getIsAttachSession() {
|
||||||
if (fAttach == null) {
|
if (fAttach == null) {
|
||||||
fAttach = LaunchUtils.getIsAttach(fLaunchConfiguration);
|
fAttach = LaunchUtils.getIsAttach(fLaunchConfiguration);
|
||||||
|
@ -523,6 +542,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
// Need to do this on the executor for thread-safety
|
// Need to do this on the executor for thread-safety
|
||||||
getExecutor().submit(
|
getExecutor().submit(
|
||||||
new DsfRunnable() {
|
new DsfRunnable() {
|
||||||
|
@Override
|
||||||
public void run() { fBackendState = State.STARTED; }
|
public void run() { fBackendState = State.STARTED; }
|
||||||
});
|
});
|
||||||
// Don't send the backendStarted event yet. We wait until we have registered this service
|
// Don't send the backendStarted event yet. We wait until we have registered this service
|
||||||
|
@ -556,6 +576,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
startGdbJob.schedule();
|
startGdbJob.schedule();
|
||||||
|
|
||||||
getExecutor().schedule(new Runnable() {
|
getExecutor().schedule(new Runnable() {
|
||||||
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
// Only process the event if we have not finished yet (hit the breakpoint).
|
// Only process the event if we have not finished yet (hit the breakpoint).
|
||||||
if (!fGDBLaunchMonitor.fLaunched) {
|
if (!fGDBLaunchMonitor.fLaunched) {
|
||||||
|
@ -593,6 +614,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
// check if the killing of GDB worked.
|
// check if the killing of GDB worked.
|
||||||
getExecutor().submit(
|
getExecutor().submit(
|
||||||
new DsfRunnable() {
|
new DsfRunnable() {
|
||||||
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
destroy();
|
destroy();
|
||||||
|
|
||||||
|
@ -644,6 +666,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
fMonitorJob = new MonitorJob(
|
fMonitorJob = new MonitorJob(
|
||||||
fProcess,
|
fProcess,
|
||||||
new DsfRunnable() {
|
new DsfRunnable() {
|
||||||
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
requestMonitor.done();
|
requestMonitor.done();
|
||||||
}
|
}
|
||||||
|
@ -715,6 +738,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
// Need to do this on the executor for thread-safety
|
// Need to do this on the executor for thread-safety
|
||||||
getExecutor().submit(
|
getExecutor().submit(
|
||||||
new DsfRunnable() {
|
new DsfRunnable() {
|
||||||
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
destroy();
|
destroy();
|
||||||
fBackendState = State.TERMINATED;
|
fBackendState = State.TERMINATED;
|
||||||
|
@ -789,6 +813,7 @@ public class GDBBackend extends AbstractDsfService implements IGDBBackend {
|
||||||
protected IStatus run(IProgressMonitor monitor) {
|
protected IStatus run(IProgressMonitor monitor) {
|
||||||
getExecutor().submit(
|
getExecutor().submit(
|
||||||
new DsfRunnable() {
|
new DsfRunnable() {
|
||||||
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
fInterruptFailedJob = null;
|
fInterruptFailedJob = null;
|
||||||
fRequestMonitor.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, IDsfStatusConstants.REQUEST_FAILED, "Interrupt failed.", null)); //$NON-NLS-1$
|
fRequestMonitor.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, IDsfStatusConstants.REQUEST_FAILED, "Interrupt failed.", null)); //$NON-NLS-1$
|
||||||
|
|
|
@ -230,6 +230,7 @@ public class GDBProcesses extends MIProcesses implements IGDBProcesses {
|
||||||
/**
|
/**
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void attachDebuggerToProcess(final IProcessDMContext procCtx, String binaryPath, final DataRequestMonitor<IDMContext> rm) {
|
public void attachDebuggerToProcess(final IProcessDMContext procCtx, String binaryPath, final DataRequestMonitor<IDMContext> rm) {
|
||||||
final IMIContainerDMContext containerDmc = createContainerContext(procCtx, MIProcesses.UNIQUE_GROUP_ID);
|
final IMIContainerDMContext containerDmc = createContainerContext(procCtx, MIProcesses.UNIQUE_GROUP_ID);
|
||||||
|
|
||||||
|
@ -406,12 +407,14 @@ public class GDBProcesses extends MIProcesses implements IGDBProcesses {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public IMIExecutionDMContext[] getExecutionContexts(IMIContainerDMContext containerDmc) {
|
public IMIExecutionDMContext[] getExecutionContexts(IMIContainerDMContext containerDmc) {
|
||||||
assert false; // This is not being used before GDB 7.0
|
assert false; // This is not being used before GDB 7.0
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public void canRestart(IContainerDMContext containerDmc, DataRequestMonitor<Boolean> rm) {
|
public void canRestart(IContainerDMContext containerDmc, DataRequestMonitor<Boolean> rm) {
|
||||||
if (fBackend.getIsAttachSession() || fBackend.getSessionType() == SessionType.CORE) {
|
if (fBackend.getIsAttachSession() || fBackend.getSessionType() == SessionType.CORE) {
|
||||||
rm.setData(false);
|
rm.setData(false);
|
||||||
|
@ -436,6 +439,7 @@ public class GDBProcesses extends MIProcesses implements IGDBProcesses {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public void restart(IContainerDMContext containerDmc, Map<String, Object> attributes, DataRequestMonitor<IContainerDMContext> rm) {
|
public void restart(IContainerDMContext containerDmc, Map<String, Object> attributes, DataRequestMonitor<IContainerDMContext> rm) {
|
||||||
// Before performing the restart, check if the process is properly suspended.
|
// Before performing the restart, check if the process is properly suspended.
|
||||||
// Don't need to worry about non-stop before GDB 7.0, so we can simply
|
// Don't need to worry about non-stop before GDB 7.0, so we can simply
|
||||||
|
@ -456,6 +460,7 @@ public class GDBProcesses extends MIProcesses implements IGDBProcesses {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public void start(IContainerDMContext containerDmc, Map<String, Object> attributes, DataRequestMonitor<IContainerDMContext> rm) {
|
public void start(IContainerDMContext containerDmc, Map<String, Object> attributes, DataRequestMonitor<IContainerDMContext> rm) {
|
||||||
startOrRestart(containerDmc, attributes, false, rm);
|
startOrRestart(containerDmc, attributes, false, rm);
|
||||||
}
|
}
|
||||||
|
@ -518,6 +523,7 @@ public class GDBProcesses extends MIProcesses implements IGDBProcesses {
|
||||||
// Add the inferior to the launch.
|
// Add the inferior to the launch.
|
||||||
// This cannot be done on the executor or things deadlock.
|
// This cannot be done on the executor or things deadlock.
|
||||||
DebugPlugin.getDefault().asyncExec(new Runnable() {
|
DebugPlugin.getDefault().asyncExec(new Runnable() {
|
||||||
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
if (restart) {
|
if (restart) {
|
||||||
// For a restart, remove the old inferior
|
// For a restart, remove the old inferior
|
||||||
|
|
|
@ -149,6 +149,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
* Returns the GDB/MI thread identifier of this context.
|
* Returns the GDB/MI thread identifier of this context.
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public int getThreadId(){
|
public int getThreadId(){
|
||||||
try {
|
try {
|
||||||
return Integer.parseInt(fThreadId);
|
return Integer.parseInt(fThreadId);
|
||||||
|
@ -205,6 +206,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
/**
|
/**
|
||||||
* Returns the GDB/MI thread group identifier of this context.
|
* Returns the GDB/MI thread group identifier of this context.
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public String getGroupId(){ return fId; }
|
public String getGroupId(){ return fId; }
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -299,6 +301,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
fId = id;
|
fId = id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getProcId() { return fId; }
|
public String getProcId() { return fId; }
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -352,8 +355,13 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
fId = id;
|
fId = id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getId() { return fId; }
|
public String getId() { return fId; }
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getName() { return fName; }
|
public String getName() { return fName; }
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean isDebuggerAttached() {
|
public boolean isDebuggerAttached() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -379,14 +387,21 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
fOwner = owner;
|
fOwner = owner;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getId() { return getProcId(); }
|
public String getId() { return getProcId(); }
|
||||||
public String getName() { return fName; }
|
|
||||||
public boolean isDebuggerAttached() {
|
@Override
|
||||||
|
public String getName() { return fName; }
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isDebuggerAttached() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String[] getCores() { return fCores; }
|
public String[] getCores() { return fCores; }
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getOwner() { return fOwner; }
|
public String getOwner() { return fOwner; }
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -622,25 +637,30 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IThreadDMContext createThreadContext(IProcessDMContext processDmc, String threadId) {
|
public IThreadDMContext createThreadContext(IProcessDMContext processDmc, String threadId) {
|
||||||
return new MIThreadDMC(getSession().getId(), processDmc, threadId);
|
return new MIThreadDMC(getSession().getId(), processDmc, threadId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IProcessDMContext createProcessContext(ICommandControlDMContext controlDmc, String pid) {
|
public IProcessDMContext createProcessContext(ICommandControlDMContext controlDmc, String pid) {
|
||||||
return new MIProcessDMC(getSession().getId(), controlDmc, pid);
|
return new MIProcessDMC(getSession().getId(), controlDmc, pid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IMIExecutionDMContext createExecutionContext(IContainerDMContext containerDmc,
|
public IMIExecutionDMContext createExecutionContext(IContainerDMContext containerDmc,
|
||||||
IThreadDMContext threadDmc,
|
IThreadDMContext threadDmc,
|
||||||
String threadId) {
|
String threadId) {
|
||||||
return new MIExecutionDMC(getSession().getId(), containerDmc, threadDmc, threadId);
|
return new MIExecutionDMC(getSession().getId(), containerDmc, threadDmc, threadId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IMIContainerDMContext createContainerContext(IProcessDMContext processDmc,
|
public IMIContainerDMContext createContainerContext(IProcessDMContext processDmc,
|
||||||
String groupId) {
|
String groupId) {
|
||||||
return new GDBContainerDMC(getSession().getId(), processDmc, groupId);
|
return new GDBContainerDMC(getSession().getId(), processDmc, groupId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IMIContainerDMContext createContainerContextFromThreadId(ICommandControlDMContext controlDmc, String threadId) {
|
public IMIContainerDMContext createContainerContextFromThreadId(ICommandControlDMContext controlDmc, String threadId) {
|
||||||
String groupId = getThreadToGroupMap().get(threadId);
|
String groupId = getThreadToGroupMap().get(threadId);
|
||||||
if (groupId == null) {
|
if (groupId == null) {
|
||||||
|
@ -664,6 +684,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public IMIContainerDMContext createContainerContextFromGroupId(ICommandControlDMContext controlDmc, String groupId) {
|
public IMIContainerDMContext createContainerContextFromGroupId(ICommandControlDMContext controlDmc, String groupId) {
|
||||||
if (groupId == null || groupId.length() == 0) {
|
if (groupId == null || groupId.length() == 0) {
|
||||||
// This happens when we are doing non-attach, so for GDB < 7.2, we know that in that case
|
// This happens when we are doing non-attach, so for GDB < 7.2, we know that in that case
|
||||||
|
@ -686,6 +707,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return createContainerContext(processDmc, groupId);
|
return createContainerContext(processDmc, groupId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IMIExecutionDMContext[] getExecutionContexts(IMIContainerDMContext containerDmc) {
|
public IMIExecutionDMContext[] getExecutionContexts(IMIContainerDMContext containerDmc) {
|
||||||
String groupId = containerDmc.getGroupId();
|
String groupId = containerDmc.getGroupId();
|
||||||
List<IMIExecutionDMContext> execDmcList = new ArrayList<IMIExecutionDMContext>();
|
List<IMIExecutionDMContext> execDmcList = new ArrayList<IMIExecutionDMContext>();
|
||||||
|
@ -704,6 +726,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return execDmcList.toArray(new IMIExecutionDMContext[0]);
|
return execDmcList.toArray(new IMIExecutionDMContext[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getExecutionData(IThreadDMContext dmc, final DataRequestMonitor<IThreadDMData> rm) {
|
public void getExecutionData(IThreadDMContext dmc, final DataRequestMonitor<IThreadDMData> rm) {
|
||||||
if (dmc instanceof IMIProcessDMContext) {
|
if (dmc instanceof IMIProcessDMContext) {
|
||||||
String id = ((IMIProcessDMContext)dmc).getProcId();
|
String id = ((IMIProcessDMContext)dmc).getProcId();
|
||||||
|
@ -775,6 +798,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getDebuggingContext(IThreadDMContext dmc, DataRequestMonitor<IDMContext> rm) {
|
public void getDebuggingContext(IThreadDMContext dmc, DataRequestMonitor<IDMContext> rm) {
|
||||||
if (dmc instanceof MIProcessDMC) {
|
if (dmc instanceof MIProcessDMC) {
|
||||||
MIProcessDMC procDmc = (MIProcessDMC)dmc;
|
MIProcessDMC procDmc = (MIProcessDMC)dmc;
|
||||||
|
@ -797,11 +821,13 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return fBackend.getIsAttachSession() && fNumConnected == 0;
|
return fBackend.getIsAttachSession() && fNumConnected == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void isDebuggerAttachSupported(IDMContext dmc, DataRequestMonitor<Boolean> rm) {
|
public void isDebuggerAttachSupported(IDMContext dmc, DataRequestMonitor<Boolean> rm) {
|
||||||
rm.setData(doIsDebuggerAttachSupported());
|
rm.setData(doIsDebuggerAttachSupported());
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void attachDebuggerToProcess(IProcessDMContext procCtx, DataRequestMonitor<IDMContext> rm) {
|
public void attachDebuggerToProcess(IProcessDMContext procCtx, DataRequestMonitor<IDMContext> rm) {
|
||||||
attachDebuggerToProcess(procCtx, null, rm);
|
attachDebuggerToProcess(procCtx, null, rm);
|
||||||
}
|
}
|
||||||
|
@ -809,6 +835,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
/**
|
/**
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void attachDebuggerToProcess(final IProcessDMContext procCtx, final String binaryPath, final DataRequestMonitor<IDMContext> dataRm) {
|
public void attachDebuggerToProcess(final IProcessDMContext procCtx, final String binaryPath, final DataRequestMonitor<IDMContext> dataRm) {
|
||||||
if (procCtx instanceof IMIProcessDMContext) {
|
if (procCtx instanceof IMIProcessDMContext) {
|
||||||
if (!doIsDebuggerAttachSupported()) {
|
if (!doIsDebuggerAttachSupported()) {
|
||||||
|
@ -920,11 +947,13 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return fNumConnected > 0;
|
return fNumConnected > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canDetachDebuggerFromProcess(IDMContext dmc, DataRequestMonitor<Boolean> rm) {
|
public void canDetachDebuggerFromProcess(IDMContext dmc, DataRequestMonitor<Boolean> rm) {
|
||||||
rm.setData(doCanDetachDebuggerFromProcess());
|
rm.setData(doCanDetachDebuggerFromProcess());
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void detachDebuggerFromProcess(final IDMContext dmc, final RequestMonitor rm) {
|
public void detachDebuggerFromProcess(final IDMContext dmc, final RequestMonitor rm) {
|
||||||
|
|
||||||
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
|
@ -951,11 +980,13 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canTerminate(IThreadDMContext thread, DataRequestMonitor<Boolean> rm) {
|
public void canTerminate(IThreadDMContext thread, DataRequestMonitor<Boolean> rm) {
|
||||||
rm.setData(true);
|
rm.setData(true);
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void isDebugNewProcessSupported(IDMContext dmc, DataRequestMonitor<Boolean> rm) {
|
public void isDebugNewProcessSupported(IDMContext dmc, DataRequestMonitor<Boolean> rm) {
|
||||||
rm.setData(doIsDebugNewProcessSupported());
|
rm.setData(doIsDebugNewProcessSupported());
|
||||||
rm.done();
|
rm.done();
|
||||||
|
@ -966,6 +997,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void debugNewProcess(IDMContext dmc, String file,
|
public void debugNewProcess(IDMContext dmc, String file,
|
||||||
Map<String, Object> attributes, DataRequestMonitor<IDMContext> rm) {
|
Map<String, Object> attributes, DataRequestMonitor<IDMContext> rm) {
|
||||||
|
|
||||||
|
@ -997,6 +1029,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return new DebugNewProcessSequence(executor, isInitial, dmc, file, attributes, rm);
|
return new DebugNewProcessSequence(executor, isInitial, dmc, file, attributes, rm);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getProcessesBeingDebugged(final IDMContext dmc, final DataRequestMonitor<IDMContext[]> rm) {
|
public void getProcessesBeingDebugged(final IDMContext dmc, final DataRequestMonitor<IDMContext[]> rm) {
|
||||||
final ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
final ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
final IMIContainerDMContext containerDmc = DMContexts.getAncestorOfType(dmc, IMIContainerDMContext.class);
|
final IMIContainerDMContext containerDmc = DMContexts.getAncestorOfType(dmc, IMIContainerDMContext.class);
|
||||||
|
@ -1087,6 +1120,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return containerDmcs.toArray(new IMIContainerDMContext[containerDmcs.size()]);
|
return containerDmcs.toArray(new IMIContainerDMContext[containerDmcs.size()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getRunningProcesses(final IDMContext dmc, final DataRequestMonitor<IProcessDMContext[]> rm) {
|
public void getRunningProcesses(final IDMContext dmc, final DataRequestMonitor<IProcessDMContext[]> rm) {
|
||||||
final ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
final ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
if (controlDmc != null) {
|
if (controlDmc != null) {
|
||||||
|
@ -1171,11 +1205,13 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
return procDmcs;
|
return procDmcs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void isRunNewProcessSupported(IDMContext dmc, DataRequestMonitor<Boolean> rm) {
|
public void isRunNewProcessSupported(IDMContext dmc, DataRequestMonitor<Boolean> rm) {
|
||||||
rm.setData(false);
|
rm.setData(false);
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void runNewProcess(IDMContext dmc, String file,
|
public void runNewProcess(IDMContext dmc, String file,
|
||||||
Map<String, Object> attributes, DataRequestMonitor<IProcessDMContext> rm) {
|
Map<String, Object> attributes, DataRequestMonitor<IProcessDMContext> rm) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID,
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID,
|
||||||
|
@ -1183,6 +1219,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void terminate(IThreadDMContext thread, final RequestMonitor rm) {
|
public void terminate(IThreadDMContext thread, final RequestMonitor rm) {
|
||||||
// If we will terminate GDB as soon as the last inferior terminates, then let's
|
// If we will terminate GDB as soon as the last inferior terminates, then let's
|
||||||
// just terminate GDB itself if this is the last inferior.
|
// just terminate GDB itself if this is the last inferior.
|
||||||
|
@ -1223,6 +1260,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public void canRestart(IContainerDMContext containerDmc, DataRequestMonitor<Boolean> rm) {
|
public void canRestart(IContainerDMContext containerDmc, DataRequestMonitor<Boolean> rm) {
|
||||||
if (fBackend.getIsAttachSession() || fBackend.getSessionType() == SessionType.CORE) {
|
if (fBackend.getIsAttachSession() || fBackend.getSessionType() == SessionType.CORE) {
|
||||||
rm.setData(false);
|
rm.setData(false);
|
||||||
|
@ -1263,6 +1301,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public void restart(IContainerDMContext containerDmc, final Map<String, Object> attributes, final DataRequestMonitor<IContainerDMContext> rm) {
|
public void restart(IContainerDMContext containerDmc, final Map<String, Object> attributes, final DataRequestMonitor<IContainerDMContext> rm) {
|
||||||
fProcRestarting = true;
|
fProcRestarting = true;
|
||||||
|
|
||||||
|
@ -1313,6 +1352,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public void start(IContainerDMContext containerDmc, Map<String, Object> attributes, DataRequestMonitor<IContainerDMContext> rm) {
|
public void start(IContainerDMContext containerDmc, Map<String, Object> attributes, DataRequestMonitor<IContainerDMContext> rm) {
|
||||||
startOrRestart(containerDmc, attributes, false, rm);
|
startOrRestart(containerDmc, attributes, false, rm);
|
||||||
}
|
}
|
||||||
|
@ -1425,6 +1465,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void flushCache(IDMContext context) {
|
public void flushCache(IDMContext context) {
|
||||||
fContainerCommandCache.reset(context);
|
fContainerCommandCache.reset(context);
|
||||||
fThreadCommandCache.reset(context);
|
fThreadCommandCache.reset(context);
|
||||||
|
@ -1434,6 +1475,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService
|
||||||
* Catch =thread-created/exited and =thread-group-exited events to update our
|
* Catch =thread-created/exited and =thread-group-exited events to update our
|
||||||
* groupId to threadId map.
|
* groupId to threadId map.
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void eventReceived(Object output) {
|
public void eventReceived(Object output) {
|
||||||
for (MIOOBRecord oobr : ((MIOutput)output).getMIOOBRecords()) {
|
for (MIOOBRecord oobr : ((MIOutput)output).getMIOOBRecords()) {
|
||||||
if (oobr instanceof MINotifyAsyncOutput) {
|
if (oobr instanceof MINotifyAsyncOutput) {
|
||||||
|
|
|
@ -57,8 +57,10 @@ public class GDBProcesses_7_1 extends GDBProcesses_7_0 {
|
||||||
fCores = cores;
|
fCores = cores;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String[] getCores() { return fCores; }
|
public String[] getCores() { return fCores; }
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getOwner() { return null; }
|
public String getOwner() { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -251,12 +251,14 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 2.0 */
|
/** @since 2.0 */
|
||||||
|
@Override
|
||||||
public void canReverseResume(IExecutionDMContext context, DataRequestMonitor<Boolean> rm) {
|
public void canReverseResume(IExecutionDMContext context, DataRequestMonitor<Boolean> rm) {
|
||||||
rm.setData(fReverseModeEnabled && doCanResume(context));
|
rm.setData(fReverseModeEnabled && doCanResume(context));
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 2.0 */
|
/** @since 2.0 */
|
||||||
|
@Override
|
||||||
public void canReverseStep(final IExecutionDMContext context, StepType stepType, final DataRequestMonitor<Boolean> rm) {
|
public void canReverseStep(final IExecutionDMContext context, StepType stepType, final DataRequestMonitor<Boolean> rm) {
|
||||||
if (context instanceof IContainerDMContext) {
|
if (context instanceof IContainerDMContext) {
|
||||||
rm.setData(false);
|
rm.setData(false);
|
||||||
|
@ -299,11 +301,13 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 2.0 */
|
/** @since 2.0 */
|
||||||
|
@Override
|
||||||
public boolean isReverseStepping(IExecutionDMContext context) {
|
public boolean isReverseStepping(IExecutionDMContext context) {
|
||||||
return !isTerminated() && fReverseStepping;
|
return !isTerminated() && fReverseStepping;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 2.0 */
|
/** @since 2.0 */
|
||||||
|
@Override
|
||||||
public void reverseResume(final IExecutionDMContext context, final RequestMonitor rm) {
|
public void reverseResume(final IExecutionDMContext context, final RequestMonitor rm) {
|
||||||
if (fReverseModeEnabled && doCanResume(context)) {
|
if (fReverseModeEnabled && doCanResume(context)) {
|
||||||
ICommand<MIInfo> cmd = null;
|
ICommand<MIInfo> cmd = null;
|
||||||
|
@ -340,6 +344,7 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 2.0 */
|
/** @since 2.0 */
|
||||||
|
@Override
|
||||||
public void reverseStep(final IExecutionDMContext context, StepType stepType, final RequestMonitor rm) {
|
public void reverseStep(final IExecutionDMContext context, StepType stepType, final RequestMonitor rm) {
|
||||||
assert context != null;
|
assert context != null;
|
||||||
|
|
||||||
|
@ -408,18 +413,21 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 2.0 */
|
/** @since 2.0 */
|
||||||
|
@Override
|
||||||
public void canEnableReverseMode(ICommandControlDMContext context, DataRequestMonitor<Boolean> rm) {
|
public void canEnableReverseMode(ICommandControlDMContext context, DataRequestMonitor<Boolean> rm) {
|
||||||
rm.setData(fReverseSupported);
|
rm.setData(fReverseSupported);
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 2.0 */
|
/** @since 2.0 */
|
||||||
|
@Override
|
||||||
public void isReverseModeEnabled(ICommandControlDMContext context, DataRequestMonitor<Boolean> rm) {
|
public void isReverseModeEnabled(ICommandControlDMContext context, DataRequestMonitor<Boolean> rm) {
|
||||||
rm.setData(fReverseModeEnabled);
|
rm.setData(fReverseModeEnabled);
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 2.0 */
|
/** @since 2.0 */
|
||||||
|
@Override
|
||||||
public void enableReverseMode(ICommandControlDMContext context, final boolean enable, final RequestMonitor rm) {
|
public void enableReverseMode(ICommandControlDMContext context, final boolean enable, final RequestMonitor rm) {
|
||||||
if (!fReverseSupported) {
|
if (!fReverseSupported) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, NOT_SUPPORTED, "Reverse mode is not supported.", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, NOT_SUPPORTED, "Reverse mode is not supported.", null)); //$NON-NLS-1$
|
||||||
|
|
|
@ -114,7 +114,11 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
fReason = reason;
|
fReason = reason;
|
||||||
fDetails = details;
|
fDetails = details;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public StateChangeReason getStateChangeReason() { return fReason; }
|
public StateChangeReason getStateChangeReason() { return fReason; }
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getDetails() { return fDetails; }
|
public String getDetails() { return fDetails; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -137,6 +141,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
fMIInfo = miInfo;
|
fMIInfo = miInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public T getMIEvent() { return fMIInfo; }
|
public T getMIEvent() { return fMIInfo; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -152,6 +157,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
super(ctx, miInfo);
|
super(ctx, miInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public StateChangeReason getReason() {
|
public StateChangeReason getReason() {
|
||||||
if (getMIEvent() instanceof MICatchpointHitEvent) { // must precede MIBreakpointHitEvent
|
if (getMIEvent() instanceof MICatchpointHitEvent) { // must precede MIBreakpointHitEvent
|
||||||
return StateChangeReason.EVENT_BREAKPOINT;
|
return StateChangeReason.EVENT_BREAKPOINT;
|
||||||
|
@ -212,6 +218,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
fBreakpoints = new IBreakpointDMContext[] { bpCtx };
|
fBreakpoints = new IBreakpointDMContext[] { bpCtx };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public IBreakpointDMContext[] getBreakpoints() {
|
public IBreakpointDMContext[] getBreakpoints() {
|
||||||
return fBreakpoints;
|
return fBreakpoints;
|
||||||
}
|
}
|
||||||
|
@ -228,6 +235,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
super(ctx, miInfo);
|
super(ctx, miInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public StateChangeReason getReason() {
|
public StateChangeReason getReason() {
|
||||||
if (getMIEvent() != null) {
|
if (getMIEvent() != null) {
|
||||||
switch(getMIEvent().getType()) {
|
switch(getMIEvent().getType()) {
|
||||||
|
@ -431,6 +439,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
// Suspend
|
// Suspend
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean isSuspended(IExecutionDMContext context) {
|
public boolean isSuspended(IExecutionDMContext context) {
|
||||||
|
|
||||||
// Thread case
|
// Thread case
|
||||||
|
@ -458,6 +467,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canSuspend(IExecutionDMContext context, DataRequestMonitor<Boolean> rm) {
|
public void canSuspend(IExecutionDMContext context, DataRequestMonitor<Boolean> rm) {
|
||||||
if (fRunControlOperationsEnabled == false) {
|
if (fRunControlOperationsEnabled == false) {
|
||||||
rm.setData(false);
|
rm.setData(false);
|
||||||
|
@ -495,6 +505,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
return (threadState == null) ? false : !fTerminated && !threadState.fSuspended;
|
return (threadState == null) ? false : !fTerminated && !threadState.fSuspended;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void suspend(IExecutionDMContext context, final RequestMonitor rm) {
|
public void suspend(IExecutionDMContext context, final RequestMonitor rm) {
|
||||||
|
|
||||||
assert context != null;
|
assert context != null;
|
||||||
|
@ -539,6 +550,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
// Resume
|
// Resume
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canResume(IExecutionDMContext context, DataRequestMonitor<Boolean> rm) {
|
public void canResume(IExecutionDMContext context, DataRequestMonitor<Boolean> rm) {
|
||||||
if (fRunControlOperationsEnabled == false) {
|
if (fRunControlOperationsEnabled == false) {
|
||||||
rm.setData(false);
|
rm.setData(false);
|
||||||
|
@ -576,6 +588,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
return (threadState == null) ? false : !fTerminated && threadState.fSuspended && !threadState.fResumePending;
|
return (threadState == null) ? false : !fTerminated && threadState.fSuspended && !threadState.fResumePending;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void resume(IExecutionDMContext context, final RequestMonitor rm) {
|
public void resume(IExecutionDMContext context, final RequestMonitor rm) {
|
||||||
|
|
||||||
assert context != null;
|
assert context != null;
|
||||||
|
@ -635,6 +648,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
// Step
|
// Step
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean isStepping(IExecutionDMContext context) {
|
public boolean isStepping(IExecutionDMContext context) {
|
||||||
|
|
||||||
// If it's a thread, just look it up
|
// If it's a thread, just look it up
|
||||||
|
@ -647,6 +661,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canStep(final IExecutionDMContext context, StepType stepType, final DataRequestMonitor<Boolean> rm) {
|
public void canStep(final IExecutionDMContext context, StepType stepType, final DataRequestMonitor<Boolean> rm) {
|
||||||
if (fRunControlOperationsEnabled == false) {
|
if (fRunControlOperationsEnabled == false) {
|
||||||
rm.setData(false);
|
rm.setData(false);
|
||||||
|
@ -687,6 +702,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void step(IExecutionDMContext context, StepType stepType, final RequestMonitor rm) {
|
public void step(IExecutionDMContext context, StepType stepType, final RequestMonitor rm) {
|
||||||
|
|
||||||
assert context != null;
|
assert context != null;
|
||||||
|
@ -874,6 +890,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
// Support functions
|
// Support functions
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getExecutionContexts(final IContainerDMContext containerDmc, final DataRequestMonitor<IExecutionDMContext[]> rm) {
|
public void getExecutionContexts(final IContainerDMContext containerDmc, final DataRequestMonitor<IExecutionDMContext[]> rm) {
|
||||||
IMIProcesses procService = getServicesTracker().getService(IMIProcesses.class);
|
IMIProcesses procService = getServicesTracker().getService(IMIProcesses.class);
|
||||||
procService.getProcessesBeingDebugged(
|
procService.getProcessesBeingDebugged(
|
||||||
|
@ -891,6 +908,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getExecutionData(IExecutionDMContext dmc, DataRequestMonitor<IExecutionDMData> rm) {
|
public void getExecutionData(IExecutionDMContext dmc, DataRequestMonitor<IExecutionDMData> rm) {
|
||||||
MIThreadRunState threadState = fThreadRunStates.get(dmc);
|
MIThreadRunState threadState = fThreadRunStates.get(dmc);
|
||||||
if (threadState == null) {
|
if (threadState == null) {
|
||||||
|
@ -1134,6 +1152,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void executeWithTargetAvailable(IDMContext ctx, final Sequence.Step[] steps, final RequestMonitor rm) {
|
public void executeWithTargetAvailable(IDMContext ctx, final Sequence.Step[] steps, final RequestMonitor rm) {
|
||||||
if (!fOngoingOperation) {
|
if (!fOngoingOperation) {
|
||||||
// We are the first operation of this kind currently requested
|
// We are the first operation of this kind currently requested
|
||||||
|
@ -1610,6 +1629,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
public void eventDispatched(ITraceRecordSelectedChangedDMEvent e) {
|
public void eventDispatched(ITraceRecordSelectedChangedDMEvent e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void flushCache(IDMContext context) {
|
public void flushCache(IDMContext context) {
|
||||||
refreshThreadStates();
|
refreshThreadStates();
|
||||||
}
|
}
|
||||||
|
@ -1693,6 +1713,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void canRunToLine(IExecutionDMContext context, String sourceFile,
|
public void canRunToLine(IExecutionDMContext context, String sourceFile,
|
||||||
int lineNumber, DataRequestMonitor<Boolean> rm) {
|
int lineNumber, DataRequestMonitor<Boolean> rm) {
|
||||||
canResume(context, rm);
|
canResume(context, rm);
|
||||||
|
@ -1704,6 +1725,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void runToLine(IExecutionDMContext context, String sourceFile,
|
public void runToLine(IExecutionDMContext context, String sourceFile,
|
||||||
int lineNumber, boolean skipBreakpoints, RequestMonitor rm) {
|
int lineNumber, boolean skipBreakpoints, RequestMonitor rm) {
|
||||||
|
|
||||||
|
@ -1719,6 +1741,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void canRunToAddress(IExecutionDMContext context, IAddress address,
|
public void canRunToAddress(IExecutionDMContext context, IAddress address,
|
||||||
DataRequestMonitor<Boolean> rm) {
|
DataRequestMonitor<Boolean> rm) {
|
||||||
canResume(context, rm);
|
canResume(context, rm);
|
||||||
|
@ -1730,6 +1753,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void runToAddress(IExecutionDMContext context, IAddress address,
|
public void runToAddress(IExecutionDMContext context, IAddress address,
|
||||||
boolean skipBreakpoints, RequestMonitor rm) {
|
boolean skipBreakpoints, RequestMonitor rm) {
|
||||||
runToLocation(context, "*0x" + address.toString(16), skipBreakpoints, rm); //$NON-NLS-1$
|
runToLocation(context, "*0x" + address.toString(16), skipBreakpoints, rm); //$NON-NLS-1$
|
||||||
|
@ -1741,6 +1765,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void canMoveToLine(IExecutionDMContext context, String sourceFile,
|
public void canMoveToLine(IExecutionDMContext context, String sourceFile,
|
||||||
int lineNumber, boolean resume, DataRequestMonitor<Boolean> rm) {
|
int lineNumber, boolean resume, DataRequestMonitor<Boolean> rm) {
|
||||||
canResume(context, rm); }
|
canResume(context, rm); }
|
||||||
|
@ -1751,6 +1776,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void moveToLine(IExecutionDMContext context, String sourceFile,
|
public void moveToLine(IExecutionDMContext context, String sourceFile,
|
||||||
int lineNumber, boolean resume, RequestMonitor rm) {
|
int lineNumber, boolean resume, RequestMonitor rm) {
|
||||||
IMIExecutionDMContext threadExecDmc = DMContexts.getAncestorOfType(context, IMIExecutionDMContext.class);
|
IMIExecutionDMContext threadExecDmc = DMContexts.getAncestorOfType(context, IMIExecutionDMContext.class);
|
||||||
|
@ -1784,6 +1810,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
/**
|
/**
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void canMoveToAddress(IExecutionDMContext context, IAddress address,
|
public void canMoveToAddress(IExecutionDMContext context, IAddress address,
|
||||||
boolean resume, DataRequestMonitor<Boolean> rm) {
|
boolean resume, DataRequestMonitor<Boolean> rm) {
|
||||||
canResume(context, rm);
|
canResume(context, rm);
|
||||||
|
@ -1793,6 +1820,7 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
* @see org.eclipse.cdt.dsf.debug.service.IRunControl2#moveToAddress(org.eclipse.cdt.dsf.debug.service.IRunControl.IExecutionDMContext, org.eclipse.cdt.core.IAddress, boolean, org.eclipse.cdt.dsf.concurrent.RequestMonitor)
|
* @see org.eclipse.cdt.dsf.debug.service.IRunControl2#moveToAddress(org.eclipse.cdt.dsf.debug.service.IRunControl.IExecutionDMContext, org.eclipse.cdt.core.IAddress, boolean, org.eclipse.cdt.dsf.concurrent.RequestMonitor)
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void moveToAddress(IExecutionDMContext context, IAddress address,
|
public void moveToAddress(IExecutionDMContext context, IAddress address,
|
||||||
boolean resume, RequestMonitor rm) {
|
boolean resume, RequestMonitor rm) {
|
||||||
IMIExecutionDMContext threadExecDmc = DMContexts.getAncestorOfType(context, IMIExecutionDMContext.class);
|
IMIExecutionDMContext threadExecDmc = DMContexts.getAncestorOfType(context, IMIExecutionDMContext.class);
|
||||||
|
@ -1821,11 +1849,13 @@ public class GDBRunControl_7_0_NS extends AbstractDsfService implements IMIRunCo
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public IRunMode getRunMode() {
|
public IRunMode getRunMode() {
|
||||||
return MIRunMode.NON_STOP;
|
return MIRunMode.NON_STOP;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public boolean isTargetAcceptingCommands() {
|
public boolean isTargetAcceptingCommands() {
|
||||||
// Always accepting commands in non-stop mode
|
// Always accepting commands in non-stop mode
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -74,6 +74,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public String getRecordId() {
|
public String getRecordId() {
|
||||||
return fReference;
|
return fReference;
|
||||||
}
|
}
|
||||||
|
@ -120,6 +121,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public String getRecordId() {
|
public String getRecordId() {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@ -160,14 +162,17 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
fValue = value;
|
fValue = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getName() {
|
public String getName() {
|
||||||
return fName;
|
return fName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getValue() {
|
public String getValue() {
|
||||||
return fValue;
|
return fValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getInitialValue() {
|
public String getInitialValue() {
|
||||||
return fInitialValue;
|
return fInitialValue;
|
||||||
}
|
}
|
||||||
|
@ -186,18 +191,22 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
fFrameNumber = frameNumber;
|
fFrameNumber = frameNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getContent() {
|
public String getContent() {
|
||||||
return fContent;
|
return fContent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getTracepointNumber() {
|
public String getTracepointNumber() {
|
||||||
return fTracepointNum;
|
return fTracepointNum;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getRecordId() {
|
public String getRecordId() {
|
||||||
return fFrameNumber;
|
return fFrameNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getTimestamp() {
|
public String getTimestamp() {
|
||||||
return fTimestamp;
|
return fTimestamp;
|
||||||
}
|
}
|
||||||
|
@ -241,30 +250,37 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
fTracingSupported = false;
|
fTracingSupported = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public int getFreeBufferSize() {
|
public int getFreeBufferSize() {
|
||||||
return fFreeBufferSize;
|
return fFreeBufferSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public int getNumberOfCollectedFrame() {
|
public int getNumberOfCollectedFrame() {
|
||||||
return fNumberOfCollectedFrames;
|
return fNumberOfCollectedFrames;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public int getTotalBufferSize() {
|
public int getTotalBufferSize() {
|
||||||
return fTotalBufferSize;
|
return fTotalBufferSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean isTracingActive() {
|
public boolean isTracingActive() {
|
||||||
return fTracingActive;
|
return fTracingActive;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean isTracingSupported() {
|
public boolean isTracingSupported() {
|
||||||
return fTracingSupported;
|
return fTracingSupported;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public STOP_REASON_ENUM getStopReason() {
|
public STOP_REASON_ENUM getStopReason() {
|
||||||
return fStopReason;
|
return fStopReason;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public Integer getStoppingTracepoint() {
|
public Integer getStoppingTracepoint() {
|
||||||
if (fStopReason == null) {
|
if (fStopReason == null) {
|
||||||
return null;
|
return null;
|
||||||
|
@ -338,6 +354,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
fTracingSupported = supported;
|
fTracingSupported = supported;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean isTracingSupported() {
|
public boolean isTracingSupported() {
|
||||||
return fTracingSupported;
|
return fTracingSupported;
|
||||||
}
|
}
|
||||||
|
@ -366,6 +383,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
fVisualModeEnabled = !(context instanceof InvalidTraceRecordDMContext);
|
fVisualModeEnabled = !(context instanceof InvalidTraceRecordDMContext);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public boolean isVisualizationModeEnabled() {
|
public boolean isVisualizationModeEnabled() {
|
||||||
return fVisualModeEnabled;
|
return fVisualModeEnabled;
|
||||||
}
|
}
|
||||||
|
@ -449,6 +467,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
return GdbPlugin.getBundleContext();
|
return GdbPlugin.getBundleContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canStartTracing(ITraceTargetDMContext context, final DataRequestMonitor<Boolean> rm) {
|
public void canStartTracing(ITraceTargetDMContext context, final DataRequestMonitor<Boolean> rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -479,6 +498,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void startTracing(final ITraceTargetDMContext context, final RequestMonitor rm) {
|
public void startTracing(final ITraceTargetDMContext context, final RequestMonitor rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -521,6 +541,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canStopTracing(ITraceTargetDMContext context, DataRequestMonitor<Boolean> rm) {
|
public void canStopTracing(ITraceTargetDMContext context, DataRequestMonitor<Boolean> rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -550,6 +571,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
isTracing(context, rm);
|
isTracing(context, rm);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void stopTracing(final ITraceTargetDMContext context, final RequestMonitor rm) {
|
public void stopTracing(final ITraceTargetDMContext context, final RequestMonitor rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -589,6 +611,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void isTracing(ITraceTargetDMContext context, final DataRequestMonitor<Boolean> rm) {
|
public void isTracing(ITraceTargetDMContext context, final DataRequestMonitor<Boolean> rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -611,6 +634,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canSaveTraceData(ITraceTargetDMContext context, DataRequestMonitor<Boolean> rm) {
|
public void canSaveTraceData(ITraceTargetDMContext context, DataRequestMonitor<Boolean> rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -634,6 +658,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void saveTraceData(final ITraceTargetDMContext context, final String file,
|
public void saveTraceData(final ITraceTargetDMContext context, final String file,
|
||||||
final boolean remoteSave, final RequestMonitor rm) {
|
final boolean remoteSave, final RequestMonitor rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
|
@ -658,6 +683,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void canLoadTraceData(ITraceTargetDMContext context, DataRequestMonitor<Boolean> rm) {
|
public void canLoadTraceData(ITraceTargetDMContext context, DataRequestMonitor<Boolean> rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -672,6 +698,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void loadTraceData(final ITraceTargetDMContext context, final String file, final RequestMonitor rm) {
|
public void loadTraceData(final ITraceTargetDMContext context, final String file, final RequestMonitor rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -712,6 +739,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getTraceStatus(final ITraceTargetDMContext context, final DataRequestMonitor<ITraceStatusDMData> rm) {
|
public void getTraceStatus(final ITraceTargetDMContext context, final DataRequestMonitor<ITraceStatusDMData> rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -780,6 +808,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void createTraceVariable(ITraceTargetDMContext context,
|
public void createTraceVariable(ITraceTargetDMContext context,
|
||||||
String varName,
|
String varName,
|
||||||
String varValue,
|
String varValue,
|
||||||
|
@ -808,6 +837,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getTraceVariables(ITraceTargetDMContext context, final DataRequestMonitor<ITraceVariableDMData[]> rm) {
|
public void getTraceVariables(ITraceTargetDMContext context, final DataRequestMonitor<ITraceVariableDMData[]> rm) {
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, INVALID_STATE, "Invalid context", null)); //$NON-NLS-1$
|
||||||
|
@ -846,10 +876,12 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
* Create a trace record context
|
* Create a trace record context
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public ITraceRecordDMContext createTraceRecordContext(ITraceTargetDMContext ctx, String recordId) {
|
public ITraceRecordDMContext createTraceRecordContext(ITraceTargetDMContext ctx, String recordId) {
|
||||||
return new MITraceRecordDMContext(getSession(), ctx, recordId);
|
return new MITraceRecordDMContext(getSession(), ctx, recordId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public ITraceRecordDMContext createNextRecordContext(ITraceRecordDMContext ctx) {
|
public ITraceRecordDMContext createNextRecordContext(ITraceRecordDMContext ctx) {
|
||||||
ITraceTargetDMContext targetDmc = DMContexts.getAncestorOfType(ctx, ITraceTargetDMContext.class);
|
ITraceTargetDMContext targetDmc = DMContexts.getAncestorOfType(ctx, ITraceTargetDMContext.class);
|
||||||
if (ctx instanceof InvalidTraceRecordDMContext) {
|
if (ctx instanceof InvalidTraceRecordDMContext) {
|
||||||
|
@ -871,6 +903,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public ITraceRecordDMContext createPrevRecordContext(ITraceRecordDMContext ctx) {
|
public ITraceRecordDMContext createPrevRecordContext(ITraceRecordDMContext ctx) {
|
||||||
if (ctx instanceof MITraceRecordDMContext) {
|
if (ctx instanceof MITraceRecordDMContext) {
|
||||||
ITraceTargetDMContext targetDmc = DMContexts.getAncestorOfType(ctx, ITraceTargetDMContext.class);
|
ITraceTargetDMContext targetDmc = DMContexts.getAncestorOfType(ctx, ITraceTargetDMContext.class);
|
||||||
|
@ -889,6 +922,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getCurrentTraceRecordContext(ITraceTargetDMContext context, DataRequestMonitor<ITraceRecordDMContext> drm) {
|
public void getCurrentTraceRecordContext(ITraceTargetDMContext context, DataRequestMonitor<ITraceRecordDMContext> drm) {
|
||||||
if (fCurrentRecordDmc == null) {
|
if (fCurrentRecordDmc == null) {
|
||||||
drm.setData(new InvalidTraceRecordDMContext(getSession(), context));
|
drm.setData(new InvalidTraceRecordDMContext(getSession(), context));
|
||||||
|
@ -898,6 +932,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
drm.done();
|
drm.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void selectTraceRecord(final ITraceRecordDMContext context, final RequestMonitor rm) {
|
public void selectTraceRecord(final ITraceRecordDMContext context, final RequestMonitor rm) {
|
||||||
if (fIsTracingCurrentlySupported == false) {
|
if (fIsTracingCurrentlySupported == false) {
|
||||||
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, NOT_SUPPORTED, "Tracing not supported", null)); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, NOT_SUPPORTED, "Tracing not supported", null)); //$NON-NLS-1$
|
||||||
|
@ -1042,6 +1077,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void getTraceRecordData(final ITraceRecordDMContext context, final DataRequestMonitor<ITraceRecordDMData> rm) {
|
public void getTraceRecordData(final ITraceRecordDMContext context, final DataRequestMonitor<ITraceRecordDMData> rm) {
|
||||||
if (context instanceof MITraceRecordDMContext) {
|
if (context instanceof MITraceRecordDMContext) {
|
||||||
|
|
||||||
|
@ -1082,6 +1118,7 @@ public class GDBTraceControl_7_2 extends AbstractDsfService implements IGDBTrace
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void flushCache(IDMContext context) {
|
public void flushCache(IDMContext context) {
|
||||||
fTraceCache.reset(context);
|
fTraceCache.reset(context);
|
||||||
}
|
}
|
||||||
|
|
|
@ -328,6 +328,7 @@ public class StartOrRestartProcessSequence_7_0 extends ReflectionSequence {
|
||||||
// Add the inferior to the launch.
|
// Add the inferior to the launch.
|
||||||
// This cannot be done on the executor or things deadlock.
|
// This cannot be done on the executor or things deadlock.
|
||||||
DebugPlugin.getDefault().asyncExec(new Runnable() {
|
DebugPlugin.getDefault().asyncExec(new Runnable() {
|
||||||
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
String label = pathLabel;
|
String label = pathLabel;
|
||||||
|
|
||||||
|
|
|
@ -46,7 +46,7 @@ public class GDBBackendCLIProcess extends MIBackendCLIProcess {
|
||||||
// in Debug View. We need to kill inferior too. Fix bug
|
// in Debug View. We need to kill inferior too. Fix bug
|
||||||
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=234467
|
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=234467
|
||||||
//
|
//
|
||||||
getSession().getExecutor().execute(new DsfRunnable() { public void run() {
|
getSession().getExecutor().execute(new DsfRunnable() { @Override public void run() {
|
||||||
if (!DsfSession.isSessionActive(getSession().getId())) return;
|
if (!DsfSession.isSessionActive(getSession().getId())) return;
|
||||||
if (isDisposed()) return;
|
if (isDisposed()) return;
|
||||||
|
|
||||||
|
|
|
@ -169,6 +169,7 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String getId() {
|
public String getId() {
|
||||||
return fMIBackend.getId();
|
return fMIBackend.getId();
|
||||||
}
|
}
|
||||||
|
@ -178,10 +179,12 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
return fControlDmc;
|
return fControlDmc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public ICommandControlDMContext getContext() {
|
public ICommandControlDMContext getContext() {
|
||||||
return fControlDmc;
|
return fControlDmc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void terminate(final RequestMonitor rm) {
|
public void terminate(final RequestMonitor rm) {
|
||||||
if (fTerminated) {
|
if (fTerminated) {
|
||||||
rm.done();
|
rm.done();
|
||||||
|
@ -203,6 +206,7 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
// runnable will kill the task.
|
// runnable will kill the task.
|
||||||
final Future<?> forceQuitTask = getExecutor().schedule(
|
final Future<?> forceQuitTask = getExecutor().schedule(
|
||||||
new DsfRunnable() {
|
new DsfRunnable() {
|
||||||
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
fMIBackend.destroy();
|
fMIBackend.destroy();
|
||||||
rm.done();
|
rm.done();
|
||||||
|
@ -233,6 +237,7 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public AbstractCLIProcess getCLIProcess() {
|
public AbstractCLIProcess getCLIProcess() {
|
||||||
return fCLIProcess;
|
return fCLIProcess;
|
||||||
}
|
}
|
||||||
|
@ -240,11 +245,13 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
/**
|
/**
|
||||||
* @since 2.0
|
* @since 2.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void setTracingStream(OutputStream tracingStream) {
|
public void setTracingStream(OutputStream tracingStream) {
|
||||||
setMITracingStream(tracingStream);
|
setMITracingStream(tracingStream);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @since 3.0 */
|
/** @since 3.0 */
|
||||||
|
@Override
|
||||||
public void setEnvironment(Properties props, boolean clear, final RequestMonitor rm) {
|
public void setEnvironment(Properties props, boolean clear, final RequestMonitor rm) {
|
||||||
int count = 0;
|
int count = 0;
|
||||||
CountingRequestMonitor countingRm = new CountingRequestMonitor(getExecutor(), rm);
|
CountingRequestMonitor countingRm = new CountingRequestMonitor(getExecutor(), rm);
|
||||||
|
@ -273,6 +280,7 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
|
@Override
|
||||||
public void completeInitialization(final RequestMonitor rm) {
|
public void completeInitialization(final RequestMonitor rm) {
|
||||||
// We take the attributes from the launchConfiguration
|
// We take the attributes from the launchConfiguration
|
||||||
ILaunch launch = (ILaunch)getSession().getModelAdapter(ILaunch.class);
|
ILaunch launch = (ILaunch)getSession().getModelAdapter(ILaunch.class);
|
||||||
|
@ -441,7 +449,9 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
* return empty list.
|
* return empty list.
|
||||||
*/
|
*/
|
||||||
private final List<String> fFeatures = new ArrayList<String>();
|
private final List<String> fFeatures = new ArrayList<String>();
|
||||||
|
|
||||||
/** @since 4.0 */
|
/** @since 4.0 */
|
||||||
|
@Override
|
||||||
public List<String> getFeatures() {
|
public List<String> getFeatures() {
|
||||||
return fFeatures;
|
return fFeatures;
|
||||||
}
|
}
|
||||||
|
@ -449,6 +459,7 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
/**
|
/**
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void enablePrettyPrintingForMIVariableObjects(RequestMonitor rm) {
|
public void enablePrettyPrintingForMIVariableObjects(RequestMonitor rm) {
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
@ -456,6 +467,7 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
|
||||||
/**
|
/**
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public void setPrintPythonErrors(boolean enabled, RequestMonitor rm) {
|
public void setPrintPythonErrors(boolean enabled, RequestMonitor rm) {
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue