mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-16 13:35:22 +02:00
[246320] - [registers][view model] Register VM nodes do not use findDMCInPath() in encodeMemento()/compareMemento()
This commit is contained in:
parent
cefb06a952
commit
73572c5065
3 changed files with 184 additions and 303 deletions
|
@ -71,7 +71,6 @@ import org.eclipse.jface.viewers.ICellModifier;
|
||||||
import org.eclipse.jface.viewers.TextCellEditor;
|
import org.eclipse.jface.viewers.TextCellEditor;
|
||||||
import org.eclipse.jface.viewers.TreePath;
|
import org.eclipse.jface.viewers.TreePath;
|
||||||
import org.eclipse.swt.widgets.Composite;
|
import org.eclipse.swt.widgets.Composite;
|
||||||
import org.eclipse.ui.IMemento;
|
|
||||||
|
|
||||||
@SuppressWarnings("restriction")
|
@SuppressWarnings("restriction")
|
||||||
public class RegisterBitFieldVMNode extends AbstractExpressionVMNode
|
public class RegisterBitFieldVMNode extends AbstractExpressionVMNode
|
||||||
|
@ -806,61 +805,41 @@ public class RegisterBitFieldVMNode extends AbstractExpressionVMNode
|
||||||
private final String MEMENTO_NAME = "BITFIELD_MEMENTO_NAME"; //$NON-NLS-1$
|
private final String MEMENTO_NAME = "BITFIELD_MEMENTO_NAME"; //$NON-NLS-1$
|
||||||
|
|
||||||
public void compareElements(IElementCompareRequest[] requests) {
|
public void compareElements(IElementCompareRequest[] requests) {
|
||||||
|
|
||||||
for ( final IElementCompareRequest request : requests ) {
|
for ( final IElementCompareRequest request : requests ) {
|
||||||
|
final String mementoName = request.getMemento().getString(MEMENTO_NAME);
|
||||||
Object element = request.getElement();
|
|
||||||
final IMemento memento = request.getMemento();
|
|
||||||
final String mementoName = memento.getString(MEMENTO_NAME);
|
|
||||||
|
|
||||||
if (mementoName != null) {
|
final IBitFieldDMContext regDmc = findDmcInPath(request.getViewerInput(), request.getElementPath(), IBitFieldDMContext.class);
|
||||||
if (element instanceof IDMVMContext) {
|
if (regDmc == null || mementoName == null) {
|
||||||
|
request.done();
|
||||||
IDMContext dmc = ((IDMVMContext)element).getDMContext();
|
continue;
|
||||||
|
}
|
||||||
if ( dmc instanceof IBitFieldDMContext )
|
|
||||||
{
|
// Now go get the model data for the single register group found.
|
||||||
final IBitFieldDMContext bitFieldDmc = (IBitFieldDMContext) dmc;
|
try {
|
||||||
|
getSession().getExecutor().execute(new DsfRunnable() {
|
||||||
|
public void run() {
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
||||||
|
if ( regService != null ) {
|
||||||
/*
|
regService.getBitFieldData(
|
||||||
* Now make sure the register group is the one we want.
|
regDmc,
|
||||||
*/
|
new DataRequestMonitor<IBitFieldDMData>(regService.getExecutor(), null) {
|
||||||
|
@Override
|
||||||
final DataRequestMonitor<IBitFieldDMData> dataDone = new DataRequestMonitor<IBitFieldDMData>(regService.getExecutor(), null) {
|
protected void handleCompleted() {
|
||||||
@Override
|
if ( getStatus().isOK() ) {
|
||||||
protected void handleCompleted() {
|
// Now make sure the register group is the one we want.
|
||||||
if ( getStatus().isOK() ) {
|
request.setEqual( mementoName.equals( "BitField." + getData().getName() ) ); //$NON-NLS-1$
|
||||||
request.setEqual( mementoName.equals( "BitField." + getData().getName() ) ); //$NON-NLS-1$
|
}
|
||||||
}
|
request.done();
|
||||||
request.done();
|
}
|
||||||
}
|
});
|
||||||
};
|
} else {
|
||||||
|
|
||||||
/*
|
|
||||||
* Now go get the model data for the single register group found.
|
|
||||||
*/
|
|
||||||
try {
|
|
||||||
getSession().getExecutor().execute(new DsfRunnable() {
|
|
||||||
public void run() {
|
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
|
||||||
if ( regService != null ) {
|
|
||||||
regService.getBitFieldData( bitFieldDmc, dataDone );
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} catch (RejectedExecutionException e) {
|
|
||||||
request.done();
|
request.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
|
} catch (RejectedExecutionException e) {
|
||||||
|
request.done();
|
||||||
}
|
}
|
||||||
request.done();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -869,57 +848,39 @@ public class RegisterBitFieldVMNode extends AbstractExpressionVMNode
|
||||||
* @see org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoProvider#encodeElements(org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoRequest[])
|
* @see org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoProvider#encodeElements(org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoRequest[])
|
||||||
*/
|
*/
|
||||||
public void encodeElements(IElementMementoRequest[] requests) {
|
public void encodeElements(IElementMementoRequest[] requests) {
|
||||||
|
for ( final IElementMementoRequest request : requests ) {
|
||||||
for ( final IElementMementoRequest request : requests ) {
|
final IBitFieldDMContext regDmc = findDmcInPath(request.getViewerInput(), request.getElementPath(), IBitFieldDMContext.class);
|
||||||
|
if (regDmc == null) {
|
||||||
Object element = request.getElement();
|
request.done();
|
||||||
final IMemento memento = request.getMemento();
|
continue;
|
||||||
|
}
|
||||||
if (element instanceof IDMVMContext) {
|
|
||||||
|
// Now go get the model data for the single register group found.
|
||||||
IDMContext dmc = ((IDMVMContext)element).getDMContext();
|
try {
|
||||||
|
getSession().getExecutor().execute(new DsfRunnable() {
|
||||||
if ( dmc instanceof IBitFieldDMContext )
|
public void run() {
|
||||||
{
|
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
||||||
final IBitFieldDMContext bitFieldDmc = (IBitFieldDMContext) dmc;
|
if ( regService != null ) {
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
regService.getBitFieldData(
|
||||||
|
regDmc,
|
||||||
/*
|
new DataRequestMonitor<IBitFieldDMData>(regService.getExecutor(), null) {
|
||||||
* Now make sure the register group is the one we want.
|
@Override
|
||||||
*/
|
protected void handleCompleted() {
|
||||||
final DataRequestMonitor<IBitFieldDMData> dataDone = new DataRequestMonitor<IBitFieldDMData>(regService.getExecutor(), null) {
|
if ( getStatus().isOK() ) {
|
||||||
@Override
|
// Now make sure the register group is the one we want.
|
||||||
protected void handleCompleted() {
|
request.getMemento().putString(MEMENTO_NAME, "BitField." + getData().getName()); //$NON-NLS-1$
|
||||||
if ( getStatus().isOK() ) {
|
}
|
||||||
memento.putString(MEMENTO_NAME, "BitField." + getData().getName()); //$NON-NLS-1$
|
request.done();
|
||||||
}
|
}
|
||||||
request.done();
|
});
|
||||||
}
|
} else {
|
||||||
};
|
request.done();
|
||||||
|
}
|
||||||
/*
|
}
|
||||||
* Now go get the model data for the single register group found.
|
});
|
||||||
*/
|
} catch (RejectedExecutionException e) {
|
||||||
try {
|
request.done();
|
||||||
getSession().getExecutor().execute(new DsfRunnable() {
|
|
||||||
public void run() {
|
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
|
||||||
if ( regService != null ) {
|
|
||||||
regService.getBitFieldData( bitFieldDmc, dataDone );
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} catch (RejectedExecutionException e) {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
request.done();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,7 +58,6 @@ import org.eclipse.jface.viewers.ICellModifier;
|
||||||
import org.eclipse.jface.viewers.TextCellEditor;
|
import org.eclipse.jface.viewers.TextCellEditor;
|
||||||
import org.eclipse.jface.viewers.TreePath;
|
import org.eclipse.jface.viewers.TreePath;
|
||||||
import org.eclipse.swt.widgets.Composite;
|
import org.eclipse.swt.widgets.Composite;
|
||||||
import org.eclipse.ui.IMemento;
|
|
||||||
|
|
||||||
@SuppressWarnings("restriction")
|
@SuppressWarnings("restriction")
|
||||||
public class RegisterGroupVMNode extends AbstractExpressionVMNode
|
public class RegisterGroupVMNode extends AbstractExpressionVMNode
|
||||||
|
@ -500,61 +499,41 @@ public class RegisterGroupVMNode extends AbstractExpressionVMNode
|
||||||
private final String MEMENTO_NAME = "GROUP_MEMENTO_NAME"; //$NON-NLS-1$
|
private final String MEMENTO_NAME = "GROUP_MEMENTO_NAME"; //$NON-NLS-1$
|
||||||
|
|
||||||
public void compareElements(IElementCompareRequest[] requests) {
|
public void compareElements(IElementCompareRequest[] requests) {
|
||||||
|
for (final IElementCompareRequest request : requests ) {
|
||||||
for ( final IElementCompareRequest request : requests ) {
|
final IRegisterGroupDMContext regDmc = findDmcInPath(request.getViewerInput(), request.getElementPath(), IRegisterGroupDMContext.class);
|
||||||
|
final String mementoName = request.getMemento().getString(MEMENTO_NAME);
|
||||||
Object element = request.getElement();
|
|
||||||
final IMemento memento = request.getMemento();
|
|
||||||
final String mementoName = memento.getString(MEMENTO_NAME);
|
|
||||||
|
|
||||||
if (mementoName != null) {
|
if (regDmc == null || mementoName == null) {
|
||||||
if (element instanceof IDMVMContext) {
|
request.done();
|
||||||
|
continue;
|
||||||
IDMContext dmc = ((IDMVMContext)element).getDMContext();
|
}
|
||||||
|
|
||||||
if ( dmc instanceof IRegisterGroupDMContext )
|
// Now go get the model data for the single register group found.
|
||||||
{
|
try {
|
||||||
final IRegisterGroupDMContext regDmc = (IRegisterGroupDMContext) dmc;
|
getSession().getExecutor().execute(new DsfRunnable() {
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
public void run() {
|
||||||
|
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
||||||
/*
|
if ( regService != null ) {
|
||||||
* Now make sure the register group is the one we want.
|
regService.getRegisterGroupData(
|
||||||
*/
|
regDmc,
|
||||||
|
new DataRequestMonitor<IRegisterGroupDMData>(regService.getExecutor(), null) {
|
||||||
final DataRequestMonitor<IRegisterGroupDMData> regGroupDataDone = new DataRequestMonitor<IRegisterGroupDMData>(regService.getExecutor(), null) {
|
@Override
|
||||||
@Override
|
protected void handleCompleted() {
|
||||||
protected void handleCompleted() {
|
if ( getStatus().isOK() ) {
|
||||||
if ( getStatus().isOK() ) {
|
// Now make sure the register group is the one we want.
|
||||||
request.setEqual( mementoName.equals( "Group." + getData().getName()) ); //$NON-NLS-1$
|
request.setEqual( mementoName.equals( "Group." + getData().getName()) ); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
request.done();
|
request.done();
|
||||||
}
|
}
|
||||||
};
|
});
|
||||||
|
} else {
|
||||||
/*
|
request.done();
|
||||||
* Now go get the model data for the single register group found.
|
}
|
||||||
*/
|
}
|
||||||
try {
|
});
|
||||||
getSession().getExecutor().execute(new DsfRunnable() {
|
} catch (RejectedExecutionException e) {
|
||||||
public void run() {
|
request.done();
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
|
||||||
if ( regService != null ) {
|
|
||||||
regService.getRegisterGroupData( regDmc, regGroupDataDone );
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} catch (RejectedExecutionException e) {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
request.done();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -563,58 +542,39 @@ public class RegisterGroupVMNode extends AbstractExpressionVMNode
|
||||||
* @see org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoProvider#encodeElements(org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoRequest[])
|
* @see org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoProvider#encodeElements(org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoRequest[])
|
||||||
*/
|
*/
|
||||||
public void encodeElements(IElementMementoRequest[] requests) {
|
public void encodeElements(IElementMementoRequest[] requests) {
|
||||||
|
|
||||||
for ( final IElementMementoRequest request : requests ) {
|
for ( final IElementMementoRequest request : requests ) {
|
||||||
|
final IRegisterGroupDMContext regDmc = findDmcInPath(request.getViewerInput(), request.getElementPath(), IRegisterGroupDMContext.class);
|
||||||
Object element = request.getElement();
|
if (regDmc == null) {
|
||||||
final IMemento memento = request.getMemento();
|
request.done();
|
||||||
|
continue;
|
||||||
if (element instanceof IDMVMContext) {
|
|
||||||
|
|
||||||
IDMContext dmc = ((IDMVMContext)element).getDMContext();
|
|
||||||
|
|
||||||
if ( dmc instanceof IRegisterGroupDMContext )
|
|
||||||
{
|
|
||||||
final IRegisterGroupDMContext regDmc = (IRegisterGroupDMContext) dmc;
|
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Now make sure the register group is the one we want.
|
|
||||||
*/
|
|
||||||
|
|
||||||
final DataRequestMonitor<IRegisterGroupDMData> regGroupDataDone = new DataRequestMonitor<IRegisterGroupDMData>(regService.getExecutor(), null) {
|
|
||||||
@Override
|
|
||||||
protected void handleCompleted() {
|
|
||||||
if ( getStatus().isOK() ) {
|
|
||||||
memento.putString(MEMENTO_NAME, "Group." + getData().getName()); //$NON-NLS-1$
|
|
||||||
}
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Now go get the model data for the single register group found.
|
|
||||||
*/
|
|
||||||
try {
|
|
||||||
getSession().getExecutor().execute(new DsfRunnable() {
|
|
||||||
public void run() {
|
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
|
||||||
if ( regService != null ) {
|
|
||||||
regService.getRegisterGroupData( regDmc, regGroupDataDone );
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} catch (RejectedExecutionException e) {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
request.done();
|
|
||||||
}
|
// Now go get the model data for the single register group found.
|
||||||
|
try {
|
||||||
|
getSession().getExecutor().execute(new DsfRunnable() {
|
||||||
|
public void run() {
|
||||||
|
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
||||||
|
if ( regService != null ) {
|
||||||
|
regService.getRegisterGroupData(
|
||||||
|
regDmc,
|
||||||
|
new DataRequestMonitor<IRegisterGroupDMData>(regService.getExecutor(), null) {
|
||||||
|
@Override
|
||||||
|
protected void handleCompleted() {
|
||||||
|
if ( getStatus().isOK() ) {
|
||||||
|
// Now make sure the register group is the one we want.
|
||||||
|
request.getMemento().putString(MEMENTO_NAME, "Group." + getData().getName()); //$NON-NLS-1$
|
||||||
|
}
|
||||||
|
request.done();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
request.done();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} catch (RejectedExecutionException e) {
|
||||||
|
request.done();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -67,7 +67,6 @@ import org.eclipse.jface.viewers.ICellModifier;
|
||||||
import org.eclipse.jface.viewers.TextCellEditor;
|
import org.eclipse.jface.viewers.TextCellEditor;
|
||||||
import org.eclipse.jface.viewers.TreePath;
|
import org.eclipse.jface.viewers.TreePath;
|
||||||
import org.eclipse.swt.widgets.Composite;
|
import org.eclipse.swt.widgets.Composite;
|
||||||
import org.eclipse.ui.IMemento;
|
|
||||||
|
|
||||||
@SuppressWarnings("restriction")
|
@SuppressWarnings("restriction")
|
||||||
public class RegisterVMNode extends AbstractExpressionVMNode
|
public class RegisterVMNode extends AbstractExpressionVMNode
|
||||||
|
@ -757,61 +756,40 @@ public class RegisterVMNode extends AbstractExpressionVMNode
|
||||||
private final String MEMENTO_NAME = "REGISTER_MEMENTO_NAME"; //$NON-NLS-1$
|
private final String MEMENTO_NAME = "REGISTER_MEMENTO_NAME"; //$NON-NLS-1$
|
||||||
|
|
||||||
public void compareElements(IElementCompareRequest[] requests) {
|
public void compareElements(IElementCompareRequest[] requests) {
|
||||||
|
|
||||||
for ( final IElementCompareRequest request : requests ) {
|
for ( final IElementCompareRequest request : requests ) {
|
||||||
|
final IRegisterDMContext regDmc = findDmcInPath(request.getViewerInput(), request.getElementPath(), IRegisterDMContext.class);
|
||||||
Object element = request.getElement();
|
final String mementoName = request.getMemento().getString(MEMENTO_NAME);
|
||||||
final IMemento memento = request.getMemento();
|
if (regDmc == null || mementoName == null) {
|
||||||
final String mementoName = memento.getString(MEMENTO_NAME);
|
request.done();
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (mementoName != null) {
|
// Now go get the model data for the single register group found.
|
||||||
if (element instanceof IDMVMContext) {
|
try {
|
||||||
|
getSession().getExecutor().execute(new DsfRunnable() {
|
||||||
IDMContext dmc = ((IDMVMContext)element).getDMContext();
|
public void run() {
|
||||||
|
|
||||||
if ( dmc instanceof IRegisterDMContext )
|
|
||||||
{
|
|
||||||
final IRegisterDMContext regDmc = (IRegisterDMContext) dmc;
|
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
||||||
|
if ( regService != null ) {
|
||||||
/*
|
regService.getRegisterData(
|
||||||
* Now make sure the register group is the one we want.
|
regDmc,
|
||||||
*/
|
new DataRequestMonitor<IRegisterDMData>(regService.getExecutor(), null) {
|
||||||
|
@Override
|
||||||
final DataRequestMonitor<IRegisterDMData> dataDone = new DataRequestMonitor<IRegisterDMData>(regService.getExecutor(), null) {
|
protected void handleCompleted() {
|
||||||
@Override
|
if ( getStatus().isOK() ) {
|
||||||
protected void handleCompleted() {
|
// Now make sure the register group is the one we want.
|
||||||
if ( getStatus().isOK() ) {
|
request.setEqual( mementoName.equals( "Register." + getData().getName() ) ); //$NON-NLS-1$
|
||||||
request.setEqual( mementoName.equals( "Register." + getData().getName() ) ); //$NON-NLS-1$
|
}
|
||||||
}
|
request.done();
|
||||||
request.done();
|
}
|
||||||
}
|
});
|
||||||
};
|
} else {
|
||||||
|
|
||||||
/*
|
|
||||||
* Now go get the model data for the single register group found.
|
|
||||||
*/
|
|
||||||
try {
|
|
||||||
getSession().getExecutor().execute(new DsfRunnable() {
|
|
||||||
public void run() {
|
|
||||||
IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
|
||||||
if ( regService != null ) {
|
|
||||||
regService.getRegisterData( regDmc, dataDone );
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} catch (RejectedExecutionException e) {
|
|
||||||
request.done();
|
request.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
|
} catch (RejectedExecutionException e) {
|
||||||
|
request.done();
|
||||||
}
|
}
|
||||||
request.done();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -820,57 +798,39 @@ public class RegisterVMNode extends AbstractExpressionVMNode
|
||||||
* @see org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoProvider#encodeElements(org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoRequest[])
|
* @see org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoProvider#encodeElements(org.eclipse.debug.internal.ui.viewers.model.provisional.IElementMementoRequest[])
|
||||||
*/
|
*/
|
||||||
public void encodeElements(IElementMementoRequest[] requests) {
|
public void encodeElements(IElementMementoRequest[] requests) {
|
||||||
|
for ( final IElementMementoRequest request : requests ) {
|
||||||
for ( final IElementMementoRequest request : requests ) {
|
final IRegisterDMContext regDmc = findDmcInPath(request.getViewerInput(), request.getElementPath(), IRegisterDMContext.class);
|
||||||
|
if (regDmc == null) {
|
||||||
Object element = request.getElement();
|
request.done();
|
||||||
final IMemento memento = request.getMemento();
|
continue;
|
||||||
|
}
|
||||||
if (element instanceof IDMVMContext) {
|
|
||||||
|
// Now go get the model data for the single register group found.
|
||||||
IDMContext dmc = ((IDMVMContext)element).getDMContext();
|
try {
|
||||||
|
getSession().getExecutor().execute(new DsfRunnable() {
|
||||||
if ( dmc instanceof IRegisterDMContext )
|
public void run() {
|
||||||
{
|
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
||||||
final IRegisterDMContext regDmc = (IRegisterDMContext) dmc;
|
if ( regService != null ) {
|
||||||
final IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
regService.getRegisterData(
|
||||||
|
regDmc,
|
||||||
/*
|
new DataRequestMonitor<IRegisterDMData>(regService.getExecutor(), null) {
|
||||||
* Now make sure the register group is the one we want.
|
@Override
|
||||||
*/
|
protected void handleCompleted() {
|
||||||
final DataRequestMonitor<IRegisterDMData> dataDone = new DataRequestMonitor<IRegisterDMData>(regService.getExecutor(), null) {
|
if ( getStatus().isOK() ) {
|
||||||
@Override
|
// Now make sure the register group is the one we want.
|
||||||
protected void handleCompleted() {
|
request.getMemento().putString(MEMENTO_NAME, "Register." + getData().getName()); //$NON-NLS-1$
|
||||||
if ( getStatus().isOK() ) {
|
}
|
||||||
memento.putString(MEMENTO_NAME, "Register." + getData().getName()); //$NON-NLS-1$
|
request.done();
|
||||||
}
|
}
|
||||||
request.done();
|
});
|
||||||
}
|
} else {
|
||||||
};
|
request.done();
|
||||||
|
}
|
||||||
/*
|
}
|
||||||
* Now go get the model data for the single register group found.
|
});
|
||||||
*/
|
} catch (RejectedExecutionException e) {
|
||||||
try {
|
request.done();
|
||||||
getSession().getExecutor().execute(new DsfRunnable() {
|
|
||||||
public void run() {
|
|
||||||
IRegisters regService = getServicesTracker().getService(IRegisters.class);
|
|
||||||
if ( regService != null ) {
|
|
||||||
regService.getRegisterData( regDmc, dataDone );
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} catch (RejectedExecutionException e) {
|
|
||||||
request.done();
|
|
||||||
}
|
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
request.done();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue