mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-17 14:05:23 +02:00
Bug 242234 Replacing AbstractMIControl with ICommandControlService; and also replace MIControlDMContext with ICommandControlDMContext
This commit is contained in:
parent
7e5d149909
commit
168df99385
55 changed files with 199 additions and 187 deletions
|
@ -30,6 +30,8 @@ import org.eclipse.dd.dsf.datamodel.IDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IProcesses;
|
import org.eclipse.dd.dsf.debug.service.IProcesses;
|
||||||
import org.eclipse.dd.dsf.debug.service.IProcesses.IProcessDMContext;
|
import org.eclipse.dd.dsf.debug.service.IProcesses.IProcessDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IProcesses.IThreadDMData;
|
import org.eclipse.dd.dsf.debug.service.IProcesses.IThreadDMData;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.dsf.service.DsfServicesTracker;
|
import org.eclipse.dd.dsf.service.DsfServicesTracker;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.gdb.internal.provisional.actions.IConnect;
|
import org.eclipse.dd.gdb.internal.provisional.actions.IConnect;
|
||||||
|
@ -37,8 +39,6 @@ import org.eclipse.dd.gdb.internal.provisional.launching.LaunchMessages;
|
||||||
import org.eclipse.dd.gdb.internal.ui.GdbUIPlugin;
|
import org.eclipse.dd.gdb.internal.ui.GdbUIPlugin;
|
||||||
import org.eclipse.dd.mi.service.IMIProcesses;
|
import org.eclipse.dd.mi.service.IMIProcesses;
|
||||||
import org.eclipse.dd.mi.service.ProcessInfo;
|
import org.eclipse.dd.mi.service.ProcessInfo;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
|
||||||
import org.eclipse.debug.core.DebugPlugin;
|
import org.eclipse.debug.core.DebugPlugin;
|
||||||
import org.eclipse.debug.core.IStatusHandler;
|
import org.eclipse.debug.core.IStatusHandler;
|
||||||
|
|
||||||
|
@ -61,10 +61,10 @@ public class GdbConnectCommand implements IConnect {
|
||||||
@Override
|
@Override
|
||||||
public void execute(DataRequestMonitor<Boolean> rm) {
|
public void execute(DataRequestMonitor<Boolean> rm) {
|
||||||
IProcesses procService = fTracker.getService(IProcesses.class);
|
IProcesses procService = fTracker.getService(IProcesses.class);
|
||||||
AbstractMIControl miControl = fTracker.getService(AbstractMIControl.class);
|
ICommandControlService commandControl = fTracker.getService(ICommandControlService.class);
|
||||||
|
|
||||||
if (procService != null && miControl != null) {
|
if (procService != null && commandControl != null) {
|
||||||
procService.isDebuggerAttachSupported(miControl.getControlDMContext(), rm);
|
procService.isDebuggerAttachSupported(commandControl.getContext(), rm);
|
||||||
} else {
|
} else {
|
||||||
rm.setData(false);
|
rm.setData(false);
|
||||||
rm.done();
|
rm.done();
|
||||||
|
@ -145,10 +145,10 @@ public class GdbConnectCommand implements IConnect {
|
||||||
fExecutor.execute(new DsfRunnable() {
|
fExecutor.execute(new DsfRunnable() {
|
||||||
public void run() {
|
public void run() {
|
||||||
final IProcesses procService = fTracker.getService(IProcesses.class);
|
final IProcesses procService = fTracker.getService(IProcesses.class);
|
||||||
AbstractMIControl miControl = fTracker.getService(AbstractMIControl.class);
|
ICommandControlService commandControl = fTracker.getService(ICommandControlService.class);
|
||||||
final MIControlDMContext controlCtx = miControl.getControlDMContext();
|
|
||||||
|
|
||||||
if (procService != null && miControl != null) {
|
if (procService != null && commandControl != null) {
|
||||||
|
final ICommandControlDMContext controlCtx = commandControl.getContext();
|
||||||
procService.getRunningProcesses(
|
procService.getRunningProcesses(
|
||||||
controlCtx,
|
controlCtx,
|
||||||
new DataRequestMonitor<IProcessDMContext[]>(fExecutor, rm) {
|
new DataRequestMonitor<IProcessDMContext[]>(fExecutor, rm) {
|
||||||
|
|
|
@ -26,6 +26,7 @@ import org.eclipse.dd.dsf.datamodel.DMContexts;
|
||||||
import org.eclipse.dd.dsf.datamodel.IDMContext;
|
import org.eclipse.dd.dsf.datamodel.IDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IProcesses;
|
import org.eclipse.dd.dsf.debug.service.IProcesses;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IContainerDMContext;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IContainerDMContext;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.gdb.internal.GdbPlugin;
|
import org.eclipse.dd.gdb.internal.GdbPlugin;
|
||||||
import org.eclipse.dd.gdb.internal.provisional.service.command.GDBControl;
|
import org.eclipse.dd.gdb.internal.provisional.service.command.GDBControl;
|
||||||
|
@ -34,7 +35,6 @@ import org.eclipse.dd.mi.service.IMIExecutionGroupDMContext;
|
||||||
import org.eclipse.dd.mi.service.IMIProcessDMContext;
|
import org.eclipse.dd.mi.service.IMIProcessDMContext;
|
||||||
import org.eclipse.dd.mi.service.IMIProcesses;
|
import org.eclipse.dd.mi.service.IMIProcesses;
|
||||||
import org.eclipse.dd.mi.service.MIProcesses;
|
import org.eclipse.dd.mi.service.MIProcesses;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
|
||||||
import org.eclipse.dd.mi.service.command.MIInferiorProcess;
|
import org.eclipse.dd.mi.service.command.MIInferiorProcess;
|
||||||
import org.eclipse.dd.mi.service.command.commands.CLIMonitorListProcesses;
|
import org.eclipse.dd.mi.service.command.commands.CLIMonitorListProcesses;
|
||||||
import org.eclipse.dd.mi.service.command.output.CLIMonitorListProcessesInfo;
|
import org.eclipse.dd.mi.service.command.output.CLIMonitorListProcessesInfo;
|
||||||
|
@ -182,7 +182,7 @@ public class GDBProcesses extends MIProcesses {
|
||||||
if (groupDmc == null) {
|
if (groupDmc == null) {
|
||||||
// This service version only handles a single process to debug, therefore, we can simply
|
// This service version only handles a single process to debug, therefore, we can simply
|
||||||
// create the context describing this process ourselves.
|
// create the context describing this process ourselves.
|
||||||
MIControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, MIControlDMContext.class);
|
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
IProcessDMContext procDmc = createProcessContext(controlDmc, inferiorProcess.getPid());
|
IProcessDMContext procDmc = createProcessContext(controlDmc, inferiorProcess.getPid());
|
||||||
IMIExecutionGroupDMContext newGroupDmc = createExecutionGroupContext(procDmc, inferiorProcess.getPid());
|
IMIExecutionGroupDMContext newGroupDmc = createExecutionGroupContext(procDmc, inferiorProcess.getPid());
|
||||||
rm.setData(new IContainerDMContext[] {newGroupDmc});
|
rm.setData(new IContainerDMContext[] {newGroupDmc});
|
||||||
|
@ -199,7 +199,7 @@ public class GDBProcesses extends MIProcesses {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void getRunningProcesses(IDMContext dmc, final DataRequestMonitor<IProcessDMContext[]> rm) {
|
public void getRunningProcesses(IDMContext dmc, final DataRequestMonitor<IProcessDMContext[]> rm) {
|
||||||
final MIControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, MIControlDMContext.class);
|
final ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
if (fGdb.getSessionType() == SessionType.LOCAL) {
|
if (fGdb.getSessionType() == SessionType.LOCAL) {
|
||||||
IProcessList list = null;
|
IProcessList list = null;
|
||||||
try {
|
try {
|
||||||
|
@ -244,7 +244,7 @@ public class GDBProcesses extends MIProcesses {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private IProcessDMContext[] makeProcessDMCs(MIControlDMContext controlDmc, IProcessInfo[] processes) {
|
private IProcessDMContext[] makeProcessDMCs(ICommandControlDMContext controlDmc, IProcessInfo[] processes) {
|
||||||
IProcessDMContext[] procDmcs = new IMIProcessDMContext[processes.length];
|
IProcessDMContext[] procDmcs = new IMIProcessDMContext[processes.length];
|
||||||
for (int i=0; i<procDmcs.length; i++) {
|
for (int i=0; i<procDmcs.length; i++) {
|
||||||
procDmcs[i] = createProcessContext(controlDmc, Integer.toString(processes[i].getPid()));
|
procDmcs[i] = createProcessContext(controlDmc, Integer.toString(processes[i].getPid()));
|
||||||
|
|
|
@ -34,6 +34,7 @@ import org.eclipse.dd.dsf.debug.service.IRunControl.IResumedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IStartedDMEvent;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IStartedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.ISuspendedDMEvent;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.ISuspendedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
|
@ -44,7 +45,6 @@ import org.eclipse.dd.mi.service.IMIExecutionDMContext;
|
||||||
import org.eclipse.dd.mi.service.IMIExecutionGroupDMContext;
|
import org.eclipse.dd.mi.service.IMIExecutionGroupDMContext;
|
||||||
import org.eclipse.dd.mi.service.IMIProcessDMContext;
|
import org.eclipse.dd.mi.service.IMIProcessDMContext;
|
||||||
import org.eclipse.dd.mi.service.IMIProcesses;
|
import org.eclipse.dd.mi.service.IMIProcesses;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIListThreadGroups;
|
import org.eclipse.dd.mi.service.command.commands.MIListThreadGroups;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MITargetAttach;
|
import org.eclipse.dd.mi.service.command.commands.MITargetAttach;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MITargetDetach;
|
import org.eclipse.dd.mi.service.command.commands.MITargetDetach;
|
||||||
|
@ -253,7 +253,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
* @param controlDmc The control context parent of this process.
|
* @param controlDmc The control context parent of this process.
|
||||||
* @param id process identifier.
|
* @param id process identifier.
|
||||||
*/
|
*/
|
||||||
public MIProcessDMC(String sessionId, MIControlDMContext controlDmc, String id) {
|
public MIProcessDMC(String sessionId, ICommandControlDMContext controlDmc, String id) {
|
||||||
super(sessionId, controlDmc == null ? new IDMContext[0] : new IDMContext[] { controlDmc });
|
super(sessionId, controlDmc == null ? new IDMContext[0] : new IDMContext[] { controlDmc });
|
||||||
fId = id;
|
fId = id;
|
||||||
}
|
}
|
||||||
|
@ -406,7 +406,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
return new MIThreadDMC(getSession().getId(), processDmc, threadId);
|
return new MIThreadDMC(getSession().getId(), processDmc, threadId);
|
||||||
}
|
}
|
||||||
|
|
||||||
public IProcessDMContext createProcessContext(MIControlDMContext controlDmc, String pid) {
|
public IProcessDMContext createProcessContext(ICommandControlDMContext controlDmc, String pid) {
|
||||||
return new MIProcessDMC(getSession().getId(), controlDmc, pid);
|
return new MIProcessDMC(getSession().getId(), controlDmc, pid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -451,7 +451,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
} else if (dmc instanceof MIThreadDMC) {
|
} else if (dmc instanceof MIThreadDMC) {
|
||||||
final MIThreadDMC threadDmc = (MIThreadDMC)dmc;
|
final MIThreadDMC threadDmc = (MIThreadDMC)dmc;
|
||||||
|
|
||||||
MIControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, MIControlDMContext.class);
|
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
fThreadCommandCache.execute(new MIThreadInfo(controlDmc, threadDmc.getId()),
|
fThreadCommandCache.execute(new MIThreadInfo(controlDmc, threadDmc.getId()),
|
||||||
new DataRequestMonitor<MIThreadInfoInfo>(getExecutor(), rm) {
|
new DataRequestMonitor<MIThreadInfoInfo>(getExecutor(), rm) {
|
||||||
@Override
|
@Override
|
||||||
|
@ -497,7 +497,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
|
|
||||||
public void attachDebuggerToProcess(final IProcessDMContext procCtx, final DataRequestMonitor<IDMContext> rm) {
|
public void attachDebuggerToProcess(final IProcessDMContext procCtx, final DataRequestMonitor<IDMContext> rm) {
|
||||||
if (procCtx instanceof IMIProcessDMContext) {
|
if (procCtx instanceof IMIProcessDMContext) {
|
||||||
MIControlDMContext controlDmc = DMContexts.getAncestorOfType(procCtx, MIControlDMContext.class);
|
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(procCtx, ICommandControlDMContext.class);
|
||||||
fCommandControl.queueCommand(
|
fCommandControl.queueCommand(
|
||||||
new MITargetAttach(controlDmc, ((IMIProcessDMContext)procCtx).getProcId()),
|
new MITargetAttach(controlDmc, ((IMIProcessDMContext)procCtx).getProcId()),
|
||||||
new DataRequestMonitor<MIInfo>(getExecutor(), rm) {
|
new DataRequestMonitor<MIInfo>(getExecutor(), rm) {
|
||||||
|
@ -524,7 +524,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
}
|
}
|
||||||
|
|
||||||
public void detachDebuggerFromProcess(final IDMContext dmc, final RequestMonitor rm) {
|
public void detachDebuggerFromProcess(final IDMContext dmc, final RequestMonitor rm) {
|
||||||
MIControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, MIControlDMContext.class);
|
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
IMIProcessDMContext procDmc = DMContexts.getAncestorOfType(dmc, IMIProcessDMContext.class);
|
IMIProcessDMContext procDmc = DMContexts.getAncestorOfType(dmc, IMIProcessDMContext.class);
|
||||||
|
|
||||||
if (controlDmc != null && procDmc != null) {
|
if (controlDmc != null && procDmc != null) {
|
||||||
|
@ -566,7 +566,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
// inferiorProcess != null &&
|
// inferiorProcess != null &&
|
||||||
// inferiorProcess.getState() != MIInferiorProcess.State.TERMINATED) {
|
// inferiorProcess.getState() != MIInferiorProcess.State.TERMINATED) {
|
||||||
|
|
||||||
final MIControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, MIControlDMContext.class);
|
final ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
final IMIExecutionGroupDMContext groupDmc = DMContexts.getAncestorOfType(dmc, IMIExecutionGroupDMContext.class);
|
final IMIExecutionGroupDMContext groupDmc = DMContexts.getAncestorOfType(dmc, IMIExecutionGroupDMContext.class);
|
||||||
if (groupDmc != null) {
|
if (groupDmc != null) {
|
||||||
fThreadCommandCache.execute(
|
fThreadCommandCache.execute(
|
||||||
|
@ -618,7 +618,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private IMIExecutionGroupDMContext[] makeExecutionGroupDMCs(MIControlDMContext controlDmc, IThreadGroupInfo[] groups) {
|
private IMIExecutionGroupDMContext[] makeExecutionGroupDMCs(ICommandControlDMContext controlDmc, IThreadGroupInfo[] groups) {
|
||||||
IProcessDMContext[] procDmcs = makeProcessDMCs(controlDmc, groups);
|
IProcessDMContext[] procDmcs = makeProcessDMCs(controlDmc, groups);
|
||||||
|
|
||||||
IMIExecutionGroupDMContext[] groupDmcs = new IMIExecutionGroupDMContext[groups.length];
|
IMIExecutionGroupDMContext[] groupDmcs = new IMIExecutionGroupDMContext[groups.length];
|
||||||
|
@ -631,7 +631,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
}
|
}
|
||||||
|
|
||||||
public void getRunningProcesses(IDMContext dmc, final DataRequestMonitor<IProcessDMContext[]> rm) {
|
public void getRunningProcesses(IDMContext dmc, final DataRequestMonitor<IProcessDMContext[]> rm) {
|
||||||
final MIControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, MIControlDMContext.class);
|
final ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
|
|
||||||
if (controlDmc != null) {
|
if (controlDmc != null) {
|
||||||
// Don't cache this command since the list can change at any time.
|
// Don't cache this command since the list can change at any time.
|
||||||
|
@ -658,7 +658,7 @@ public class GDBProcesses_7_0 extends AbstractDsfService implements IMIProcesses
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private IProcessDMContext[] makeProcessDMCs(MIControlDMContext controlDmc, IThreadGroupInfo[] processes) {
|
private IProcessDMContext[] makeProcessDMCs(ICommandControlDMContext controlDmc, IThreadGroupInfo[] processes) {
|
||||||
IProcessDMContext[] procDmcs = new IMIProcessDMContext[processes.length];
|
IProcessDMContext[] procDmcs = new IMIProcessDMContext[processes.length];
|
||||||
for (int i=0; i<procDmcs.length; i++) {
|
for (int i=0; i<procDmcs.length; i++) {
|
||||||
procDmcs[i] = createProcessContext(controlDmc, processes[i].getGroupId());
|
procDmcs[i] = createProcessContext(controlDmc, processes[i].getGroupId());
|
||||||
|
|
|
@ -77,7 +77,7 @@ public class GDBControl extends AbstractMIControl {
|
||||||
/**
|
/**
|
||||||
* Event indicating that the back end process has started.
|
* Event indicating that the back end process has started.
|
||||||
*/
|
*/
|
||||||
public static class GDBControlInitializedDMEvent extends AbstractDMEvent<ICommandControlDMContext>
|
private static class GDBControlInitializedDMEvent extends AbstractDMEvent<ICommandControlDMContext>
|
||||||
implements ICommandControlInitializedDMEvent
|
implements ICommandControlInitializedDMEvent
|
||||||
{
|
{
|
||||||
public GDBControlInitializedDMEvent(ICommandControlDMContext context) {
|
public GDBControlInitializedDMEvent(ICommandControlDMContext context) {
|
||||||
|
@ -88,7 +88,7 @@ public class GDBControl extends AbstractMIControl {
|
||||||
/**
|
/**
|
||||||
* Event indicating that the back end process has terminated.
|
* Event indicating that the back end process has terminated.
|
||||||
*/
|
*/
|
||||||
public static class GDBControlShutdownDMEvent extends AbstractDMEvent<ICommandControlDMContext>
|
private static class GDBControlShutdownDMEvent extends AbstractDMEvent<ICommandControlDMContext>
|
||||||
implements ICommandControlShutdownDMEvent
|
implements ICommandControlShutdownDMEvent
|
||||||
{
|
{
|
||||||
public GDBControlShutdownDMEvent(ICommandControlDMContext context) {
|
public GDBControlShutdownDMEvent(ICommandControlDMContext context) {
|
||||||
|
@ -102,7 +102,7 @@ public class GDBControl extends AbstractMIControl {
|
||||||
public enum SessionType { LOCAL, REMOTE, CORE }
|
public enum SessionType { LOCAL, REMOTE, CORE }
|
||||||
private SessionType fSessionType;
|
private SessionType fSessionType;
|
||||||
|
|
||||||
public boolean fAttach;
|
private boolean fAttach;
|
||||||
|
|
||||||
private boolean fConnected = true;
|
private boolean fConnected = true;
|
||||||
|
|
||||||
|
|
|
@ -37,11 +37,11 @@ import org.eclipse.dd.dsf.debug.service.IRegisters.IRegisterDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.StateChangeReason;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.StateChangeReason;
|
||||||
import org.eclipse.dd.dsf.debug.service.IStack.IFrameDMContext;
|
import org.eclipse.dd.dsf.debug.service.IStack.IFrameDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetAttributes;
|
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetAttributes;
|
||||||
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetChildCount;
|
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetChildCount;
|
||||||
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetChildren;
|
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetChildren;
|
||||||
|
@ -454,8 +454,8 @@ public class ExpressionService extends AbstractDsfService implements IExpression
|
||||||
// Create the meta command cache which will use the variable manager
|
// Create the meta command cache which will use the variable manager
|
||||||
// to actually send MI commands to the back-end
|
// to actually send MI commands to the back-end
|
||||||
fExpressionCache = new CommandCache(getSession(), varManager);
|
fExpressionCache = new CommandCache(getSession(), varManager);
|
||||||
AbstractMIControl miControl = getServicesTracker().getService(AbstractMIControl.class);
|
ICommandControlService commandControl = getServicesTracker().getService(ICommandControlService.class);
|
||||||
fExpressionCache.setContextAvailable(miControl.getControlDMContext(), true);
|
fExpressionCache.setContextAvailable(commandControl.getContext(), true);
|
||||||
|
|
||||||
requestMonitor.done();
|
requestMonitor.done();
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@ package org.eclipse.dd.mi.service;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.debug.service.IProcesses;
|
import org.eclipse.dd.dsf.debug.service.IProcesses;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IContainerDMContext;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IContainerDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This interface provides a method for creating execution contexts.
|
* This interface provides a method for creating execution contexts.
|
||||||
|
@ -32,7 +32,7 @@ public interface IMIProcesses extends IProcesses
|
||||||
*
|
*
|
||||||
* @param pid The OS Id of the process
|
* @param pid The OS Id of the process
|
||||||
*/
|
*/
|
||||||
IProcessDMContext createProcessContext(MIControlDMContext controlDmc, String pid);
|
IProcessDMContext createProcessContext(ICommandControlDMContext controlDmc, String pid);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a execution context.
|
* Create a execution context.
|
||||||
|
|
|
@ -36,12 +36,12 @@ import org.eclipse.dd.dsf.debug.service.IExpressions.IExpressionDMAddress;
|
||||||
import org.eclipse.dd.dsf.debug.service.IExpressions.IExpressionDMContext;
|
import org.eclipse.dd.dsf.debug.service.IExpressions.IExpressionDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.StateChangeReason;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.StateChangeReason;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.ExpressionService.ExpressionChangedEvent;
|
import org.eclipse.dd.mi.service.ExpressionService.ExpressionChangedEvent;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIDataReadMemory;
|
import org.eclipse.dd.mi.service.command.commands.MIDataReadMemory;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIDataWriteMemory;
|
import org.eclipse.dd.mi.service.command.commands.MIDataWriteMemory;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIDataReadMemoryInfo;
|
import org.eclipse.dd.mi.service.command.output.MIDataReadMemoryInfo;
|
||||||
|
@ -433,9 +433,9 @@ public class MIMemory extends AbstractDsfService implements IMemory, ICachingSer
|
||||||
|
|
||||||
public MIMemoryCache() {
|
public MIMemoryCache() {
|
||||||
// Create the command cache
|
// Create the command cache
|
||||||
AbstractMIControl miControl = getServicesTracker().getService(AbstractMIControl.class);
|
ICommandControlService commandControl = getServicesTracker().getService(ICommandControlService.class);
|
||||||
fCommandCache = new CommandCache(getSession(), miControl);
|
fCommandCache = new CommandCache(getSession(), commandControl);
|
||||||
fCommandCache.setContextAvailable(miControl.getControlDMContext(), true);
|
fCommandCache.setContextAvailable(commandControl.getContext(), true);
|
||||||
|
|
||||||
// Create the memory block cache
|
// Create the memory block cache
|
||||||
fMemoryBlockList = new SortedMemoryBlockList();
|
fMemoryBlockList = new SortedMemoryBlockList();
|
||||||
|
|
|
@ -25,10 +25,10 @@ import org.eclipse.dd.dsf.datamodel.IDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.ICachingService;
|
import org.eclipse.dd.dsf.debug.service.ICachingService;
|
||||||
import org.eclipse.dd.dsf.debug.service.IModules;
|
import org.eclipse.dd.dsf.debug.service.IModules;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.CLIInfoSharedLibrary;
|
import org.eclipse.dd.mi.service.command.commands.CLIInfoSharedLibrary;
|
||||||
import org.eclipse.dd.mi.service.command.output.CLIInfoSharedLibraryInfo;
|
import org.eclipse.dd.mi.service.command.output.CLIInfoSharedLibraryInfo;
|
||||||
import org.eclipse.dd.mi.service.command.output.CLIInfoSharedLibraryInfo.DsfMISharedInfo;
|
import org.eclipse.dd.mi.service.command.output.CLIInfoSharedLibraryInfo.DsfMISharedInfo;
|
||||||
|
@ -61,9 +61,9 @@ public class MIModules extends AbstractDsfService implements IModules, ICachingS
|
||||||
|
|
||||||
private void doInitialize(RequestMonitor requestMonitor) {
|
private void doInitialize(RequestMonitor requestMonitor) {
|
||||||
// Cache for holding Modules data
|
// Cache for holding Modules data
|
||||||
AbstractMIControl miControl = getServicesTracker().getService(AbstractMIControl.class);
|
ICommandControlService commandControl = getServicesTracker().getService(ICommandControlService.class);
|
||||||
fModulesCache = new CommandCache(getSession(), miControl);
|
fModulesCache = new CommandCache(getSession(), commandControl);
|
||||||
fModulesCache.setContextAvailable(miControl.getControlDMContext(), true);
|
fModulesCache.setContextAvailable(commandControl.getContext(), true);
|
||||||
/*
|
/*
|
||||||
* Make ourselves known so clients can use us.
|
* Make ourselves known so clients can use us.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -29,12 +29,12 @@ import org.eclipse.dd.dsf.debug.service.IRunControl.IResumedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IStartedDMEvent;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IStartedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.ISuspendedDMEvent;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.ISuspendedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.CLIAttach;
|
import org.eclipse.dd.mi.service.command.commands.CLIAttach;
|
||||||
import org.eclipse.dd.mi.service.command.commands.CLIDetach;
|
import org.eclipse.dd.mi.service.command.commands.CLIDetach;
|
||||||
import org.eclipse.dd.mi.service.command.commands.CLIInfoThreads;
|
import org.eclipse.dd.mi.service.command.commands.CLIInfoThreads;
|
||||||
|
@ -233,7 +233,7 @@ public class MIProcesses extends AbstractDsfService implements IMIProcesses, ICa
|
||||||
* @param controlDmc The control context parent of this process.
|
* @param controlDmc The control context parent of this process.
|
||||||
* @param id process identifier.
|
* @param id process identifier.
|
||||||
*/
|
*/
|
||||||
public MIProcessDMC(String sessionId, MIControlDMContext controlDmc, String id) {
|
public MIProcessDMC(String sessionId, ICommandControlDMContext controlDmc, String id) {
|
||||||
super(sessionId, controlDmc == null ? new IDMContext[0] : new IDMContext[] { controlDmc });
|
super(sessionId, controlDmc == null ? new IDMContext[0] : new IDMContext[] { controlDmc });
|
||||||
fId = id;
|
fId = id;
|
||||||
}
|
}
|
||||||
|
@ -297,7 +297,7 @@ public class MIProcesses extends AbstractDsfService implements IMIProcesses, ICa
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private AbstractMIControl fCommandControl;
|
private ICommandControlService fCommandControl;
|
||||||
private CommandCache fContainerCommandCache;
|
private CommandCache fContainerCommandCache;
|
||||||
|
|
||||||
private static final String FAKE_THREAD_ID = "0"; //$NON-NLS-1$
|
private static final String FAKE_THREAD_ID = "0"; //$NON-NLS-1$
|
||||||
|
@ -339,9 +339,9 @@ public class MIProcesses extends AbstractDsfService implements IMIProcesses, ICa
|
||||||
// MIProcesses.class.getName() },
|
// MIProcesses.class.getName() },
|
||||||
// new Hashtable<String, String>());
|
// new Hashtable<String, String>());
|
||||||
|
|
||||||
fCommandControl = getServicesTracker().getService(AbstractMIControl.class);
|
fCommandControl = getServicesTracker().getService(ICommandControlService.class);
|
||||||
fContainerCommandCache = new CommandCache(getSession(), fCommandControl);
|
fContainerCommandCache = new CommandCache(getSession(), fCommandControl);
|
||||||
fContainerCommandCache.setContextAvailable(fCommandControl.getControlDMContext(), true);
|
fContainerCommandCache.setContextAvailable(fCommandControl.getContext(), true);
|
||||||
getSession().addServiceEventListener(this, null);
|
getSession().addServiceEventListener(this, null);
|
||||||
|
|
||||||
requestMonitor.done();
|
requestMonitor.done();
|
||||||
|
@ -373,7 +373,7 @@ public class MIProcesses extends AbstractDsfService implements IMIProcesses, ICa
|
||||||
return new MIThreadDMC(getSession().getId(), processDmc, threadId);
|
return new MIThreadDMC(getSession().getId(), processDmc, threadId);
|
||||||
}
|
}
|
||||||
|
|
||||||
public IProcessDMContext createProcessContext(MIControlDMContext controlDmc, String pid) {
|
public IProcessDMContext createProcessContext(ICommandControlDMContext controlDmc, String pid) {
|
||||||
return new MIProcessDMC(getSession().getId(), controlDmc, pid);
|
return new MIProcessDMC(getSession().getId(), controlDmc, pid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -470,7 +470,7 @@ public class MIProcesses extends AbstractDsfService implements IMIProcesses, ICa
|
||||||
public void attachDebuggerToProcess(final IProcessDMContext procCtx, final DataRequestMonitor<IDMContext> rm) {
|
public void attachDebuggerToProcess(final IProcessDMContext procCtx, final DataRequestMonitor<IDMContext> rm) {
|
||||||
if (procCtx instanceof IMIProcessDMContext) {
|
if (procCtx instanceof IMIProcessDMContext) {
|
||||||
|
|
||||||
MIControlDMContext controlDmc = DMContexts.getAncestorOfType(procCtx, MIControlDMContext.class);
|
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(procCtx, ICommandControlDMContext.class);
|
||||||
fCommandControl.queueCommand(
|
fCommandControl.queueCommand(
|
||||||
new CLIAttach(controlDmc, ((IMIProcessDMContext)procCtx).getProcId()),
|
new CLIAttach(controlDmc, ((IMIProcessDMContext)procCtx).getProcId()),
|
||||||
new DataRequestMonitor<MIInfo>(getExecutor(), rm) {
|
new DataRequestMonitor<MIInfo>(getExecutor(), rm) {
|
||||||
|
@ -497,7 +497,7 @@ public class MIProcesses extends AbstractDsfService implements IMIProcesses, ICa
|
||||||
}
|
}
|
||||||
|
|
||||||
public void detachDebuggerFromProcess(final IDMContext dmc, final RequestMonitor rm) {
|
public void detachDebuggerFromProcess(final IDMContext dmc, final RequestMonitor rm) {
|
||||||
MIControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, MIControlDMContext.class);
|
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
|
|
||||||
if (controlDmc != null) {
|
if (controlDmc != null) {
|
||||||
// This service version cannot use -target-detach because it didn't exist
|
// This service version cannot use -target-detach because it didn't exist
|
||||||
|
@ -552,7 +552,7 @@ public class MIProcesses extends AbstractDsfService implements IMIProcesses, ICa
|
||||||
} else {
|
} else {
|
||||||
// This service version only handles a single process to debug, therefore, we can simply
|
// This service version only handles a single process to debug, therefore, we can simply
|
||||||
// create the context describing this process ourselves.
|
// create the context describing this process ourselves.
|
||||||
MIControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, MIControlDMContext.class);
|
ICommandControlDMContext controlDmc = DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class);
|
||||||
IProcessDMContext procDmc = createProcessContext(controlDmc, UNIQUE_GROUP_ID);
|
IProcessDMContext procDmc = createProcessContext(controlDmc, UNIQUE_GROUP_ID);
|
||||||
IMIExecutionGroupDMContext newGroupDmc = createExecutionGroupContext(procDmc, UNIQUE_GROUP_ID);
|
IMIExecutionGroupDMContext newGroupDmc = createExecutionGroupContext(procDmc, UNIQUE_GROUP_ID);
|
||||||
rm.setData(new IContainerDMContext[] {newGroupDmc});
|
rm.setData(new IContainerDMContext[] {newGroupDmc});
|
||||||
|
|
|
@ -28,11 +28,11 @@ import org.eclipse.dd.dsf.debug.service.IExpressions.IExpressionDMData;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IContainerDMContext;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IContainerDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.StateChangeReason;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.StateChangeReason;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIDataListRegisterNames;
|
import org.eclipse.dd.mi.service.command.commands.MIDataListRegisterNames;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIDataListRegisterValues;
|
import org.eclipse.dd.mi.service.command.commands.MIDataListRegisterValues;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIDataListRegisterNamesInfo;
|
import org.eclipse.dd.mi.service.command.output.MIDataListRegisterNamesInfo;
|
||||||
|
@ -171,11 +171,11 @@ public class MIRegisters extends AbstractDsfService implements IRegisters, ICach
|
||||||
/*
|
/*
|
||||||
* Create the lower level register cache.
|
* Create the lower level register cache.
|
||||||
*/
|
*/
|
||||||
AbstractMIControl miControl = getServicesTracker().getService(AbstractMIControl.class);
|
ICommandControlService commandControl = getServicesTracker().getService(ICommandControlService.class);
|
||||||
fRegisterValueCache = new CommandCache(getSession(), miControl);
|
fRegisterValueCache = new CommandCache(getSession(), commandControl);
|
||||||
fRegisterValueCache.setContextAvailable(miControl.getControlDMContext(), true);
|
fRegisterValueCache.setContextAvailable(commandControl.getContext(), true);
|
||||||
fRegisterNameCache = new CommandCache(getSession(), miControl);
|
fRegisterNameCache = new CommandCache(getSession(), commandControl);
|
||||||
fRegisterNameCache.setContextAvailable(miControl.getControlDMContext(), true);
|
fRegisterNameCache.setContextAvailable(commandControl.getContext(), true);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Sign up so we see events. We use these events to decide how to manage
|
* Sign up so we see events. We use these events to decide how to manage
|
||||||
|
|
|
@ -25,12 +25,12 @@ import org.eclipse.dd.dsf.debug.service.ICachingService;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl;
|
import org.eclipse.dd.dsf.debug.service.IRunControl;
|
||||||
import org.eclipse.dd.dsf.debug.service.IStack.IFrameDMContext;
|
import org.eclipse.dd.dsf.debug.service.IStack.IFrameDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlShutdownDMEvent;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlShutdownDMEvent;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIExecContinue;
|
import org.eclipse.dd.mi.service.command.commands.MIExecContinue;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIExecFinish;
|
import org.eclipse.dd.mi.service.command.commands.MIExecFinish;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIExecInterrupt;
|
import org.eclipse.dd.mi.service.command.commands.MIExecInterrupt;
|
||||||
|
@ -260,7 +260,7 @@ public class MIRunControl extends AbstractDsfService implements IRunControl, ICa
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private AbstractMIControl fConnection;
|
private ICommandControlService fConnection;
|
||||||
private CommandCache fMICommandCache;
|
private CommandCache fMICommandCache;
|
||||||
|
|
||||||
// State flags
|
// State flags
|
||||||
|
@ -289,9 +289,9 @@ public class MIRunControl extends AbstractDsfService implements IRunControl, ICa
|
||||||
}
|
}
|
||||||
|
|
||||||
private void doInitialize(final RequestMonitor rm) {
|
private void doInitialize(final RequestMonitor rm) {
|
||||||
fConnection = getServicesTracker().getService(AbstractMIControl.class);
|
fConnection = getServicesTracker().getService(ICommandControlService.class);
|
||||||
fMICommandCache = new CommandCache(getSession(), fConnection);
|
fMICommandCache = new CommandCache(getSession(), fConnection);
|
||||||
fMICommandCache.setContextAvailable(fConnection.getControlDMContext(), true);
|
fMICommandCache.setContextAvailable(fConnection.getContext(), true);
|
||||||
getSession().addServiceEventListener(this, null);
|
getSession().addServiceEventListener(this, null);
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,12 +30,12 @@ import org.eclipse.dd.dsf.debug.service.IRunControl;
|
||||||
import org.eclipse.dd.dsf.debug.service.IProcesses.IProcessDMContext;
|
import org.eclipse.dd.dsf.debug.service.IProcesses.IProcessDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IProcesses.IThreadDMContext;
|
import org.eclipse.dd.dsf.debug.service.IProcesses.IThreadDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IStack.IFrameDMContext;
|
import org.eclipse.dd.dsf.debug.service.IStack.IFrameDMContext;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlShutdownDMEvent;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlShutdownDMEvent;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIExecContinue;
|
import org.eclipse.dd.mi.service.command.commands.MIExecContinue;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIExecFinish;
|
import org.eclipse.dd.mi.service.command.commands.MIExecFinish;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIExecInterrupt;
|
import org.eclipse.dd.mi.service.command.commands.MIExecInterrupt;
|
||||||
|
@ -224,7 +224,7 @@ public class MIRunControlNS extends AbstractDsfService implements IRunControl, I
|
||||||
// MIRunControlNS
|
// MIRunControlNS
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
private AbstractMIControl fConnection;
|
private ICommandControlService fConnection;
|
||||||
|
|
||||||
private boolean fTerminated = false;
|
private boolean fTerminated = false;
|
||||||
|
|
||||||
|
@ -251,7 +251,7 @@ public class MIRunControlNS extends AbstractDsfService implements IRunControl, I
|
||||||
|
|
||||||
private void doInitialize(final RequestMonitor rm) {
|
private void doInitialize(final RequestMonitor rm) {
|
||||||
register(new String[]{IRunControl.class.getName()}, new Hashtable<String,String>());
|
register(new String[]{IRunControl.class.getName()}, new Hashtable<String,String>());
|
||||||
fConnection = getServicesTracker().getService(AbstractMIControl.class);
|
fConnection = getServicesTracker().getService(ICommandControlService.class);
|
||||||
getSession().addServiceEventListener(this, null);
|
getSession().addServiceEventListener(this, null);
|
||||||
rm.done();
|
rm.done();
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,11 +36,11 @@ import org.eclipse.dd.dsf.debug.service.IRunControl.IResumedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.ISuspendedDMEvent;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.ISuspendedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.StateChangeReason;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.StateChangeReason;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
import org.eclipse.dd.dsf.debug.service.command.CommandCache;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
import org.eclipse.dd.dsf.service.AbstractDsfService;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.command.AbstractMIControl;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIStackInfoDepth;
|
import org.eclipse.dd.mi.service.command.commands.MIStackInfoDepth;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIStackListArguments;
|
import org.eclipse.dd.mi.service.command.commands.MIStackListArguments;
|
||||||
import org.eclipse.dd.mi.service.command.commands.MIStackListFrames;
|
import org.eclipse.dd.mi.service.command.commands.MIStackListFrames;
|
||||||
|
@ -150,9 +150,9 @@ public class MIStack extends AbstractDsfService
|
||||||
}
|
}
|
||||||
|
|
||||||
private void doInitialize(RequestMonitor rm) {
|
private void doInitialize(RequestMonitor rm) {
|
||||||
AbstractMIControl miControl = getServicesTracker().getService(AbstractMIControl.class);
|
ICommandControlService commandControl = getServicesTracker().getService(ICommandControlService.class);
|
||||||
fMICommandCache = new CommandCache(getSession(), miControl);
|
fMICommandCache = new CommandCache(getSession(), commandControl);
|
||||||
fMICommandCache.setContextAvailable(miControl.getControlDMContext(), true);
|
fMICommandCache.setContextAvailable(commandControl.getContext(), true);
|
||||||
fRunControl = getServicesTracker().getService(IRunControl.class);
|
fRunControl = getServicesTracker().getService(IRunControl.class);
|
||||||
|
|
||||||
getSession().addServiceEventListener(this, null);
|
getSession().addServiceEventListener(this, null);
|
||||||
|
|
|
@ -43,13 +43,13 @@ import org.eclipse.dd.dsf.debug.service.command.ICommandListener;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.IEventListener;
|
import org.eclipse.dd.dsf.debug.service.command.IEventListener;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
import org.eclipse.dd.dsf.service.DsfServiceEventHandler;
|
||||||
import org.eclipse.dd.dsf.service.DsfServicesTracker;
|
import org.eclipse.dd.dsf.service.DsfServicesTracker;
|
||||||
import org.eclipse.dd.dsf.service.DsfSession;
|
import org.eclipse.dd.dsf.service.DsfSession;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.ExpressionService.ExpressionInfo;
|
import org.eclipse.dd.mi.service.ExpressionService.ExpressionInfo;
|
||||||
import org.eclipse.dd.mi.service.ExpressionService.MIExpressionDMC;
|
import org.eclipse.dd.mi.service.ExpressionService.MIExpressionDMC;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
|
||||||
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetAttributes;
|
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetAttributes;
|
||||||
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetChildCount;
|
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetChildCount;
|
||||||
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetChildren;
|
import org.eclipse.dd.mi.service.command.commands.ExprMetaGetChildren;
|
||||||
|
@ -923,7 +923,7 @@ public class MIVariableManager implements ICommandControl {
|
||||||
// The control context within which this variable object was created
|
// The control context within which this variable object was created
|
||||||
// It only needs to be stored in the Root VarObj since any children
|
// It only needs to be stored in the Root VarObj since any children
|
||||||
// will have the same control context
|
// will have the same control context
|
||||||
private MIControlDMContext fControlContext = null;
|
private ICommandControlDMContext fControlContext = null;
|
||||||
|
|
||||||
private boolean outOfDate = false;
|
private boolean outOfDate = false;
|
||||||
|
|
||||||
|
@ -937,7 +937,7 @@ public class MIVariableManager implements ICommandControl {
|
||||||
modifiableDescendants = new HashMap<String, MIVariableObject>();
|
modifiableDescendants = new HashMap<String, MIVariableObject>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public MIControlDMContext getControlDMContext() { return fControlContext; }
|
public ICommandControlDMContext getControlDMContext() { return fControlContext; }
|
||||||
|
|
||||||
public boolean isUpdating() { return currentState == STATE_UPDATING; }
|
public boolean isUpdating() { return currentState == STATE_UPDATING; }
|
||||||
|
|
||||||
|
@ -962,7 +962,7 @@ public class MIVariableManager implements ICommandControl {
|
||||||
if (currentState == STATE_NOT_CREATED) {
|
if (currentState == STATE_NOT_CREATED) {
|
||||||
|
|
||||||
currentState = STATE_CREATING;
|
currentState = STATE_CREATING;
|
||||||
fControlContext = DMContexts.getAncestorOfType(exprCtx, MIControlDMContext.class);
|
fControlContext = DMContexts.getAncestorOfType(exprCtx, ICommandControlDMContext.class);
|
||||||
|
|
||||||
fCommandControl.queueCommand(
|
fCommandControl.queueCommand(
|
||||||
new MIVarCreate(exprCtx, exprCtx.getExpression()),
|
new MIVarCreate(exprCtx, exprCtx.getExpression()),
|
||||||
|
|
|
@ -28,6 +28,7 @@ import org.eclipse.dd.dsf.concurrent.DsfRunnable;
|
||||||
import org.eclipse.dd.dsf.concurrent.ThreadSafe;
|
import org.eclipse.dd.dsf.concurrent.ThreadSafe;
|
||||||
import org.eclipse.dd.dsf.datamodel.IDMContext;
|
import org.eclipse.dd.dsf.datamodel.IDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommand;
|
import org.eclipse.dd.dsf.debug.service.command.ICommand;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandListener;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandListener;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
||||||
|
@ -58,7 +59,7 @@ public abstract class AbstractCLIProcess extends Process
|
||||||
public static final String SECONDARY_PROMPT = ">"; //$NON-NLS-1$
|
public static final String SECONDARY_PROMPT = ">"; //$NON-NLS-1$
|
||||||
|
|
||||||
private final DsfSession fSession;
|
private final DsfSession fSession;
|
||||||
private final AbstractMIControl fCommandControl;
|
private final ICommandControlService fCommandControl;
|
||||||
private final OutputStream fOutputStream = new CLIOutputStream();
|
private final OutputStream fOutputStream = new CLIOutputStream();
|
||||||
|
|
||||||
// Client process console stream.
|
// Client process console stream.
|
||||||
|
@ -86,7 +87,7 @@ public abstract class AbstractCLIProcess extends Process
|
||||||
private int fPrompt = 1; // 1 --> Primary prompt "(gdb)"; 2 --> Secondary Prompt ">"
|
private int fPrompt = 1; // 1 --> Primary prompt "(gdb)"; 2 --> Secondary Prompt ">"
|
||||||
|
|
||||||
@ConfinedToDsfExecutor("fSession#getExecutor")
|
@ConfinedToDsfExecutor("fSession#getExecutor")
|
||||||
public AbstractCLIProcess(AbstractMIControl commandControl) throws IOException {
|
public AbstractCLIProcess(ICommandControlService commandControl) throws IOException {
|
||||||
fSession = commandControl.getSession();
|
fSession = commandControl.getSession();
|
||||||
fCommandControl = commandControl;
|
fCommandControl = commandControl;
|
||||||
|
|
||||||
|
@ -120,7 +121,10 @@ public abstract class AbstractCLIProcess extends Process
|
||||||
|
|
||||||
protected DsfSession getSession() { return fSession; }
|
protected DsfSession getSession() { return fSession; }
|
||||||
|
|
||||||
protected AbstractMIControl getCommandControl() { return fCommandControl; }
|
@Deprecated
|
||||||
|
protected AbstractMIControl getCommandControl() { return (AbstractMIControl)fCommandControl; }
|
||||||
|
|
||||||
|
protected ICommandControlService getCommandControlService() { return fCommandControl; }
|
||||||
|
|
||||||
protected boolean isDisposed() { return fDisposed; }
|
protected boolean isDisposed() { return fDisposed; }
|
||||||
|
|
||||||
|
@ -289,20 +293,20 @@ public abstract class AbstractCLIProcess extends Process
|
||||||
// Normal Command Line Interface.
|
// Normal Command Line Interface.
|
||||||
boolean secondary = inSecondaryPrompt();
|
boolean secondary = inSecondaryPrompt();
|
||||||
if (secondary) {
|
if (secondary) {
|
||||||
cmd = new RawCommand(getCommandControl().getControlDMContext(), str);
|
cmd = new RawCommand(getCommandControlService().getContext(), str);
|
||||||
}
|
}
|
||||||
else if (! CLIEventProcessor.isSteppingOperation(str))
|
else if (! CLIEventProcessor.isSteppingOperation(str))
|
||||||
{
|
{
|
||||||
cmd = new ProcessMIInterpreterExecConsole(getCommandControl().getControlDMContext(), str);
|
cmd = new ProcessMIInterpreterExecConsole(getCommandControlService().getContext(), str);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
cmd = new ProcessCLICommand(getCommandControl().getControlDMContext(), str);
|
cmd = new ProcessCLICommand(getCommandControlService().getContext(), str);
|
||||||
}
|
}
|
||||||
final ICommand<MIInfo> finalCmd = cmd;
|
final ICommand<MIInfo> finalCmd = cmd;
|
||||||
fSession.getExecutor().execute(new DsfRunnable() { public void run() {
|
fSession.getExecutor().execute(new DsfRunnable() { public void run() {
|
||||||
if (isDisposed()) return;
|
if (isDisposed()) return;
|
||||||
// Do not wait around for the answer.
|
// Do not wait around for the answer.
|
||||||
getCommandControl().queueCommand(finalCmd, null);
|
getCommandControlService().queueCommand(finalCmd, null);
|
||||||
}});
|
}});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,8 +66,6 @@ import org.eclipse.dd.mi.service.command.output.MIValue;
|
||||||
public abstract class AbstractMIControl extends AbstractDsfService
|
public abstract class AbstractMIControl extends AbstractDsfService
|
||||||
implements ICommandControlService
|
implements ICommandControlService
|
||||||
{
|
{
|
||||||
final static String PROP_INSTANCE_ID = MIPlugin.PLUGIN_ID + ".miControlInstanceId"; //$NON-NLS-1$
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Thread control variables for the transmit and receive threads.
|
* Thread control variables for the transmit and receive threads.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -25,10 +25,12 @@ import org.eclipse.dd.dsf.debug.service.IBreakpoints.IBreakpointsTargetDMContext
|
||||||
import org.eclipse.dd.dsf.debug.service.IProcesses.IProcessDMContext;
|
import org.eclipse.dd.dsf.debug.service.IProcesses.IProcessDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IContainerDMContext;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IContainerDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.ISignals.ISignalsDMContext;
|
import org.eclipse.dd.dsf.debug.service.ISignals.ISignalsDMContext;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandListener;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandListener;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.IEventListener;
|
import org.eclipse.dd.dsf.debug.service.command.IEventListener;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.dsf.service.DsfServicesTracker;
|
import org.eclipse.dd.dsf.service.DsfServicesTracker;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.IMIProcesses;
|
import org.eclipse.dd.mi.service.IMIProcesses;
|
||||||
|
@ -53,9 +55,9 @@ import org.eclipse.dd.mi.service.command.output.MIResultRecord;
|
||||||
public class CLIEventProcessor
|
public class CLIEventProcessor
|
||||||
implements ICommandListener, IEventListener
|
implements ICommandListener, IEventListener
|
||||||
{
|
{
|
||||||
private final AbstractMIControl fCommandControl;
|
private final ICommandControlService fCommandControl;
|
||||||
private MIInferiorProcess fInferior;
|
private MIInferiorProcess fInferior;
|
||||||
private final MIControlDMContext fControlDmc;
|
private final ICommandControlDMContext fControlDmc;
|
||||||
private final List<Object> fEventList = new LinkedList<Object>();
|
private final List<Object> fEventList = new LinkedList<Object>();
|
||||||
|
|
||||||
// Last Thread ID created
|
// Last Thread ID created
|
||||||
|
@ -63,10 +65,10 @@ public class CLIEventProcessor
|
||||||
|
|
||||||
private final DsfServicesTracker fServicesTracker;
|
private final DsfServicesTracker fServicesTracker;
|
||||||
|
|
||||||
public CLIEventProcessor(AbstractMIControl connection, IContainerDMContext containerDmc, MIInferiorProcess inferior) {
|
public CLIEventProcessor(ICommandControlService connection, IContainerDMContext containerDmc, MIInferiorProcess inferior) {
|
||||||
fCommandControl = connection;
|
fCommandControl = connection;
|
||||||
fInferior = inferior;
|
fInferior = inferior;
|
||||||
fControlDmc = DMContexts.getAncestorOfType(containerDmc, MIControlDMContext.class);
|
fControlDmc = DMContexts.getAncestorOfType(containerDmc, ICommandControlDMContext.class);
|
||||||
fServicesTracker = new DsfServicesTracker(MIPlugin.getBundleContext(), fCommandControl.getSession().getId());
|
fServicesTracker = new DsfServicesTracker(MIPlugin.getBundleContext(), fCommandControl.getSession().getId());
|
||||||
connection.addCommandListener(this);
|
connection.addCommandListener(this);
|
||||||
connection.addEventListener(this);
|
connection.addEventListener(this);
|
||||||
|
@ -256,7 +258,7 @@ public class CLIEventProcessor
|
||||||
fCommandControl.getSession().dispatchEvent(event, fCommandControl.getProperties());
|
fCommandControl.getSession().dispatchEvent(event, fCommandControl.getProperties());
|
||||||
} else if (isDetach(operation)) {
|
} else if (isDetach(operation)) {
|
||||||
// if it was a "detach" command change the state.
|
// if it was a "detach" command change the state.
|
||||||
MIEvent<?> event = new MIDetachedEvent(DMContexts.getAncestorOfType(dmc, MIControlDMContext.class), token);
|
MIEvent<?> event = new MIDetachedEvent(DMContexts.getAncestorOfType(dmc, ICommandControlDMContext.class), token);
|
||||||
fCommandControl.getSession().dispatchEvent(event, fCommandControl.getProperties());
|
fCommandControl.getSession().dispatchEvent(event, fCommandControl.getProperties());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,6 +16,7 @@ import org.eclipse.dd.dsf.datamodel.IDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandControl;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControl;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.dsf.service.IDsfService;
|
import org.eclipse.dd.dsf.service.IDsfService;
|
||||||
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.osgi.framework.Constants;
|
import org.osgi.framework.Constants;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -24,6 +25,8 @@ import org.osgi.framework.Constants;
|
||||||
public class MIControlDMContext extends AbstractDMContext
|
public class MIControlDMContext extends AbstractDMContext
|
||||||
implements ICommandControlDMContext
|
implements ICommandControlDMContext
|
||||||
{
|
{
|
||||||
|
final static String PROP_INSTANCE_ID = MIPlugin.PLUGIN_ID + ".miControlInstanceId"; //$NON-NLS-1$
|
||||||
|
|
||||||
private final String fCommandControlFilter;
|
private final String fCommandControlFilter;
|
||||||
private final String fCommandControlId;
|
private final String fCommandControlId;
|
||||||
|
|
||||||
|
@ -39,7 +42,7 @@ public class MIControlDMContext extends AbstractDMContext
|
||||||
"(&" + //$NON-NLS-1$
|
"(&" + //$NON-NLS-1$
|
||||||
"(" + Constants.OBJECTCLASS + "=" + ICommandControl.class.getName() + ")" + //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
"(" + Constants.OBJECTCLASS + "=" + ICommandControl.class.getName() + ")" + //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
||||||
"(" + IDsfService.PROP_SESSION_ID + "=" + sessionId + ")" + //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
"(" + IDsfService.PROP_SESSION_ID + "=" + sessionId + ")" + //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
||||||
"(" + AbstractMIControl.PROP_INSTANCE_ID + "=" + commandControlId + ")" + //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
"(" + PROP_INSTANCE_ID + "=" + commandControlId + ")" + //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
||||||
")"; //$NON-NLS-1$
|
")"; //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -36,6 +36,7 @@ import org.eclipse.dd.dsf.datamodel.AbstractDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IExecutionDMContext;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IExecutionDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IExitedDMEvent;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IExitedDMEvent;
|
||||||
import org.eclipse.dd.dsf.debug.service.IRunControl.IStartedDMEvent;
|
import org.eclipse.dd.dsf.debug.service.IRunControl.IStartedDMEvent;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandListener;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandListener;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
||||||
|
@ -104,7 +105,7 @@ public class MIInferiorProcess extends Process
|
||||||
private final DsfSession fSession;
|
private final DsfSession fSession;
|
||||||
private final PTY fPty;
|
private final PTY fPty;
|
||||||
|
|
||||||
private final AbstractMIControl fCommandControl;
|
private final ICommandControlService fCommandControl;
|
||||||
|
|
||||||
private final IExecutionDMContext fExecutionDMContext;
|
private final IExecutionDMContext fExecutionDMContext;
|
||||||
|
|
||||||
|
@ -141,17 +142,17 @@ public class MIInferiorProcess extends Process
|
||||||
* @param gdbOutputStream The output stream to use to write user IO into.
|
* @param gdbOutputStream The output stream to use to write user IO into.
|
||||||
*/
|
*/
|
||||||
@ConfinedToDsfExecutor("fSession#getExecutor")
|
@ConfinedToDsfExecutor("fSession#getExecutor")
|
||||||
public MIInferiorProcess(AbstractMIControl commandControl, IExecutionDMContext inferiorExecCtx, OutputStream gdbOutputStream) {
|
public MIInferiorProcess(ICommandControlService commandControl, IExecutionDMContext inferiorExecCtx, OutputStream gdbOutputStream) {
|
||||||
this(commandControl, inferiorExecCtx, gdbOutputStream, null);
|
this(commandControl, inferiorExecCtx, gdbOutputStream, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @deprecated {@link #MIInferiorProcess(AbstractMIControl, IExecutionDMContext, OutputStream)}
|
* @deprecated {@link #MIInferiorProcess(ICommandControlService, IExecutionDMContext, OutputStream)}
|
||||||
* should be used instead.
|
* should be used instead.
|
||||||
*/
|
*/
|
||||||
@ConfinedToDsfExecutor("fSession#getExecutor")
|
@ConfinedToDsfExecutor("fSession#getExecutor")
|
||||||
@Deprecated
|
@Deprecated
|
||||||
public MIInferiorProcess(AbstractMIControl commandControl, OutputStream gdbOutputStream) {
|
public MIInferiorProcess(ICommandControlService commandControl, OutputStream gdbOutputStream) {
|
||||||
this(commandControl, null, gdbOutputStream, null);
|
this(commandControl, null, gdbOutputStream, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -165,22 +166,22 @@ public class MIInferiorProcess extends Process
|
||||||
* @param p The terminal to use to write user IO into.
|
* @param p The terminal to use to write user IO into.
|
||||||
*/
|
*/
|
||||||
@ConfinedToDsfExecutor("fSession#getExecutor")
|
@ConfinedToDsfExecutor("fSession#getExecutor")
|
||||||
public MIInferiorProcess(AbstractMIControl commandControl, IExecutionDMContext inferiorExecCtx, PTY p) {
|
public MIInferiorProcess(ICommandControlService commandControl, IExecutionDMContext inferiorExecCtx, PTY p) {
|
||||||
this(commandControl, inferiorExecCtx, null, p);
|
this(commandControl, inferiorExecCtx, null, p);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @deprecated Should use {@link #MIInferiorProcess(AbstractMIControl, IExecutionDMContext, PTY)}
|
* @deprecated Should use {@link #MIInferiorProcess(ICommandControlService, IExecutionDMContext, PTY)}
|
||||||
* instead.
|
* instead.
|
||||||
*/
|
*/
|
||||||
@ConfinedToDsfExecutor("fSession#getExecutor")
|
@ConfinedToDsfExecutor("fSession#getExecutor")
|
||||||
@Deprecated
|
@Deprecated
|
||||||
public MIInferiorProcess(AbstractMIControl commandControl, PTY p) {
|
public MIInferiorProcess(ICommandControlService commandControl, PTY p) {
|
||||||
this(commandControl, null, null, p);
|
this(commandControl, null, null, p);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ConfinedToDsfExecutor("fSession#getExecutor")
|
@ConfinedToDsfExecutor("fSession#getExecutor")
|
||||||
private MIInferiorProcess(AbstractMIControl commandControl, IExecutionDMContext execCtx, final OutputStream gdbOutputStream, PTY p) {
|
private MIInferiorProcess(ICommandControlService commandControl, IExecutionDMContext execCtx, final OutputStream gdbOutputStream, PTY p) {
|
||||||
fCommandControl = commandControl;
|
fCommandControl = commandControl;
|
||||||
fSession = commandControl.getSession();
|
fSession = commandControl.getSession();
|
||||||
fExecutionDMContext = execCtx;
|
fExecutionDMContext = execCtx;
|
||||||
|
@ -244,7 +245,10 @@ public class MIInferiorProcess extends Process
|
||||||
return fSession;
|
return fSession;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected AbstractMIControl getCommandControl() { return fCommandControl; }
|
@Deprecated
|
||||||
|
protected AbstractMIControl getCommandControl() { return (AbstractMIControl)fCommandControl; }
|
||||||
|
|
||||||
|
protected ICommandControlService getCommandControlService() { return fCommandControl; }
|
||||||
|
|
||||||
protected boolean isDisposed() { return fDisposed; }
|
protected boolean isDisposed() { return fDisposed; }
|
||||||
|
|
||||||
|
@ -306,8 +310,8 @@ public class MIInferiorProcess extends Process
|
||||||
rm.setStatus(new Status(IStatus.ERROR, MIPlugin.PLUGIN_ID, IDsfStatusConstants.INVALID_STATE, "GDB is still running.", new IllegalThreadStateException())); //$NON-NLS-1$
|
rm.setStatus(new Status(IStatus.ERROR, MIPlugin.PLUGIN_ID, IDsfStatusConstants.INVALID_STATE, "GDB is still running.", new IllegalThreadStateException())); //$NON-NLS-1$
|
||||||
rm.done();
|
rm.done();
|
||||||
} else {
|
} else {
|
||||||
getCommandControl().queueCommand(
|
getCommandControlService().queueCommand(
|
||||||
new MIGDBShowExitCode(getCommandControl().getControlDMContext()),
|
new MIGDBShowExitCode(getCommandControlService().getContext()),
|
||||||
new DataRequestMonitor<MIGDBShowExitCodeInfo>(fSession.getExecutor(), rm) {
|
new DataRequestMonitor<MIGDBShowExitCodeInfo>(fSession.getExecutor(), rm) {
|
||||||
@Override
|
@Override
|
||||||
protected void handleSuccess() {
|
protected void handleSuccess() {
|
||||||
|
@ -377,8 +381,8 @@ public class MIInferiorProcess extends Process
|
||||||
|
|
||||||
// To avoid a RejectedExecutionException, use an executor that
|
// To avoid a RejectedExecutionException, use an executor that
|
||||||
// immediately executes in the same dispatch cycle.
|
// immediately executes in the same dispatch cycle.
|
||||||
CLIExecAbort cmd = new CLIExecAbort(getCommandControl().getControlDMContext());
|
CLIExecAbort cmd = new CLIExecAbort(getCommandControlService().getContext());
|
||||||
getCommandControl().queueCommand(
|
getCommandControlService().queueCommand(
|
||||||
cmd,
|
cmd,
|
||||||
new DataRequestMonitor<MIInfo>(ImmediateExecutor.getInstance(), null) {
|
new DataRequestMonitor<MIInfo>(ImmediateExecutor.getInstance(), null) {
|
||||||
@Override
|
@Override
|
||||||
|
@ -404,7 +408,7 @@ public class MIInferiorProcess extends Process
|
||||||
if (fExecutionDMContext != null) {
|
if (fExecutionDMContext != null) {
|
||||||
getSession().dispatchEvent(
|
getSession().dispatchEvent(
|
||||||
new InferiorExitedDMEvent(fExecutionDMContext),
|
new InferiorExitedDMEvent(fExecutionDMContext),
|
||||||
fCommandControl.getProperties());
|
getCommandControlService().getProperties());
|
||||||
}
|
}
|
||||||
closeIO();
|
closeIO();
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,6 +24,7 @@ import org.eclipse.dd.dsf.debug.service.command.ICommandListener;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandResult;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandToken;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.IEventListener;
|
import org.eclipse.dd.dsf.debug.service.command.IEventListener;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.dsf.service.DsfServicesTracker;
|
import org.eclipse.dd.dsf.service.DsfServicesTracker;
|
||||||
import org.eclipse.dd.mi.internal.MIPlugin;
|
import org.eclipse.dd.mi.internal.MIPlugin;
|
||||||
import org.eclipse.dd.mi.service.IMIProcesses;
|
import org.eclipse.dd.mi.service.IMIProcesses;
|
||||||
|
@ -81,7 +82,7 @@ public class MIRunControlEventProcessor
|
||||||
* Container context used as the context for the run control events generated
|
* Container context used as the context for the run control events generated
|
||||||
* by this processor.
|
* by this processor.
|
||||||
*/
|
*/
|
||||||
private final MIControlDMContext fControlDmc;
|
private final ICommandControlDMContext fControlDmc;
|
||||||
|
|
||||||
private final DsfServicesTracker fServicesTracker;
|
private final DsfServicesTracker fServicesTracker;
|
||||||
|
|
||||||
|
@ -93,7 +94,7 @@ public class MIRunControlEventProcessor
|
||||||
*/
|
*/
|
||||||
public MIRunControlEventProcessor(AbstractMIControl connection, IContainerDMContext containerDmc) {
|
public MIRunControlEventProcessor(AbstractMIControl connection, IContainerDMContext containerDmc) {
|
||||||
fCommandControl = connection;
|
fCommandControl = connection;
|
||||||
fControlDmc = DMContexts.getAncestorOfType(containerDmc, MIControlDMContext.class);
|
fControlDmc = DMContexts.getAncestorOfType(containerDmc, ICommandControlDMContext.class);
|
||||||
fServicesTracker = new DsfServicesTracker(MIPlugin.getBundleContext(), fCommandControl.getSession().getId());
|
fServicesTracker = new DsfServicesTracker(MIPlugin.getBundleContext(), fCommandControl.getSession().getId());
|
||||||
connection.addEventListener(this);
|
connection.addEventListener(this);
|
||||||
connection.addCommandListener(this);
|
connection.addCommandListener(this);
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.datamodel.IDMContext;
|
import org.eclipse.dd.dsf.datamodel.IDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -23,7 +23,7 @@ public class CLIAttach extends CLICommand<MIInfo> {
|
||||||
super(ctx, "attach " + Integer.toString(pid)); //$NON-NLS-1$
|
super(ctx, "attach " + Integer.toString(pid)); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
public CLIAttach(MIControlDMContext ctx, String pid) {
|
public CLIAttach(ICommandControlDMContext ctx, String pid) {
|
||||||
super(ctx, "attach " + pid); //$NON-NLS-1$
|
super(ctx, "attach " + pid); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -24,7 +24,7 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*/
|
*/
|
||||||
public class CLIExecAbort extends CLICommand<MIInfo>
|
public class CLIExecAbort extends CLICommand<MIInfo>
|
||||||
{
|
{
|
||||||
public CLIExecAbort(MIControlDMContext ctx) {
|
public CLIExecAbort(ICommandControlDMContext ctx) {
|
||||||
super(ctx, "kill"); //$NON-NLS-1$
|
super(ctx, "kill"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -21,7 +21,7 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class CLISource extends CLICommand<MIInfo> {
|
public class CLISource extends CLICommand<MIInfo> {
|
||||||
public CLISource(MIControlDMContext ctx, String file) {
|
public CLISource(ICommandControlDMContext ctx, String file) {
|
||||||
super(ctx, "source " + file); //$NON-NLS-1$
|
super(ctx, "source " + file); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,8 +14,8 @@ package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.debug.service.IExpressions.IExpressionDMContext;
|
import org.eclipse.dd.dsf.debug.service.IExpressions.IExpressionDMContext;
|
||||||
import org.eclipse.dd.dsf.debug.service.IStack.IFrameDMContext;
|
import org.eclipse.dd.dsf.debug.service.IStack.IFrameDMContext;
|
||||||
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.IMIExecutionDMContext;
|
import org.eclipse.dd.mi.service.IMIExecutionDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
|
||||||
import org.eclipse.dd.mi.service.command.output.MIDataEvaluateExpressionInfo;
|
import org.eclipse.dd.mi.service.command.output.MIDataEvaluateExpressionInfo;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
*/
|
*/
|
||||||
public class MIDataEvaluateExpression<V extends MIDataEvaluateExpressionInfo> extends MICommand<V>
|
public class MIDataEvaluateExpression<V extends MIDataEvaluateExpressionInfo> extends MICommand<V>
|
||||||
{
|
{
|
||||||
public MIDataEvaluateExpression(MIControlDMContext ctx, String expr) {
|
public MIDataEvaluateExpression(ICommandControlDMContext ctx, String expr) {
|
||||||
super(ctx, "-data-evaluate-expression", new String[]{expr}); //$NON-NLS-1$
|
super(ctx, "-data-evaluate-expression", new String[]{expr}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -22,7 +22,7 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*/
|
*/
|
||||||
public class MIEnvironmentCD extends MICommand <MIInfo>
|
public class MIEnvironmentCD extends MICommand <MIInfo>
|
||||||
{
|
{
|
||||||
public MIEnvironmentCD(MIControlDMContext ctx, String path) {
|
public MIEnvironmentCD(ICommandControlDMContext ctx, String path) {
|
||||||
super(ctx, "-environment-cd", new String[]{path}); //$NON-NLS-1$
|
super(ctx, "-environment-cd", new String[]{path}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
|
|
||||||
|
@ -25,11 +25,11 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*/
|
*/
|
||||||
public class MIFileExecAndSymbols extends MICommand<MIInfo>
|
public class MIFileExecAndSymbols extends MICommand<MIInfo>
|
||||||
{
|
{
|
||||||
public MIFileExecAndSymbols(MIControlDMContext dmc, String file) {
|
public MIFileExecAndSymbols(ICommandControlDMContext dmc, String file) {
|
||||||
super(dmc, "-file-exec-and-symbols", null, new String[] {file}); //$NON-NLS-1$
|
super(dmc, "-file-exec-and-symbols", null, new String[] {file}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
public MIFileExecAndSymbols(MIControlDMContext dmc) {
|
public MIFileExecAndSymbols(ICommandControlDMContext dmc) {
|
||||||
super(dmc, "-file-exec-and-symbols"); //$NON-NLS-1$
|
super(dmc, "-file-exec-and-symbols"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
|
|
||||||
|
@ -26,11 +26,11 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*/
|
*/
|
||||||
public class MIFileExecFile extends MICommand<MIInfo>
|
public class MIFileExecFile extends MICommand<MIInfo>
|
||||||
{
|
{
|
||||||
public MIFileExecFile(MIControlDMContext dmc, String file) {
|
public MIFileExecFile(ICommandControlDMContext dmc, String file) {
|
||||||
super(dmc, "-file-exec-file", null, new String[] {file}); //$NON-NLS-1$
|
super(dmc, "-file-exec-file", null, new String[] {file}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
public MIFileExecFile(MIControlDMContext dmc) {
|
public MIFileExecFile(ICommandControlDMContext dmc) {
|
||||||
super(dmc, "-file-exec-file"); //$NON-NLS-1$
|
super(dmc, "-file-exec-file"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
|
|
||||||
|
@ -25,11 +25,11 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*/
|
*/
|
||||||
public class MIFileSymbolFile extends MICommand<MIInfo>
|
public class MIFileSymbolFile extends MICommand<MIInfo>
|
||||||
{
|
{
|
||||||
public MIFileSymbolFile(MIControlDMContext dmc, String file) {
|
public MIFileSymbolFile(ICommandControlDMContext dmc, String file) {
|
||||||
super(dmc, "-file-symbol-file", null, new String[] {file}); //$NON-NLS-1$
|
super(dmc, "-file-symbol-file", null, new String[] {file}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
public MIFileSymbolFile(MIControlDMContext dmc) {
|
public MIFileSymbolFile(ICommandControlDMContext dmc) {
|
||||||
super(dmc, "-file-symbol-file"); //$NON-NLS-1$
|
super(dmc, "-file-symbol-file"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -22,11 +22,11 @@ import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
||||||
*/
|
*/
|
||||||
public class MIGDBSetArgs extends MIGDBSet
|
public class MIGDBSetArgs extends MIGDBSet
|
||||||
{
|
{
|
||||||
public MIGDBSetArgs(MIControlDMContext dmc) {
|
public MIGDBSetArgs(ICommandControlDMContext dmc) {
|
||||||
super(dmc, new String[] {"args"}); //$NON-NLS-1$
|
super(dmc, new String[] {"args"}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
public MIGDBSetArgs(MIControlDMContext dmc, String arguments) {
|
public MIGDBSetArgs(ICommandControlDMContext dmc, String arguments) {
|
||||||
super(dmc, null);
|
super(dmc, null);
|
||||||
|
|
||||||
// We do not want to quote the arguments of this command so we must
|
// We do not want to quote the arguments of this command so we must
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -19,7 +19,7 @@ import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
||||||
*/
|
*/
|
||||||
public class MIGDBSetAutoSolib extends MIGDBSet
|
public class MIGDBSetAutoSolib extends MIGDBSet
|
||||||
{
|
{
|
||||||
public MIGDBSetAutoSolib(MIControlDMContext ctx, boolean isSet) {
|
public MIGDBSetAutoSolib(ICommandControlDMContext ctx, boolean isSet) {
|
||||||
super(ctx, new String[] {"auto-solib-add", isSet ? "on" : "off"});//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
super(ctx, new String[] {"auto-solib-add", isSet ? "on" : "off"});//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,7 +10,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -22,7 +22,7 @@ import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
||||||
*/
|
*/
|
||||||
public class MIGDBSetBreakpointApply extends MIGDBSet
|
public class MIGDBSetBreakpointApply extends MIGDBSet
|
||||||
{
|
{
|
||||||
public MIGDBSetBreakpointApply(MIControlDMContext ctx, boolean global) {
|
public MIGDBSetBreakpointApply(ICommandControlDMContext ctx, boolean global) {
|
||||||
super(ctx, new String[] {"breakpoint", "apply", global ? "global" : "process"});//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ //$NON-NLS-4$
|
super(ctx, new String[] {"breakpoint", "apply", global ? "global" : "process"});//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ //$NON-NLS-4$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -19,7 +19,7 @@ import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
||||||
*/
|
*/
|
||||||
public class MIGDBSetNonStop extends MIGDBSet
|
public class MIGDBSetNonStop extends MIGDBSet
|
||||||
{
|
{
|
||||||
public MIGDBSetNonStop(MIControlDMContext ctx, boolean isSet) {
|
public MIGDBSetNonStop(ICommandControlDMContext ctx, boolean isSet) {
|
||||||
super(ctx, new String[] {"non-stop", isSet ? "on" : "off"});//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
super(ctx, new String[] {"non-stop", isSet ? "on" : "off"});//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -10,7 +10,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -19,7 +19,7 @@ import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
||||||
*/
|
*/
|
||||||
public class MIGDBSetSolibSearchPath extends MIGDBSet
|
public class MIGDBSetSolibSearchPath extends MIGDBSet
|
||||||
{
|
{
|
||||||
public MIGDBSetSolibSearchPath(MIControlDMContext ctx, String[] paths) {
|
public MIGDBSetSolibSearchPath(ICommandControlDMContext ctx, String[] paths) {
|
||||||
super(ctx, null);
|
super(ctx, null);
|
||||||
// Overload the parameter
|
// Overload the parameter
|
||||||
String sep = System.getProperty("path.separator", ":"); //$NON-NLS-1$ //$NON-NLS-2$
|
String sep = System.getProperty("path.separator", ":"); //$NON-NLS-1$ //$NON-NLS-2$
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -19,12 +19,12 @@ import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
||||||
*/
|
*/
|
||||||
public class MIGDBSetSysroot extends MIGDBSet
|
public class MIGDBSetSysroot extends MIGDBSet
|
||||||
{
|
{
|
||||||
public MIGDBSetSysroot(MIControlDMContext ctx, String path) {
|
public MIGDBSetSysroot(ICommandControlDMContext ctx, String path) {
|
||||||
super(ctx, new String[] {"sysroot", path});//$NON-NLS-1$
|
super(ctx, new String[] {"sysroot", path});//$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
// Using /dev/null is the recommended way to disable sysroot
|
// Using /dev/null is the recommended way to disable sysroot
|
||||||
public MIGDBSetSysroot(MIControlDMContext ctx) {
|
public MIGDBSetSysroot(ICommandControlDMContext ctx) {
|
||||||
this(ctx, "/dev/null"); //$NON-NLS-1$
|
this(ctx, "/dev/null"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIGDBShowExitCodeInfo;
|
import org.eclipse.dd.mi.service.command.output.MIGDBShowExitCodeInfo;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@ import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
*/
|
*/
|
||||||
public class MIGDBShowExitCode extends MIDataEvaluateExpression<MIGDBShowExitCodeInfo> {
|
public class MIGDBShowExitCode extends MIDataEvaluateExpression<MIGDBShowExitCodeInfo> {
|
||||||
|
|
||||||
public MIGDBShowExitCode(MIControlDMContext ctx) {
|
public MIGDBShowExitCode(ICommandControlDMContext ctx) {
|
||||||
super(ctx, "$_exitcode"); //$NON-NLS-1$
|
super(ctx, "$_exitcode"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*/
|
*/
|
||||||
public class MIInferiorTTYSet extends MICommand<MIInfo>
|
public class MIInferiorTTYSet extends MICommand<MIInfo>
|
||||||
{
|
{
|
||||||
public MIInferiorTTYSet(MIControlDMContext dmc, String tty) {
|
public MIInferiorTTYSet(ICommandControlDMContext dmc, String tty) {
|
||||||
super(dmc, "-inferior-tty-set", null, new String[] {tty}); //$NON-NLS-1$
|
super(dmc, "-inferior-tty-set", null, new String[] {tty}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -12,7 +12,7 @@ package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIListThreadGroupsInfo;
|
import org.eclipse.dd.mi.service.command.output.MIListThreadGroupsInfo;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
|
|
||||||
|
@ -45,23 +45,23 @@ import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
public class MIListThreadGroups extends MICommand<MIListThreadGroupsInfo> {
|
public class MIListThreadGroups extends MICommand<MIListThreadGroupsInfo> {
|
||||||
|
|
||||||
// List all groups being debugged
|
// List all groups being debugged
|
||||||
public MIListThreadGroups(MIControlDMContext ctx) {
|
public MIListThreadGroups(ICommandControlDMContext ctx) {
|
||||||
this(ctx, false);
|
this(ctx, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
// List all groups or threads being debugged which are children of the specified group
|
// List all groups or threads being debugged which are children of the specified group
|
||||||
public MIListThreadGroups(MIControlDMContext ctx, String groupId) {
|
public MIListThreadGroups(ICommandControlDMContext ctx, String groupId) {
|
||||||
this(ctx, groupId, false);
|
this(ctx, groupId, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
// List all groups available on the target
|
// List all groups available on the target
|
||||||
public MIListThreadGroups(MIControlDMContext ctx, boolean listAll) {
|
public MIListThreadGroups(ICommandControlDMContext ctx, boolean listAll) {
|
||||||
this(ctx, null, listAll);
|
this(ctx, null, listAll);
|
||||||
}
|
}
|
||||||
|
|
||||||
// There should be no reason to have both listAll and groupId specified,
|
// There should be no reason to have both listAll and groupId specified,
|
||||||
// so this constructor is private, and exists to avoid duplicating code.
|
// so this constructor is private, and exists to avoid duplicating code.
|
||||||
private MIListThreadGroups(MIControlDMContext ctx, String groupId, boolean listAll) {
|
private MIListThreadGroups(ICommandControlDMContext ctx, String groupId, boolean listAll) {
|
||||||
super(ctx, "-list-thread-groups"); //$NON-NLS-1$
|
super(ctx, "-list-thread-groups"); //$NON-NLS-1$
|
||||||
|
|
||||||
final ArrayList<String> arguments = new ArrayList<String>();
|
final ArrayList<String> arguments = new ArrayList<String>();
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -21,7 +21,7 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*/
|
*/
|
||||||
public class MITargetAttach extends MICommand<MIInfo> {
|
public class MITargetAttach extends MICommand<MIInfo> {
|
||||||
|
|
||||||
public MITargetAttach(MIControlDMContext ctx, String groupId) {
|
public MITargetAttach(ICommandControlDMContext ctx, String groupId) {
|
||||||
super(ctx, "-target-attach", new String[] {groupId}); //$NON-NLS-1$
|
super(ctx, "-target-attach", new String[] {groupId}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -21,7 +21,7 @@ import org.eclipse.dd.mi.service.command.output.MIInfo;
|
||||||
*/
|
*/
|
||||||
public class MITargetDetach extends MICommand<MIInfo> {
|
public class MITargetDetach extends MICommand<MIInfo> {
|
||||||
|
|
||||||
public MITargetDetach(MIControlDMContext ctx, String groupId) {
|
public MITargetDetach(ICommandControlDMContext ctx, String groupId) {
|
||||||
super(ctx, "-target-detach", new String[] {groupId}); //$NON-NLS-1$
|
super(ctx, "-target-detach", new String[] {groupId}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIThreadInfoInfo;
|
import org.eclipse.dd.mi.service.command.output.MIThreadInfoInfo;
|
||||||
|
|
||||||
|
@ -26,11 +26,11 @@ import org.eclipse.dd.mi.service.command.output.MIThreadInfoInfo;
|
||||||
*/
|
*/
|
||||||
public class MIThreadInfo extends MICommand<MIThreadInfoInfo> {
|
public class MIThreadInfo extends MICommand<MIThreadInfoInfo> {
|
||||||
|
|
||||||
public MIThreadInfo(MIControlDMContext dmc) {
|
public MIThreadInfo(ICommandControlDMContext dmc) {
|
||||||
super(dmc, "-thread-info"); //$NON-NLS-1$
|
super(dmc, "-thread-info"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
public MIThreadInfo(MIControlDMContext dmc, String threadId) {
|
public MIThreadInfo(ICommandControlDMContext dmc, String threadId) {
|
||||||
super(dmc, "-thread-info", new String[]{ threadId }); //$NON-NLS-1$
|
super(dmc, "-thread-info", new String[]{ threadId }); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarAssignInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarAssignInfo;
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarAssignInfo;
|
||||||
*/
|
*/
|
||||||
public class MIVarAssign extends MICommand<MIVarAssignInfo>
|
public class MIVarAssign extends MICommand<MIVarAssignInfo>
|
||||||
{
|
{
|
||||||
public MIVarAssign(MIControlDMContext ctx, String name, String expression) {
|
public MIVarAssign(ICommandControlDMContext ctx, String name, String expression) {
|
||||||
super(ctx, "-var-assign", new String[]{name, expression}); //$NON-NLS-1$
|
super(ctx, "-var-assign", new String[]{name, expression}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarDeleteInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarDeleteInfo;
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarDeleteInfo;
|
||||||
*/
|
*/
|
||||||
public class MIVarDelete extends MICommand<MIVarDeleteInfo>
|
public class MIVarDelete extends MICommand<MIVarDeleteInfo>
|
||||||
{
|
{
|
||||||
public MIVarDelete(MIControlDMContext dmc, String name) {
|
public MIVarDelete(ICommandControlDMContext dmc, String name) {
|
||||||
super(dmc, "-var-delete", new String[]{name}); //$NON-NLS-1$
|
super(dmc, "-var-delete", new String[]{name}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarEvaluateExpressionInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarEvaluateExpressionInfo;
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarEvaluateExpressionInfo;
|
||||||
*/
|
*/
|
||||||
public class MIVarEvaluateExpression extends MICommand<MIVarEvaluateExpressionInfo> {
|
public class MIVarEvaluateExpression extends MICommand<MIVarEvaluateExpressionInfo> {
|
||||||
|
|
||||||
public MIVarEvaluateExpression(MIControlDMContext dmc, String name) {
|
public MIVarEvaluateExpression(ICommandControlDMContext dmc, String name) {
|
||||||
super(dmc, "-var-evaluate-expression", new String[] { name }); //$NON-NLS-1$
|
super(dmc, "-var-evaluate-expression", new String[] { name }); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarInfoExpressionInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarInfoExpressionInfo;
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarInfoExpressionInfo;
|
||||||
//MIVarInfoExpression.java
|
//MIVarInfoExpression.java
|
||||||
public class MIVarInfoExpression extends MICommand<MIVarInfoExpressionInfo>
|
public class MIVarInfoExpression extends MICommand<MIVarInfoExpressionInfo>
|
||||||
{
|
{
|
||||||
public MIVarInfoExpression(MIControlDMContext ctx, String name) {
|
public MIVarInfoExpression(ICommandControlDMContext ctx, String name) {
|
||||||
super(ctx, "-var-info-expression", new String[]{name}); //$NON-NLS-1$
|
super(ctx, "-var-info-expression", new String[]{name}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarInfoPathExpressionInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarInfoPathExpressionInfo;
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarInfoPathExpressionInfo;
|
||||||
|
|
||||||
public class MIVarInfoPathExpression extends MICommand<MIVarInfoPathExpressionInfo>
|
public class MIVarInfoPathExpression extends MICommand<MIVarInfoPathExpressionInfo>
|
||||||
{
|
{
|
||||||
public MIVarInfoPathExpression(MIControlDMContext dmc, String name) {
|
public MIVarInfoPathExpression(ICommandControlDMContext dmc, String name) {
|
||||||
super(dmc, "-var-info-path-expression", new String[]{name}); //$NON-NLS-1$
|
super(dmc, "-var-info-path-expression", new String[]{name}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarInfoTypeInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarInfoTypeInfo;
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarInfoTypeInfo;
|
||||||
*/
|
*/
|
||||||
public class MIVarInfoType extends MICommand<MIVarInfoTypeInfo>
|
public class MIVarInfoType extends MICommand<MIVarInfoTypeInfo>
|
||||||
{
|
{
|
||||||
public MIVarInfoType(MIControlDMContext ctx, String name) {
|
public MIVarInfoType(ICommandControlDMContext ctx, String name) {
|
||||||
super(ctx, "-var-info-type", new String[]{name}); //$NON-NLS-1$
|
super(ctx, "-var-info-type", new String[]{name}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarListChildrenInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarListChildrenInfo;
|
||||||
|
|
||||||
|
@ -29,7 +29,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarListChildrenInfo;
|
||||||
*/
|
*/
|
||||||
public class MIVarListChildren extends MICommand<MIVarListChildrenInfo>
|
public class MIVarListChildren extends MICommand<MIVarListChildrenInfo>
|
||||||
{
|
{
|
||||||
public MIVarListChildren(MIControlDMContext ctx, String name) {
|
public MIVarListChildren(ICommandControlDMContext ctx, String name) {
|
||||||
super(ctx, "-var-list-children", new String[]{name}); //$NON-NLS-1$
|
super(ctx, "-var-list-children", new String[]{name}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.debug.service.IFormattedValues;
|
import org.eclipse.dd.dsf.debug.service.IFormattedValues;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarSetFormatInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarSetFormatInfo;
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarSetFormatInfo;
|
||||||
*/
|
*/
|
||||||
public class MIVarSetFormat extends MICommand<MIVarSetFormatInfo>
|
public class MIVarSetFormat extends MICommand<MIVarSetFormatInfo>
|
||||||
{
|
{
|
||||||
public MIVarSetFormat(MIControlDMContext ctx, String name, String fmt) {
|
public MIVarSetFormat(ICommandControlDMContext ctx, String name, String fmt) {
|
||||||
super(ctx, "-var-set-format"); //$NON-NLS-1$
|
super(ctx, "-var-set-format"); //$NON-NLS-1$
|
||||||
setParameters(new String[]{name, getFormat(fmt)});
|
setParameters(new String[]{name, getFormat(fmt)});
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarShowAttributesInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarShowAttributesInfo;
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarShowAttributesInfo;
|
||||||
|
|
||||||
public class MIVarShowAttributes extends MICommand<MIVarShowAttributesInfo>
|
public class MIVarShowAttributes extends MICommand<MIVarShowAttributesInfo>
|
||||||
{
|
{
|
||||||
public MIVarShowAttributes(MIControlDMContext ctx, String name) {
|
public MIVarShowAttributes(ICommandControlDMContext ctx, String name) {
|
||||||
super(ctx, "-var-show-attributes", new String[]{name}); //$NON-NLS-1$
|
super(ctx, "-var-show-attributes", new String[]{name}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarShowFormatInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarShowFormatInfo;
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarShowFormatInfo;
|
||||||
*/
|
*/
|
||||||
public class MIVarShowFormat extends MICommand<MIVarShowFormatInfo>
|
public class MIVarShowFormat extends MICommand<MIVarShowFormatInfo>
|
||||||
{
|
{
|
||||||
public MIVarShowFormat(MIControlDMContext ctx, String name) {
|
public MIVarShowFormat(ICommandControlDMContext ctx, String name) {
|
||||||
super(ctx, "-var-show-format", new String[]{name}); //$NON-NLS-1$
|
super(ctx, "-var-show-format", new String[]{name}); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
package org.eclipse.dd.mi.service.command.commands;
|
package org.eclipse.dd.mi.service.command.commands;
|
||||||
|
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
import org.eclipse.dd.mi.service.command.output.MIOutput;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIVarUpdateInfo;
|
import org.eclipse.dd.mi.service.command.output.MIVarUpdateInfo;
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ import org.eclipse.dd.mi.service.command.output.MIVarUpdateInfo;
|
||||||
*/
|
*/
|
||||||
public class MIVarUpdate extends MICommand<MIVarUpdateInfo> {
|
public class MIVarUpdate extends MICommand<MIVarUpdateInfo> {
|
||||||
|
|
||||||
public MIVarUpdate(MIControlDMContext dmc, String name) {
|
public MIVarUpdate(ICommandControlDMContext dmc, String name) {
|
||||||
super(dmc, "-var-update", new String[] { "1", name }); //$NON-NLS-1$//$NON-NLS-2$
|
super(dmc, "-var-update", new String[] { "1", name }); //$NON-NLS-1$//$NON-NLS-2$
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
package org.eclipse.dd.mi.service.command.events;
|
package org.eclipse.dd.mi.service.command.events;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.concurrent.Immutable;
|
import org.eclipse.dd.dsf.concurrent.Immutable;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -21,9 +21,9 @@ import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
||||||
* ^running
|
* ^running
|
||||||
*/
|
*/
|
||||||
@Immutable
|
@Immutable
|
||||||
public class MIDetachedEvent extends MIEvent<MIControlDMContext> {
|
public class MIDetachedEvent extends MIEvent<ICommandControlDMContext> {
|
||||||
|
|
||||||
public MIDetachedEvent(MIControlDMContext ctx, int token) {
|
public MIDetachedEvent(ICommandControlDMContext ctx, int token) {
|
||||||
super(ctx, token, null);
|
super(ctx, token, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ package org.eclipse.dd.mi.service.command.events;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.concurrent.Immutable;
|
import org.eclipse.dd.dsf.concurrent.Immutable;
|
||||||
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -24,9 +24,9 @@ import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
||||||
* {@link ICommandControlService.ICommandControlShutdownDMEvent}.
|
* {@link ICommandControlService.ICommandControlShutdownDMEvent}.
|
||||||
*/
|
*/
|
||||||
@Immutable
|
@Immutable
|
||||||
public class MIGDBExitEvent extends MIEvent<MIControlDMContext> {
|
public class MIGDBExitEvent extends MIEvent<ICommandControlDMContext> {
|
||||||
|
|
||||||
public MIGDBExitEvent(MIControlDMContext ctx, int token) {
|
public MIGDBExitEvent(ICommandControlDMContext ctx, int token) {
|
||||||
super(ctx, token, null);
|
super(ctx, token, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
package org.eclipse.dd.mi.service.command.events;
|
package org.eclipse.dd.mi.service.command.events;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.concurrent.Immutable;
|
import org.eclipse.dd.dsf.concurrent.Immutable;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIConst;
|
import org.eclipse.dd.mi.service.command.output.MIConst;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIResult;
|
import org.eclipse.dd.mi.service.command.output.MIResult;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIValue;
|
import org.eclipse.dd.mi.service.command.output.MIValue;
|
||||||
|
@ -25,11 +25,11 @@ import org.eclipse.dd.mi.service.command.output.MIValue;
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Immutable
|
@Immutable
|
||||||
public class MIInferiorExitEvent extends MIEvent<MIControlDMContext> {
|
public class MIInferiorExitEvent extends MIEvent<ICommandControlDMContext> {
|
||||||
|
|
||||||
final private int code;
|
final private int code;
|
||||||
|
|
||||||
public MIInferiorExitEvent(MIControlDMContext ctx, int token, MIResult[] results, int code) {
|
public MIInferiorExitEvent(ICommandControlDMContext ctx, int token, MIResult[] results, int code) {
|
||||||
super(ctx, token, results);
|
super(ctx, token, results);
|
||||||
this.code = code;
|
this.code = code;
|
||||||
}
|
}
|
||||||
|
@ -38,7 +38,7 @@ public class MIInferiorExitEvent extends MIEvent<MIControlDMContext> {
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static MIInferiorExitEvent parse(MIControlDMContext ctx, int token, MIResult[] results)
|
public static MIInferiorExitEvent parse(ICommandControlDMContext ctx, int token, MIResult[] results)
|
||||||
{
|
{
|
||||||
int code = 0;
|
int code = 0;
|
||||||
if (results != null) {
|
if (results != null) {
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
package org.eclipse.dd.mi.service.command.events;
|
package org.eclipse.dd.mi.service.command.events;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.concurrent.Immutable;
|
import org.eclipse.dd.dsf.concurrent.Immutable;
|
||||||
import org.eclipse.dd.mi.service.command.MIControlDMContext;
|
import org.eclipse.dd.dsf.debug.service.command.ICommandControlService.ICommandControlDMContext;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIConst;
|
import org.eclipse.dd.mi.service.command.output.MIConst;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIResult;
|
import org.eclipse.dd.mi.service.command.output.MIResult;
|
||||||
import org.eclipse.dd.mi.service.command.output.MIValue;
|
import org.eclipse.dd.mi.service.command.output.MIValue;
|
||||||
|
@ -25,12 +25,12 @@ import org.eclipse.dd.mi.service.command.output.MIValue;
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Immutable
|
@Immutable
|
||||||
public class MIInferiorSignalExitEvent extends MIEvent<MIControlDMContext> {
|
public class MIInferiorSignalExitEvent extends MIEvent<ICommandControlDMContext> {
|
||||||
|
|
||||||
final private String sigName;
|
final private String sigName;
|
||||||
final private String sigMeaning;
|
final private String sigMeaning;
|
||||||
|
|
||||||
public MIInferiorSignalExitEvent(MIControlDMContext ctx, int token, MIResult[] results, String sigName, String sigMeaning) {
|
public MIInferiorSignalExitEvent(ICommandControlDMContext ctx, int token, MIResult[] results, String sigName, String sigMeaning) {
|
||||||
super(ctx, token, results);
|
super(ctx, token, results);
|
||||||
this.sigName = sigName;
|
this.sigName = sigName;
|
||||||
this.sigMeaning = sigMeaning;
|
this.sigMeaning = sigMeaning;
|
||||||
|
@ -44,7 +44,7 @@ public class MIInferiorSignalExitEvent extends MIEvent<MIControlDMContext> {
|
||||||
return sigMeaning;
|
return sigMeaning;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static MIInferiorSignalExitEvent parse(MIControlDMContext ctx, int token, MIResult[] results)
|
public static MIInferiorSignalExitEvent parse(ICommandControlDMContext ctx, int token, MIResult[] results)
|
||||||
{
|
{
|
||||||
String sigName = ""; //$NON-NLS-1$
|
String sigName = ""; //$NON-NLS-1$
|
||||||
String sigMeaning = ""; //$NON-NLS-1$
|
String sigMeaning = ""; //$NON-NLS-1$
|
||||||
|
|
Loading…
Add table
Reference in a new issue