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

Revert "Bug 462988 - Register grouping should work with different implementations of IRegisters service"

This reverts commit 404c093923.
This commit is contained in:
Mikhail Khodjaiants 2015-03-24 15:23:43 -04:00
parent 404c093923
commit 3c13a71017
5 changed files with 9 additions and 1363 deletions

View file

@ -33,7 +33,6 @@ import org.eclipse.cdt.dsf.gdb.service.IGDBHardwareAndOS;
import org.eclipse.cdt.dsf.gdb.service.IGDBTraceControl;
import org.eclipse.cdt.dsf.mi.service.CSourceLookup;
import org.eclipse.cdt.dsf.mi.service.IMIBackend;
import org.eclipse.cdt.dsf.mi.service.IMIRegisters;
import org.eclipse.cdt.dsf.mi.service.MIBreakpointsManager;
import org.eclipse.cdt.dsf.mi.service.MIBreakpointsSynchronizer;
import org.eclipse.cdt.dsf.service.DsfSession;
@ -108,10 +107,6 @@ public class ServicesLaunchSequence extends Sequence {
fLaunch.getServiceFactory().createService(MIBreakpointsManager.class, fSession).initialize(requestMonitor);
}},
new Step() { @Override
public void execute(RequestMonitor requestMonitor) {
fLaunch.getServiceFactory().createService(IMIRegisters.class, fSession).initialize(requestMonitor);
}},
new Step() { @Override
public void execute(RequestMonitor requestMonitor) {
fLaunch.getServiceFactory().createService(IRegisters.class, fSession).initialize(requestMonitor);
}},

View file

@ -43,14 +43,12 @@ import org.eclipse.cdt.dsf.gdb.service.command.GDBControl_7_7;
import org.eclipse.cdt.dsf.mi.service.CSourceLookup;
import org.eclipse.cdt.dsf.mi.service.IMIBackend;
import org.eclipse.cdt.dsf.mi.service.IMIExpressions;
import org.eclipse.cdt.dsf.mi.service.IMIRegisters;
import org.eclipse.cdt.dsf.mi.service.MIBreakpoints;
import org.eclipse.cdt.dsf.mi.service.MIBreakpointsManager;
import org.eclipse.cdt.dsf.mi.service.MIBreakpointsSynchronizer;
import org.eclipse.cdt.dsf.mi.service.MIDisassembly;
import org.eclipse.cdt.dsf.mi.service.MIExpressions;
import org.eclipse.cdt.dsf.mi.service.MIModules;
import org.eclipse.cdt.dsf.mi.service.MIRegisters;
import org.eclipse.cdt.dsf.mi.service.MIStack;
import org.eclipse.cdt.dsf.mi.service.command.CommandFactory;
import org.eclipse.cdt.dsf.service.DsfSession;
@ -122,9 +120,6 @@ public class GdbDebugServicesFactory extends AbstractDsfDebugServicesFactory {
else if (MIBreakpointsSynchronizer.class.isAssignableFrom(clazz)) {
return (V)createBreakpointsSynchronizerService(session);
}
else if (IMIRegisters.class.isAssignableFrom(clazz)) {
return (V)createMIRegistersService(session);
}
return super.createService(clazz, session, optionalArguments);
}
@ -236,7 +231,7 @@ public class GdbDebugServicesFactory extends AbstractDsfDebugServicesFactory {
@Override
protected IRegisters createRegistersService(DsfSession session) {
return new GDBManagedRegisterGroups(session);
return new GDBRegisters(session);
}
@Override
@ -291,11 +286,4 @@ public class GdbDebugServicesFactory extends AbstractDsfDebugServicesFactory {
protected MIBreakpointsSynchronizer createBreakpointsSynchronizerService(DsfSession session) {
return new MIBreakpointsSynchronizer(session);
}
/**
* @since 4.7
*/
protected IMIRegisters createMIRegistersService(DsfSession session) {
return new MIRegisters(session);
}
}

View file

@ -1,43 +0,0 @@
/*******************************************************************************
* Copyright (c) 2015 Mentor Graphics and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Mentor Graphics - Initial API and implementation
*******************************************************************************/
package org.eclipse.cdt.dsf.mi.service;
import org.eclipse.cdt.dsf.debug.service.IRegisters;
import org.eclipse.cdt.dsf.debug.service.IRunControl.IContainerDMContext;
import org.eclipse.cdt.dsf.debug.service.IStack.IFrameDMContext;
/**
* @since 4.7
*/
public interface IMIRegisters extends IRegisters {
public interface IMIRegisterGroupDMContext extends IRegisterGroupDMContext {
public int getGroupNo();
public String getName();
public void setName(String groupName);
}
public interface IMIRegisterDMContext extends IRegisterDMContext {
public int getRegNo();
public String getName();
}
public IMIRegisterGroupDMContext createRegisterGroupDMC(IContainerDMContext contDmc, int groupNo, String groupName);
public IMIRegisterDMContext createRegisterDMC(IMIRegisterGroupDMContext groupDmc, int regNo, String regName);
public IMIRegisterDMContext createRegisterDMC(IMIRegisterGroupDMContext groupDmc, IFrameDMContext frameDmc, int regNo, String regName);
public String getRootRegisterGroupName();
public String getRootRegisterGroupDescription();
}

View file

@ -64,10 +64,9 @@ import org.osgi.framework.BundleContext;
* events being issued. Doing this in the handlers as opposed to when
* the events are generated, guarantees that the state of the service will
* always be consistent with the events.
* @since 4.7
*/
public class MIRegisters extends AbstractDsfService implements IMIRegisters, ICachingService {
public class MIRegisters extends AbstractDsfService implements IRegisters, ICachingService {
/**
* @since 4.6
*/
@ -84,7 +83,7 @@ public class MIRegisters extends AbstractDsfService implements IMIRegisters, ICa
* Support class used to construct Register Group DMCs.
*/
public static class MIRegisterGroupDMC extends AbstractDMContext implements IMIRegisterGroupDMContext {
public static class MIRegisterGroupDMC extends AbstractDMContext implements IRegisterGroupDMContext {
private int fGroupNo;
private String fGroupName;
@ -94,16 +93,11 @@ public class MIRegisters extends AbstractDsfService implements IMIRegisters, ICa
fGroupName = groupName;
}
@Override
public int getGroupNo() { return fGroupNo; }
@Override
public String getName() { return fGroupName; }
public int getGroupNo() { return fGroupNo; }
public String getName() { return fGroupName; }
/**
* @since 4.6
*/
@Override
public void setName(String groupName) {
fGroupName = groupName;
}
@ -116,7 +110,6 @@ public class MIRegisters extends AbstractDsfService implements IMIRegisters, ICa
@Override
public int hashCode() { return super.baseHashCode() ^ fGroupNo; }
@Override
public String toString() { return baseToString() + ".group[" + fGroupNo + "," + fGroupName + "]"; } //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
}
@ -125,7 +118,7 @@ public class MIRegisters extends AbstractDsfService implements IMIRegisters, ICa
* Support class used to construct Register DMCs.
*/
public static class MIRegisterDMC extends AbstractDMContext implements IMIRegisterDMContext {
public static class MIRegisterDMC extends AbstractDMContext implements IRegisterDMContext {
private int fRegNo;
private String fRegName;
@ -165,11 +158,8 @@ public class MIRegisters extends AbstractDsfService implements IMIRegisters, ICa
fRegName = regName;
}
@Override
public int getRegNo() { return fRegNo; }
@Override
public String getName() { return fRegName; }
public int getRegNo() { return fRegNo; }
public String getName() { return fRegName; }
@Override
public boolean equals(Object other) {
@ -288,12 +278,7 @@ public class MIRegisters extends AbstractDsfService implements IMIRegisters, ICa
/*
* Make ourselves known so clients can use us.
*/
register(
new String[]{
IMIRegisters.class.getName(),
MIRegisters.class.getName()
},
new Hashtable<String,String>());
register(new String[]{IRegisters.class.getName(), MIRegisters.class.getName()}, new Hashtable<String,String>());
requestMonitor.done();
}
@ -817,46 +802,4 @@ public class MIRegisters extends AbstractDsfService implements IMIRegisters, ICa
fRegisterNameCache.reset(context);
fRegisterValueCache.reset(context);
}
/**
* @since 4.7
*/
@Override
public IMIRegisterGroupDMContext createRegisterGroupDMC(IContainerDMContext contDmc, int groupNo, String groupName) {
return new MIRegisterGroupDMC(this, contDmc, groupNo, groupName);
}
/**
* @since 4.7
*/
@Override
public IMIRegisterDMContext createRegisterDMC(IMIRegisterGroupDMContext groupDmc, int regNo, String regName) {
assert (groupDmc instanceof MIRegisterGroupDMC);
return new MIRegisterDMC(this, (MIRegisterGroupDMC)groupDmc, regNo, regName);
}
/**
* @since 4.7
*/
@Override
public IMIRegisterDMContext createRegisterDMC(IMIRegisterGroupDMContext groupDmc, IFrameDMContext frameDmc, int regNo, String regName) {
assert (groupDmc instanceof MIRegisterGroupDMC);
return new MIRegisterDMC(this, (MIRegisterGroupDMC)groupDmc, frameDmc, regNo, regName);
}
/**
* @since 4.7
*/
@Override
public String getRootRegisterGroupName() {
return ROOT_GROUP_NAME;
}
/**
* @since 4.7
*/
@Override
public String getRootRegisterGroupDescription() {
return ROOT_GROUP_DESCRIPTION;
}
}