Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'debug/org.eclipse.cdt.debug.core')
-rw-r--r--debug/org.eclipse.cdt.debug.core/.classpath3
-rw-r--r--debug/org.eclipse.cdt.debug.core/.settings/org.eclipse.jdt.core.prefs29
-rw-r--r--debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF6
-rw-r--r--debug/org.eclipse.cdt.debug.core/build.properties3
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java57
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java30
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java30
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventBreakpointHit.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java30
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormattable.java37
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java35
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java75
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java27
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java27
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java161
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java52
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java57
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExecutableReloadedEvent.java20
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java33
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressToSource.java77
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java17
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java93
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint2.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java111
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java109
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement3.java27
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIDisposable.java36
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIEventBreakpoint.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java22
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteMoveInstructionPointer.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java53
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java72
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java39
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java58
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java48
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java57
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java20
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java125
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java64
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java37
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceEncoder.java55
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java68
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java27
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java69
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java47
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java45
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java59
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java69
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java93
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java93
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java35
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java273
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java118
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java65
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java45
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java179
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java39
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java103
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java69
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java68
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java89
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java47
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint2.java41
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBigIntegerValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java25
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java19
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java26
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java23
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java18
-rw-r--r--debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java17
-rw-r--r--debug/org.eclipse.cdt.debug.core/plugin.xml25
-rw-r--r--debug/org.eclipse.cdt.debug.core/pom.xml2
-rw-r--r--debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd154
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java219
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java143
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java13
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java31
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java29
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java44
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java48
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/BreakpointActionAdapterFactory.java38
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/LogActionEnabler.java34
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/ResumeActionEnabler.java28
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java57
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAddRegisterGroupHandler.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpointFilterExtension.java81
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java123
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java24
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICRegister.java21
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java44
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IChangeReverseMethodHandler.java2
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java41
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java1542
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java142
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java4
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDisassemblyContextProvider.java36
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java297
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java499
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java381
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSettingsManager.java268
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java132
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java190
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java81
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpointFilterExtension.java103
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java66
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java72
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java82
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java68
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java50
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java398
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java2065
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDummyStackFrame.java296
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java264
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFloatingPointValue.java44
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalValue.java43
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CGlobalVariable.java413
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java315
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CLocalVariable.java353
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CMemoryBlockExtension.java604
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModule.java314
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CModuleManager.java169
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegister.java451
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterDescriptor.java66
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CRegisterGroup.java279
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CSignal.java148
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CStackFrame.java1049
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java1101
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CType.java148
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValue.java846
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CValueFactory.java118
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariable.java941
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CVariableFactory.java84
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/Disassembly.java228
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblyBlock.java244
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblyInstruction.java103
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblyRetrieval.java327
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/DisassemblySourceLine.java86
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceLookupParticipant.java37
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/sourcelookup/CSourceManager.java23
216 files changed, 34 insertions, 22599 deletions
diff --git a/debug/org.eclipse.cdt.debug.core/.classpath b/debug/org.eclipse.cdt.debug.core/.classpath
index 7b8d37a545..3bc247511f 100644
--- a/debug/org.eclipse.cdt.debug.core/.classpath
+++ b/debug/org.eclipse.cdt.debug.core/.classpath
@@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="cdi"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/debug/org.eclipse.cdt.debug.core/.settings/org.eclipse.jdt.core.prefs b/debug/org.eclipse.cdt.debug.core/.settings/org.eclipse.jdt.core.prefs
index 97f68417d0..cccb94947c 100644
--- a/debug/org.eclipse.cdt.debug.core/.settings/org.eclipse.jdt.core.prefs
+++ b/debug/org.eclipse.cdt.debug.core/.settings/org.eclipse.jdt.core.prefs
@@ -1,6 +1,12 @@
-#Mon Oct 17 17:40:49 PDT 2011
eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
+org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
+org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
+org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
+org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
+org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.7
@@ -18,6 +24,7 @@ org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=
org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
@@ -25,33 +32,50 @@ org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
+org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
+org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
org.eclipse.jdt.core.compiler.problem.nullReference=error
+org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
+org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
@@ -61,14 +85,17 @@ org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedImport=error
org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.source=1.7
diff --git a/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF b/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF
index b3edf629ab..6a0ca4b12e 100644
--- a/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF
+++ b/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF
@@ -2,16 +2,12 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.cdt.debug.core; singleton:=true
-Bundle-Version: 7.8.0.qualifier
+Bundle-Version: 8.0.0.qualifier
Bundle-Activator: org.eclipse.cdt.debug.core.CDebugCorePlugin
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Export-Package: org.eclipse.cdt.debug.core,
org.eclipse.cdt.debug.core.breakpointactions,
- org.eclipse.cdt.debug.core.cdi,
- org.eclipse.cdt.debug.core.cdi.event,
- org.eclipse.cdt.debug.core.cdi.model,
- org.eclipse.cdt.debug.core.cdi.model.type,
org.eclipse.cdt.debug.core.command,
org.eclipse.cdt.debug.core.disassembly,
org.eclipse.cdt.debug.core.executables,
diff --git a/debug/org.eclipse.cdt.debug.core/build.properties b/debug/org.eclipse.cdt.debug.core/build.properties
index df50b0ab8b..9862f2ae9c 100644
--- a/debug/org.eclipse.cdt.debug.core/build.properties
+++ b/debug/org.eclipse.cdt.debug.core/build.properties
@@ -20,6 +20,5 @@ javadoc.packages = org.eclipse.cdt.debug.core.*,\
org.eclipse.cdt.debug.core.cdi.model.*
src.includes = schema/,\
about.html
-source.. = src/,\
- cdi/
+source.. = src/
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java
deleted file mode 100644
index c63b55f967..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/CDIException.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a failure in the CDI model operations.
- *
- * @since Jul 9, 2002
- */
-public class CDIException extends Exception {
-
- /**
- * All serializable objects should have a stable serialVersionUID
- */
- private static final long serialVersionUID = 1L;
-
- String details = ""; //$NON-NLS-1$
-
- public CDIException() {
- super();
- }
-
- public CDIException(String s) {
- super(s);
- }
-
- public CDIException(String s, String d) {
- super(s);
- details = d;
- }
-
- /**
- * Returns a more details message(if any).
- */
- public String getDetailMessage() {
- return details;
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#toString()
- */
- @Override
- public String toString() {
- return super.toString() + '['+ getDetailMessage() + ']';
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java
deleted file mode 100644
index 1587bb5c7c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIAddressLocation.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import java.math.BigInteger;
-
-/**
- *
- * Represents a line location in the debuggable program.
- *
- */
-public interface ICDIAddressLocation extends ICDILocation {
-
- /**
- * Returns the address of this location.
- *
- * @return BigInteger - the address of this location
- */
- BigInteger getAddress();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java
deleted file mode 100644
index 64c7a51a74..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIBreakpointHit.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-
-/**
- *
- * Represents an information provided by the session when the program
- * stopped by a breakpoint.
- *
- * @since Aug 27, 2002
- */
-public interface ICDIBreakpointHit extends ICDISessionObject {
- /**
- * Returns the breakpoint that stopped the program.
- *
- * @return the breakpoint that stopped the program
- */
- ICDIBreakpoint getBreakpoint();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java
deleted file mode 100644
index 807ef51242..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDICondition.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a break condition.
- *
- * @since Jul 9, 2002
- */
-public interface ICDICondition {
- /**
- * Returns the condition expression.
- *
- * @return the condition expression
- */
- String getExpression();
-
- /**
- * Returns the ignore count of this condition.
- *
- * @return the ignore count of this condition
- */
- int getIgnoreCount();
-
- /**
- * Returns the thread Ids for this condition.
- *
- * @return the thread Ids for this condition.
- */
- String[] getThreadIds();
-
- boolean equals(ICDICondition cond);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java
deleted file mode 100644
index c8566353e7..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEndSteppingRange.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents an information provided by the session when a step command
- * is completed.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIEndSteppingRange extends ICDISessionObject {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java
deleted file mode 100644
index b57b03b3d8..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIErrorInfo.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents an information provided by the session when the program
- * exited.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIErrorInfo extends ICDISessionObject {
-
- /**
- * Returns the error message.
- */
- String getMessage();
-
- /**
- * Returns a more verbatim error message(if any).
- */
- String getDetailMessage();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventBreakpointHit.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventBreakpointHit.java
deleted file mode 100644
index 6d800f8161..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventBreakpointHit.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 Freescale Semiconductor 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:
- * Freescale Semiconductor - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Represents an information provided by the session when the program is
- * stopped by an event breakpoint
- * @since 7.0
- */
-public interface ICDIEventBreakpointHit extends ICDISessionObject {
- /**
- * Return the type of event breakpoint, as reported by the debugger backend
- * (e.g., gdb) when it reports the target suspended
- */
- String getEventBreakpointType();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java
deleted file mode 100644
index f6232f4ce9..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIEventManager.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-
-/**
- *
- * Clients interested in the CDI model change notification may
- * register with this object.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIEventManager extends ICDISessionObject {
-
- /**
- * Adds the given listener to the collection of registered
- * event listeners. Has no effect if an identical listener is
- * already registered.
- *
- * @param listener - the listener to add
- */
- void addEventListener( ICDIEventListener listener );
-
- /**
- * Removes the given listener from the collection of registered
- * event listeners. Has no effect if an identical listener is not
- * already registered.
- *
- * @param listener - the listener to remove
- */
- void removeEventListener( ICDIEventListener listener );
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java
deleted file mode 100644
index b5f88e96b0..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIExitInfo.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents an information provided by the session when the program
- * exited.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIExitInfo extends ICDISessionObject {
-
- /**
- * Returns an exit code.
- *
- * @return an exit code
- */
- int getCode();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java
deleted file mode 100644
index 7232ba7c5b..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFileLocation.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-public interface ICDIFileLocation extends ICDILocation {
-
- /**
- * Returns the source file of this location or <code>null</code>
- * if the source file is unknown.
- *
- * @return the source file of this location
- */
- String getFile();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java
deleted file mode 100644
index e2bfcefb13..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormat.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2008 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Format constants.
- */
-public interface ICDIFormat {
-
- final static int NATURAL = 0;
- final static int DECIMAL = 1;
- final static int BINARY = 2;
- final static int OCTAL = 3;
- final static int HEXADECIMAL = 4;
- final static int FLOAT = 5;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormattable.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormattable.java
deleted file mode 100644
index 870bc506a3..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFormattable.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 Freescale, Inc.
- * 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:
- * Freescale, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-
-/**
- * The CDI client's implementation of ICDIValue should implement this interface
- * if it wants to dictate the variable/register's natural format. If it doesn't,
- * CDT will provide a default behavior (e.g., all integral, non-pointer
- * ICDIValue variants will display as decimal).
- *
- * CDT will exercise this interface only for ICDIValue's whose natural
- * format isn't obvious or implied. For example, it will not be exercised for
- * ICDIDoubleValue, ICDICharValue or ICDIBoolValue, to name a few.
- *
- *
- */
-public interface ICDIFormattable {
- /**
- * Called when there is no obvious or implied natural format for the
- * ICDIValue.
- *
- * @return one of the ICDIFormat constants, excluding 'NATURAL' and 'OCTAL'.
- * Octal is not supported simply because the general support for it
- * is lacking in CDT (apparently no one is asking for it).
- * @throws CDIException
- */
- int getNaturalFormat() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java
deleted file mode 100644
index 0e1d81942c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionFinished.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-
-/*
- * ICDIFunctionFinished
- */
-public interface ICDIFunctionFinished extends ICDIEndSteppingRange {
-
- /**
- * Return the type of the return value of
- * the function.
- *
- * @return ICDIType returnType value
- */
- ICDIType getReturnType() throws CDIException;
-
- /**
- * The return value of the function.
- *
- * @return
- */
- ICDIValue getReturnValue() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java
deleted file mode 100644
index a01da39ec4..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIFunctionLocation.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a file:function location in the debuggable program.
- *
- */
-public interface ICDIFunctionLocation extends ICDIFileLocation {
-
- /**
- * Returns the function of this location or <code>null</code>
- * if the function is unknown.
- *
- * @return the function of this location
- */
- String getFunction();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java
deleted file mode 100644
index 622db49c46..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILineLocation.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a file:line location in the debuggable program.
- *
- */
-public interface ICDILineLocation extends ICDIFileLocation {
-
- /**
- * Returns the line number of this location or <code>0</code>
- * if the line number is unknown.
- *
- * @return the line number of this location
- */
- int getLineNumber();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java
deleted file mode 100644
index c0936d7823..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocation.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents a location in the debuggable program.
- *
- */
-public interface ICDILocation {
-
- /**
- * Return true if both locations refer to the same place.
- */
- boolean equals(ICDILocation location);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java
deleted file mode 100644
index 6f8760de0d..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDILocator.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Locator contains information file:function:line:Address
- */
-public interface ICDILocator extends ICDIFileLocation, ICDILineLocation, ICDIFunctionLocation, ICDIAddressLocation {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
deleted file mode 100644
index 16a7ba9a5f..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISession.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-
-/**
- *
- * Represents a debug session.
- *
- * @since Jun 28, 2002
- */
-public interface ICDISession {
- /**
- * Returns all the debug targets associatd with this sesion,
- * or an empty collection if no debug targets are associated
- * with this session.
- *
- * @return an array of debug targets
- */
- ICDITarget[] getTargets();
-
- /**
- * Sets the value of a debug session attribute.
- *
- * @param key the attribute key
- * @param value the attribute value
- */
- void setAttribute(String key, String value);
-
- /**
- * Returns the value of a debug session attribute.
- *
- * @param key the attribute key
- * @return value the attribute value, or <code>null</code> if undefined
- */
- String getAttribute(String key);
-
- /**
- * Returns the event manager of this debug session.
- *
- * @return the event manager
- */
- ICDIEventManager getEventManager();
-
- /**
- * Returns the configuration description of this debug session.
- *
- * @return the configuration description
- */
- ICDISessionConfiguration getConfiguration();
-
- /**
- * Causes this element to terminate, generating a <code>KIND_TERMINATE</code> event.
- *
- * @exception CDIException on failure. Reasons include:
- */
- void terminate() throws CDIException;
-
- /**
- * Gaves direct access to the underlying debugger process.
- * @return the debugger process.
- */
- Process getSessionProcess() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java
deleted file mode 100644
index 957fcb22b8..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionConfiguration.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Describes the configuration of debug session.
- *
- * @since Aug 6, 2002
- */
-public interface ICDISessionConfiguration extends ICDISessionObject {
-
- /**
- * Returns whether the session should be terminated when the inferior exits.
- *
- * @return whether the session be terminated when the inferior exits
- */
- boolean terminateSessionOnExit();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java
deleted file mode 100644
index d8d0a89d28..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISessionObject.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- *
- * Represents an object associated with a debug session.
- *
- * @since Jul 9, 2002
- */
-public interface ICDISessionObject {
-
- /**
- * Returns the debug session this object is associated with.
- *
- * @return the debug session this object is associated with
- */
- ICDISession getSession();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java
deleted file mode 100644
index f6e46b050c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISharedLibraryEvent.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-
-/**
- *
- * Represents an information provided by the session when the program
- * stopped by a shared libary event.
- *
- * @since Aug 18, 2003
- */
-public interface ICDISharedLibraryEvent extends ICDISessionObject {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java
deleted file mode 100644
index 50b4f96be4..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalExitInfo.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-/**
- * Represents information provided by the session when the program exited.
- *
- */
-public interface ICDISignalExitInfo extends ICDISessionObject {
-
- /**
- * Method getName.
- * @return String
- */
- String getName();
-
- /**
- * Method getDescription.
- * @return String
- */
- String getDescription();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java
deleted file mode 100644
index c95d864a78..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDISignalReceived.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-
-/**
- *
- * Represents a signal.
- *
- * @since Jul 10, 2002
- */
-public interface ICDISignalReceived extends ICDISessionObject {
-
- /**
- * Method getSignal.
- * @return ICDISignal
- */
- ICDISignal getSignal();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java
deleted file mode 100644
index 45cb0373fc..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceManager.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDITracepoint;
-
-/**
- * Manages the collection of registered tracepoints and trace snapshoits
- * in the debug session. Provides methods to control tracing.
- *
- * @since May 15, 2003
- */
-public interface ICDITraceManager extends ICDISessionObject {
- /**
- * Returns a collection of all tracepoints set for this session.
- * Returns an empty array if no tracepoints are set.
- *
- * @return a collection of all tracepoints set for this session
- * @throws CDIException on failure. Reasons include:
- */
- ICDITracepoint[] getTracepoints() throws CDIException;
-
- /**
- * Deletes the given tracepoint.
- *
- * @param tracepoint - a tracepoint to be deleted
- * @throws CDIException on failure. Reasons include:
- */
- void deleteTracepoint( ICDITracepoint tracepoint ) throws CDIException;
-
- /**
- * Deletes the given array of tracepoints.
- *
- * @param tracepoints - the array of tracepoints to be deleted
- * @throws CDIException on failure. Reasons include:
- */
- void deleteTracepoints( ICDITracepoint[] tracepoints ) throws CDIException;
-
- /**
- * Deletes all tracepoints.
- *
- * @throws CDIException on failure. Reasons include:
- */
- void deleteAllTracepoints() throws CDIException;
-
- /**
- * Sets a tracepoint at the given location.
- * The tracepoint is set acording to the choices:
- * <pre>
- * if location.getFile() != null then
- * if location.getFunction() != null then
- * tracepoint = file:function
- * else
- * tracepoint = file:line
- * else if (location.getFuntion() != null) then
- * tracepoint = function
- * else if (location.getLineNumber() != 0 then
- * tracepoint = line
- * else
- * tracepoint = address
- * end
- * </pre>
- *
- * @param location - the location
- * @return a tracepoint
- * @throws CDIException on failure. Reasons include:
- */
- ICDITracepoint setTracepoint( ICDILocation location ) throws CDIException;
-
- /**
- * Allows the manager to interrupt the excution of program
- * when setting a tracepoint.
- */
- void allowProgramInterruption( boolean allow );
-
- /**
- * Starts the tracing and begins collecting data.
- *
- * @throws CDIException on failure. Reasons include:
- */
- void startTracing() throws CDIException;
-
- /**
- * Stops the tracing and ends collecting data.
- *
- * @throws CDIException on failure. Reasons include:
- */
- void stopTracing() throws CDIException;
-
- /**
- * Returns the status of tracing.
- *
- * @return the status of tracing
- * @throws CDIException on failure. Reasons include:
- */
- boolean isTracing() throws CDIException;
-
- /**
- * Enables/disables the snapshot debugging mode.
- *
- * @param enabled <code>true</code> to enable, and <code>false</code>
- * to disable
- * @throws CDIException on failure. Reasons include:
- */
- void enableSnapshotMode( boolean enabled ) throws CDIException;
-
- /**
- * Returns all trace snapshots for this session.
- *
- * @return all trace snapshots for this session
- * @throws CDIException on failure. Reasons include:
- */
- ICDITraceSnapshot[] getSnapshots() throws CDIException;
-
- /**
- * Returns all trace snapshots associated with the given tracepoints.
- *
- * @param tracepoints - an array of tracepoints
- * @return all trace snapshots associated with the given tracepoints
- * @throws CDIException on failure. Reasons include:
- */
- ICDITraceSnapshot[] getSnapshots( ICDITracepoint[] tracepoints ) throws CDIException;
-
- /**
- * Returns all trace snapshots associated with the given locations.
- *
- * @param locations - an array of locations
- * @return all trace snapshots associated with the given locations
- * @throws CDIException on failure. Reasons include:
- */
- ICDITraceSnapshot[] getSnapshots( ICDILocation[] locations ) throws CDIException;
-
- /**
- * Creates an ICDILocation object for given file name and line number or function.
- *
- * @param file - a file name
- * @param function - a function name
- * @param line - a line number
- * @return an ICDILocation object
- */
- ICDILocation createLocation( String file, String function, int line );
-
- /**
- * Creates an ICDILocation object for given address.
- *
- * @param address - an address
- * @return an ICDILocation object
- */
- ICDILocation createLocation( BigInteger address );
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java
deleted file mode 100644
index 5ecfbfccd7..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDITraceSnapshot.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITracepoint;
-
-/**
- * Represents a trace snapshot in the debug session.
- *
- * @since May 15, 2003
- */
-public interface ICDITraceSnapshot extends ICDISessionObject {
-
- /**
- * Returns the number of this snapshot.
- *
- * @return the number of this snapshot
- */
- int getNumber();
-
- /**
- * Selects this snapshot.
- *
- * @throws CDIException on failure. Reasons include:
- */
- void select() throws CDIException;
-
- /**
- * Returns the data collected at this snapshot.
- *
- * @return the data collected at this snapshot
- * @throws CDIException on failure. Reasons include:
- */
- ICDIObject[] getData() throws CDIException;
-
- /**
- * Returns the array of tracepoints associated with this snapshot.
- *
- * @return array of tracepoints
- */
- ICDITracepoint[] getTracepoints();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java
deleted file mode 100644
index e39db7a214..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointScope.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-
-/**
- *
- * Represents an information provided by the session when a watchpoint
- * is going out of scope.
- *
- * @since Aug 27, 2002
- */
-public interface ICDIWatchpointScope extends ICDISessionObject {
- /**
- * Returns the out of scope watchpoint.
- *
- * @return the watchpoint
- */
- ICDIWatchpoint getWatchpoint();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java
deleted file mode 100644
index 4f53301d94..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/ICDIWatchpointTrigger.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-
-/**
- *
- * Represents an information provided by the session when a watchpoint
- * is triggered.
- *
- * @since Aug 27, 2002
- */
-public interface ICDIWatchpointTrigger extends ICDISessionObject {
- /**
- * Returns the triggered watchpoint.
- *
- * @return the triggered watchpoint
- */
- ICDIWatchpoint getWatchpoint();
-
- /**
- * Returns the old value of the watching expression.
- *
- * @return the old value of the watching expression
- */
- String getOldValue();
-
- /**
- * Returns the new value of the watching expression.
- *
- * @return the new value of the watching expression
- */
- String getNewValue();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java
deleted file mode 100644
index 4329e90ad1..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointMovedEvent.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia 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:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-
-/**
- *
- * Notifies that a breakpoint has changed location.
- */
-
-public interface ICDIBreakpointMovedEvent extends ICDIEvent {
-
- /** Returns the new location for the breakpoint.
- * @return the breakpoint's new location.
- */
- ICDILocator getNewLocation();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java
deleted file mode 100644
index 827fbd7373..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIBreakpointProblemEvent.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia 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:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-
-/**
- *
- * Notifies that a breakpoint problem has occurred.
- */
-public interface ICDIBreakpointProblemEvent {
-
- /** The problem type is a string that identifies specific
- * kinds of breakproblems.
- * @return problem type name
- */
- String getProblemType();
-
- /** The CDI breakpoint that has the problem
- * @return the cdi breakpoint that has the problem
- */
- ICDIBreakpoint getBreakpoint();
-
- /** A description of the problem.
- * This will be presented in the problems view.
- * @return a description of the problem
- */
- String getDescription();
-
- /** The severity code maps to the IMarker.SEVERITY_XXX constants.
- * @return severity code.
- */
- int getSeverity();
-
- /** Indicated that existing problems of this type and at this
- * breakpoint's location will be removed, no new ones will
- * be added.
- * @return only remove existing problems
- */
- boolean removeOnly();
-
- /** Indicated that any existing problems of this type
- * and at this breakpoint's location will be removed
- * before the new problem is added.
- * @return remove any existing markers
- */
- boolean removeExisting();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java
deleted file mode 100644
index e21a0db19b..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIChangedEvent.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has changed.
- * Can be originated by any CDI model object.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIChangedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java
deleted file mode 100644
index 2ad8f72bed..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDICreatedEvent.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has been created.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * <li>thread (ICDIThread)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDICreatedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java
deleted file mode 100644
index ebd0fb0801..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDestroyedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has terminated.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * <li>thread (ICDIThread)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDIDestroyedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java
deleted file mode 100644
index f1986b93f7..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIDisconnectedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has disconnected.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDIDisconnectedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java
deleted file mode 100644
index 60f07c331f..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEvent.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-
-/**
- *
- * A base interface for all CDI events.
- *
- * @since Jul 18, 2002
- */
-public interface ICDIEvent {
- /**
- * The CDI object on which the event initially occurred.
- *
- * @return the CDI object on which the event initially occurred
- */
- ICDIObject getSource();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java
deleted file mode 100644
index b2b5c7fe89..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIEventListener.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * An event listener registers with the event manager to receive event
- * notification from the CDI model objects.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIEventListener {
- /**
- * Notifies this listener of the given event.
- *
- * @param event - the event
- */
- void handleDebugEvents(ICDIEvent[] event);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExecutableReloadedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExecutableReloadedEvent.java
deleted file mode 100644
index 75a8e1544d..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExecutableReloadedEvent.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia 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:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that an executable had been reloaded, perhaps after being rebuilt.
- */
-
-public interface ICDIExecutableReloadedEvent extends ICDIEvent {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java
deleted file mode 100644
index d4d24ced63..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIExitedEvent.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-
-/**
- *
- * Notifies that the program has exited.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDIExitedEvent extends ICDIDestroyedEvent {
- /**
- * Returns the information provided by the session when program
- * is exited.
- *
- * @return the exit information
- */
- ICDISessionObject getReason();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java
deleted file mode 100644
index a0f2609a29..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIMemoryChangedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import java.math.BigInteger;
-
-/**
- *
- * Notifies that the originator has changed.
- *
- */
-public interface ICDIMemoryChangedEvent extends ICDIChangedEvent {
- /**
- * @return the modified addresses.
- */
- BigInteger[] getAddresses();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java
deleted file mode 100644
index 4e697fd1d8..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIRestartedEvent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has been restarted.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * </ul>
- *
- * @since Jul 11, 2002
- */
-public interface ICDIRestartedEvent extends ICDIEvent {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java
deleted file mode 100644
index 024586bee8..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDIResumedEvent.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.event;
-
-/**
- *
- * Notifies that the originator has been resumed.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * <li>thread (ICDIThread)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDIResumedEvent extends ICDIEvent {
- final static public int CONTINUE = 0;
- final static public int STEP_OVER = 1;
- final static public int STEP_INTO = 2;
- final static public int STEP_OVER_INSTRUCTION = 3;
- final static public int STEP_INTO_INSTRUCTION = 4;
- final static public int STEP_RETURN = 5;
-
- /**
- * Returns the stepping type.
- *
- * @return the stepping type
- */
- int getType();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java
deleted file mode 100644
index 155d9f4de1..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/event/ICDISuspendedEvent.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.event;
-
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-
-/**
- *
- * Notifies that the originator has been suspended.
- * The originators:
- * <ul>
- * <li>target (ICDITarget)
- * <li>thread (ICDIThread)
- * </ul>
- * The reason of the suspension can be one of the following session
- * objects:
- * <ul>
- * <li>breakpoint (ICDIBreakpoint)
- * <li>signal (ICDISignalReceived)
- * <li>end of the stepping range (ICDIEndSteppingRange)
- * </ul>
- *
- * @since Jul 10, 2002
- */
-public interface ICDISuspendedEvent extends ICDIEvent {
-
- /**
- * Returns the session object that caused the suspension.
- *
- * @return ICDIObject
- */
- ICDISessionObject getReason();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java
deleted file mode 100644
index d8b71b6c38..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressBreakpoint.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents an address breakpoint.
- *
- */
-public interface ICDIAddressBreakpoint extends ICDILocationBreakpoint {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java
deleted file mode 100644
index 44b68a4f14..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressFactoryManagement.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia 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:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.core.IAddressFactory;
-
-/**
- */
-public interface ICDIAddressFactoryManagement {
- /**
- * Returns an AddressFactory.
- * @return a IAddressFactory.
- */
- IAddressFactory getAddressFactory();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressToSource.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressToSource.java
deleted file mode 100644
index ca296a3961..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIAddressToSource.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia 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:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.core.runtime.IPath;
-
-/**
- * Allows the CDI back-end to translate an address to a source location.
- * Usually implemented in the same context as ICDITarget.
- * THIS API IS EXPERIMENTAL AND MAY CHANGE IN THE FUTURE.
- */
-public interface ICDIAddressToSource {
-
-
- /**
- * Represents a source location returned by
- * ICDIAddressToSource.getSourceForAddress.
- *
- */
- interface IMappedSourceLocation extends Comparable {
-
- /**
- * Returns the address of the source location.
- * This should be the same address passed to
- * ICDIAddressToSource.getSourceForAddress.
- * @return address of the source location.
- */
- IAddress getAddress();
-
- /**
- * Returns the location of the source file.
- * @return the location of the source file.
- */
- IPath getSourceFile();
-
- /**
- * Returns the line number corresponding to the address.
- * @return the line number corresponding to the address.
- */
- int getLineNumber();
-
- /**
- * Returns the name of the function the address is in.
- * @return the name of the function the address is in.
- */
- String getFunctionName();
-
- /**
- * Returns the unmangled name of the function the address is in.
- * @return the unmangled name of the function the address is in.
- */
- String getUnmangledFunctionName();
-
- /**
- * Return the path to the executable the address is in.
- * @return the path to the executable the address is in.
- */
- IPath getExecutable();
- }
-
- /** Returns a symbol that maps to an address at runtime in a targeted process
- * @return the symbol (if any) that maps to an address
- */
- IMappedSourceLocation getSourceForAddress(IAddress address) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java
deleted file mode 100644
index befe3bcb58..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgument.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents an argument in the stack frame.
- *
- * @since Jul 22, 2002
- */
-public interface ICDIArgument extends ICDILocalVariable, ICDIArgumentDescriptor {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java
deleted file mode 100644
index d284797dde..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIArgumentDescriptor.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-
-/**
- */
-public interface ICDIArgumentDescriptor extends ICDILocalVariableDescriptor {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java
deleted file mode 100644
index 645db9f332..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.model.ICBreakpointType;
-
-/**
- *
- * A breakpoint is capable of suspending the execution of a program
- * whenever a certain point in the program is reached. Provides a
- * basic functionality for the location breakpoints, watchpoints,
- * and event breakpoints
- *
- * @see ICDILineBreakpoint
- * @see ICDIFunctionBreakpoint
- * @see ICDIAddressBreakpoint
- * @see ICDIWatchpoint
- * @see ICDIEventBreakpoint
- *
- * @since Jul 9, 2002
- */
-public interface ICDIBreakpoint extends ICDIObject {
- /** @deprecated use ICBreakpointTyped.REGULAR */
- @Deprecated
- final static public int REGULAR = ICBreakpointType.REGULAR;
- /** @deprecated use ICBreakpointTyped.TEMPORARY */
- @Deprecated
- final static public int TEMPORARY = ICBreakpointType.TEMPORARY;
- /** @deprecated use ICBreakpointTyped.HARDWARE */
- @Deprecated
- final static public int HARDWARE = ICBreakpointType.HARDWARE;
-
- /**
- * @return whether this breakpoint is temporary
- * @deprecated by {@link ICDIBreakpoint2#getType()}
- */
- @Deprecated
- boolean isTemporary();
-
- /**
- * @return whether this breakpoint is hardware-assisted
- * @deprecated by {@link ICDIBreakpoint2#getType()}
- */
- @Deprecated
- boolean isHardware();
-
- /**
- * Returns whether this breakpoint is enabled.
- *
- * @return whether this breakpoint is enabled
- * @throws CDIException if this method fails. Reasons include:
- */
- boolean isEnabled() throws CDIException;
-
- /**
- * Sets the enabled state of this breakpoint. This has no effect
- * if the current enabled state is the same as specified by
- * the enabled parameter.
- *
- * @param enabled - whether this breakpoint should be enabled
- * @throws CDIException if this method fails. Reasons include:
- */
- void setEnabled(boolean enabled) throws CDIException;
-
- /**
- * Returns the condition of this breakpoint or <code>null</code>
- * if the breakpoint's condition is not set.
- *
- * @return the condition of this breakpoint
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDICondition getCondition() throws CDIException;
-
- /**
- * Sets the condition of this breakpoint.
- *
- * @param the condition to set
- * @throws CDIException if this method fails. Reasons include:
- */
- void setCondition(ICDICondition condition) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint2.java
deleted file mode 100644
index 41aa10fb1a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpoint2.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Freescale 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:
- * Freescale - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.model.ICBreakpointType;
-
-/**
- * Extension of the ICDIBreakpoint interface
- */
-public interface ICDIBreakpoint2 extends ICDIBreakpoint {
-
- /**
- * Return the type of the breakpoint. If the breakpoint's creation
- * originated in CDT, then CDT specified the type as part of that request
- * and this method must return that value. If the breakpoint's creation
- * originated in the CDI client, then this method is invoked by CDT to
- * discover the type of the breakpoint.
- *
- * If the CDI breakpoint implements this interface, then
- * {@link ICDIBreakpoint#isTemporary()} and
- * {@link ICDIBreakpoint#isHardware()} will never get called by CDT, as this
- * method is meant to replace those.
- *
- * @return one of the type constants defined in ICBreakpointType (note that
- * {@link ICBreakpointType#TEMPORARY} can be bit-applied to any of
- * the type values to qualify it as a temporary breakpoint.
- */
- int getType();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java
deleted file mode 100644
index cf97564a0a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-
-/**
- * Breapoints action on the Target.
- */
-public interface ICDIBreakpointManagement {
-
- /**
- * Set a line breakpoint.
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @return
- * @throws CDIException
- */
- ICDILineBreakpoint setLineBreakpoint(int type, ICDILineLocation location,
- ICDICondition condition, boolean deferred) throws CDIException;
-
- /**
- * Set a function breakpoint.
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @return
- * @throws CDIException
- */
- ICDIFunctionBreakpoint setFunctionBreakpoint(int type, ICDIFunctionLocation location,
- ICDICondition condition, boolean deferred) throws CDIException;
-
- /**
- * Set an address Breakpoint
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @return
- * @throws CDIException
- */
- ICDIAddressBreakpoint setAddressBreakpoint(int type, ICDIAddressLocation location,
- ICDICondition condition, boolean deferred) throws CDIException;
-
- /**
- * Set a watchpoint.
- *
- * @param type
- * @param watchType
- * @param expression
- * @param condition
- * @return
- * @throws CDIException
- */
- ICDIWatchpoint setWatchpoint(int type, int watchType, String expression,
- ICDICondition condition) throws CDIException;
-
- /**
- * Set an exception point.
- *
- * @param clazz
- * @param stopOnThrow
- * @param stopOnCatch
- * @return
- * @throws CDIException
- */
- ICDIExceptionpoint setExceptionBreakpoint(String clazz, boolean stopOnThrow, boolean stopOnCatch) throws CDIException;
-
- /**
- * Return all the breakpoints
- *
- * @return
- * @throws CDIException
- */
- ICDIBreakpoint[] getBreakpoints() throws CDIException;
-
- /**
- * Remove the breakpoints
- * @param breakpoints
- * @throws CDIException
- */
- void deleteBreakpoints(ICDIBreakpoint[] breakpoints) throws CDIException;
-
- /**
- * Remove all the breakpoints
- *
- * @throws CDIException
- */
- void deleteAllBreakpoints() throws CDIException;
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java
deleted file mode 100644
index 424ce84c05..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement2.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia 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:
- * Nokia - Initial API and implementation
- * Freescale Semiconductor - Address watchpoints, https://bugs.eclipse.org/bugs/show_bug.cgi?id=118299
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-
-public interface ICDIBreakpointManagement2 extends ICDIBreakpointManagement {
-
- /**
- * Set a line breakpoint.
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDILineBreakpoint setLineBreakpoint(int type, ICDILineLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException;
-
- /**
- * Set a function breakpoint.
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDIFunctionBreakpoint setFunctionBreakpoint(int type, ICDIFunctionLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException;
-
- /**
- * Set an address Breakpoint
- *
- * @param type
- * @param location
- * @param condition
- * @param deferred
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDIAddressBreakpoint setAddressBreakpoint(int type, ICDIAddressLocation location,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException;
-
- /**
- * Set a watchpoint.
- *
- * @param type
- * @param watchType
- * @param expression
- * @param condition
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDIWatchpoint setWatchpoint(int type, int watchType, String expression,
- ICDICondition condition, boolean enabled) throws CDIException;
-
- /**
- * Set a watchpoint.
- *
- * @param type
- * @param watchType
- * @param expression
- * @param memorySpace set to "" for default memorySpace
- * @param range set to "" for default range
- * @param condition
- * @return
- * @throws CDIException
- */
- ICDIWatchpoint setWatchpoint(int type, int watchType, String expression, String memorySpace, BigInteger range,
- ICDICondition condition, boolean enabled) throws CDIException;
-
- /**
- * Set an exception point.
- *
- * @param clazz
- * @param stopOnThrow
- * @param stopOnCatch
- * @param enabled
- * @return
- * @throws CDIException
- */
- ICDIExceptionpoint setExceptionBreakpoint(String clazz, boolean stopOnThrow,
- boolean stopOnCatch, boolean enabled) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement3.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement3.java
deleted file mode 100644
index 798387ef2f..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIBreakpointManagement3.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * QNX Software Systems - catchpoints - bug 226689
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-
-public interface ICDIBreakpointManagement3 extends ICDIBreakpointManagement2{
- /**
- * Set an event breakpoint
- * @param type - event breakpoint type, interpreted by backend
- * @param arg - extra argument, for example signal number
- * @param cdiBreakpointType - cdi breakpoint type, just in case some inferiors support "hardware" event breakpoints
- */
- ICDIEventBreakpoint setEventBreakpoint(String type, String arg, int cdiBreakpointType,
- ICDICondition condition, boolean deferred, boolean enabled) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIDisposable.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIDisposable.java
deleted file mode 100644
index 411a73a3cd..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIDisposable.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Freescale Semiconductor 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:
- * Freescale Semiconductor - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * Some CDI interfaces have a dispose method, but a number of others don't (and
- * should). E.g., ICDIVariable does, but ICDIStackFrame doesn't. This interface
- * was created to introduce a dispose capability to CDI objects that call for it
- * without breaking existing interfaces.
- *
- * CDT uses instanceof to check whether a CDI object supports this interface and
- * if so calls the dispose method when it has no further need for the object. This
- * does not apply to all CDI object; just ones for which it makes sense. The list
- * is subject to grow:
- * <ul>
- * <li>{@link ICDITarget}
- * <li>{@link ICDIStackFrame}
- * <li>{@link ICDIThread}
- * </ul>
- * @since 6.0
- */
-public interface ICDIDisposable {
- /**
- * Called when the object is no longer needed by CDT.
- */
- public void dispose();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIEventBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIEventBreakpoint.java
deleted file mode 100644
index e831357ed0..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIEventBreakpoint.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * QNX Software Systems - catchpoints - bug 226689
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.core.runtime.CoreException;
-
-public interface ICDIEventBreakpoint extends ICDIBreakpoint {
- /**
- * Get event breakpoint type. This is usually id in reverse web notation.
- * @return event breakpoint type id
- * @throws CoreException
- */
- String getEventType() throws CoreException;
-
- /**
- * Get extra event argument. For example name of the exception or number of a signal.
- * @return event argument
- * @throws CoreException
- */
- String getExtraArgument() throws CoreException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java
deleted file mode 100644
index 48fbe8a0ba..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExceptionpoint.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDIExceptionpoint
- */
-public interface ICDIExceptionpoint extends ICDIBreakpoint {
-
- boolean isStopOnThrow();
-
- boolean isStopOnCatch();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteMoveInstructionPointer.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteMoveInstructionPointer.java
deleted file mode 100644
index 62eab84b78..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteMoveInstructionPointer.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Freescale Secmiconductor 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:
- * Freescale Semiconductor - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- * Provides the ability to perform a jump without changing the run state of a thread or debug target.
- * @since 6.0
- */
-public interface ICDIExecuteMoveInstructionPointer {
-
- /**
- * Moves the instruction pointer to the specified location without changing the run state
- * The result is undefined if it moves outside of the stackframe.
- * Can only be called when the associated target is suspended.
- *
- * @param location
- * @throws CDIException if this method fails. Reasons include:
- */
- void moveInstructionPointer(ICDILocation location) throws CDIException;
-
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java
deleted file mode 100644
index 5c8e131003..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteResume.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2009 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- * Provides the ability to resume a thread or debug target.
- * @since 6.0
- */
-public interface ICDIExecuteResume {
-
- /**
- * Causes this target to resume its execution.
- * if passSignal is <code>fase</code> and the target was
- * suspended by a signal when resuming the signal will be discarded
- * Has no effect on a target that is not suspended.
- *
- * @param passSignal whether to discar the signal
- * @throws CDIException if this method fails. Reasons include:
- */
- void resume(boolean passSignal) throws CDIException;
-
- /**
- * Resume execution at location. Note the method does not change stackframe.
- * The result is undefined if it jumps outside of the stacframe.
- * Can only be called when the associated target is suspended.
- *
- * @param location
- * @throws CDIException if this method fails. Reasons include:
- */
- void resume(ICDILocation location) throws CDIException;
-
- /**
- * Resume execution where the program stopped but immediately give the
- * signal.
- *
- * @param signal
- * @throws CDIException
- */
- void resume(ICDISignal signal) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java
deleted file mode 100644
index 42dd11db55..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStep.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- * Provides the ability to step into, over, and until
- * from the current execution location. Implementations
- * must be non-blocking.
- */
-public interface ICDIExecuteStep {
-
- /**
- * Steps over the current source line.
- * if count <= 0 it is a noop.
- * Can only be called when the associated target/thread is suspended.
- *
- * @param count as in `step', but do so count times.
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepOver(int count) throws CDIException;
-
- /**
- * Steps over the current machine instruction. Can only be called
- * when the associated target/thread is suspended.
- * if count <= 0 it is a noop.
- *
- * @param count as in `stepOverInstruction', but do so count times.
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepOverInstruction(int count) throws CDIException;
-
- /**
- * Steps into the current source line. Can only be called
- * when the associated target/thread is suspended.
- * if count <= 0 it is a noop.
- *
- * @param count as in `step', but do so count times.
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepInto(int count) throws CDIException;
-
- /**
- * Steps into the current machine instruction. Can only be called
- * when the associated target/thread is suspended.
- * if count <= 0 it is a noop.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepIntoInstruction(int count) throws CDIException;
-
- /**
- * Continues running until location is reached.
- * If the program will be suspended if attempt to exit the current frame.
- * Can only be called when the associated target is suspended.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepUntil(ICDILocation location) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java
deleted file mode 100644
index efd570f3e4..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExecuteStepReturn.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Provides the ability to step return from the frame.
- * Implementations must be non-blocking.
- */
-public interface ICDIExecuteStepReturn {
-
- /**
- * Continue execution until the frame return.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepReturn() throws CDIException;
-
- /**
- * Cancel execution of the frame and return with value.
- * value can be <code>null</code>, if no return value is needed.
- * Can only be called when the associated target/thread is suspended.
- *
- * @param value use as the returning value.
- * @throws CDIException if this method fails. Reasons include:
- */
- void stepReturn(ICDIValue value) throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java
deleted file mode 100644
index 333b1f3dc3..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpression.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * An expression is a snippet of code that can be evaluated to
- * produce a value.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIExpression extends ICDIObject {
-
-
- /**
- * Returns the expression snippet of code.
- *
- * @return the expression
- */
- String getExpressionText();
-
- /**
- * Returns true if the variable Object are the same,
- * For example event if the name is the same because of
- * casting this may return false;
- * @return true if the same
- */
- boolean equals(ICDIExpression expr);
-
- /**
- * Returns the value of this expression.
- *
- * @param ICDIStackFrame frame context
- * @return the value of this expression
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIValue getValue(ICDIStackFrame context) throws CDIException;
-
- /**
- * Remove the expression from the manager list.
- *
- * @param var
- * @return ICDIArgument
- * @throws CDIException
- */
- void dispose() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java
deleted file mode 100644
index 52af8a0950..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIExpressionManagement.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * ICDIExpressionManagement
- */
-public interface ICDIExpressionManagement {
-
- /**
- * Create an expression for code snippet
- * @param code
- * @return ICDIExpression
- * @throws CDIException
- */
- ICDIExpression createExpression(String code) throws CDIException;
-
- /**
- * Return all expressions for this target
- * @return
- * @throws CDIException
- */
- ICDIExpression[] getExpressions() throws CDIException;
-
- /**
- * Remove expressions for this target
- *
- * @param expressions
- */
- void destroyExpressions(ICDIExpression[] expressions) throws CDIException;
-
- /**
- * Remove all expressions on this target
- *
- */
- void destroyAllExpressions() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java
deleted file mode 100644
index 640ea3806c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIFunctionBreakpoint.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents a function breakpoint.
- *
- */
-public interface ICDIFunctionBreakpoint extends ICDILocationBreakpoint {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java
deleted file mode 100644
index 00034ecd3f..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariable.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDIGlobalVariable
- */
-public interface ICDIGlobalVariable extends ICDIVariable, ICDIGlobalVariableDescriptor {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java
deleted file mode 100644
index d29aa48310..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIGlobalVariableDescriptor.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDIGlobalVariableDescriptor
- */
-public interface ICDIGlobalVariableDescriptor extends ICDIVariableDescriptor {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java
deleted file mode 100644
index c9fef552d2..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIInstruction.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-
-/**
- *
- * Represents a machine instruction.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIInstruction extends ICDIObject {
- /**
- * Returns the Address.
- * @return the address.
- */
- BigInteger getAdress();
-
- /**
- * @return the function name.
- */
- String getFuntionName();
-
- /**
- * @return the instruction.
- */
- String getInstruction();
-
- /**
- * @return the opcode
- */
- String getOpcode();
-
- /**
- * @return any arguments to the opcode
- */
- String getArgs();
-
- /**
- * @return the offset of this machine instruction
- * Returns the instruction's offset.
- *
- * @return the offset of this machine instruction
- */
- long getOffset();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java
deleted file mode 100644
index 334bf13e64..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILineBreakpoint.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents a line breakpoint.
- *
- */
-public interface ICDILineBreakpoint extends ICDILocationBreakpoint {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java
deleted file mode 100644
index 70effa0a9d..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariable.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDILocalVariable
- */
-public interface ICDILocalVariable extends ICDIVariable, ICDILocalVariableDescriptor {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java
deleted file mode 100644
index 4874096c80..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocalVariableDescriptor.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * ICDILocalVariableDescriptor
- */
-public interface ICDILocalVariableDescriptor extends ICDIVariableDescriptor {
-
- /**
- * Return the stackframe.
- *
- * @return ICDIStackFrame
- * @throws CDIException
- */
- ICDIStackFrame getStackFrame() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java
deleted file mode 100644
index 18b50bc132..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDILocationBreakpoint.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-
-/**
- *
- * Abstract class returning location of breakpoint: file, line, function, address.
- *
- */
-public interface ICDILocationBreakpoint extends ICDIBreakpoint {
-
- /**
- * Returns the location of the breakpoint.
- * @return ICDILocator
- */
- ICDILocator getLocator();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java
deleted file mode 100644
index 90f992de6c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlock.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2007 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * A contiguous segment of memory in an execution context. A memory
- * block is represented by a starting memory address and a length.
- *
- * @since Jul 18, 2002
- */
-public interface ICDIMemoryBlock extends ICDIObject {
-
- /**
- * Bit mask used to indicate a byte is read-only.
- */
- public static final byte READ_ONLY = 0x01;
-
- /**
- * Bit mask used to indicate a byte is valid.
- */
- public static final byte VALID = 0x02;
-
- /**
- * Returns the start address of this memory block.
- *
- * @return the start address of this memory block
- */
- BigInteger getStartAddress();
-
- /**
- * Returns the length of this memory block in bytes.
- *
- * @return the length of this memory block in bytes
- */
- long getLength();
-
- /**
- * This method is a misnomer. It should be getAddressableSize. This is how
- * CDT finds out from the CDI client the addressable size of the
- * memory--i.e., how many bytes per address. Some embedded systems have
- * memory with addressable sizes >1. Such backends should make sure to
- * ignore the now deprecated wordSize parameter of
- * ICDIMemoryBlockManagement.createMemory block() and not regurgitate that
- * value in the implementation of this method.
- *
- * @return The addressable size of the memory
- */
- int getWordSize();
-
- /**
- * Returns the values of the bytes currently contained
- * in this this memory block.
- * Note: the number maybe greater or lower to what
- * was requested.
- * @return the values of the bytes currently contained
- * in this this memory block
- * @exception CDIException if this method fails. Reasons include:
- * <ul><li>Failure communicating with the debug target. The CDIException's
- * status code contains the underlying exception responsible for
- * the failure.</li>
- * </ul>
- */
- byte[] getBytes() throws CDIException;
-
- /**
- * Returns this memory byte's attribute as a bit mask.
- * The method throw IndexOutOfBoundsException if the offset
- * is out of range of the block.
- *
- * @return this memory byte's attribute as a bit mask
- */
- public byte getFlags(int offset);
-
- /**
- * Sets the value of the bytes in this memory block at the specified
- * offset within this memory block to the spcified bytes.
- * The offset is zero based.
- *
- * @param offset the offset at which to set the new values
- * @param bytes the new values
- * @exception CDIException if this method fails. Reasons include:
- * <ul><li>Failure communicating with the debug target. The CDIException's
- * status code contains the underlying exception responsible for
- * the failure.</li>
- * <li>This memory block does not support value modification</li>
- * <li>The specified offset is greater than or equal to the length
- * of this memory block, or the number of bytes specified goes
- * beyond the end of this memory block (index of out of range)</li>
- * </ul>
- */
- void setValue(long offset, byte[] bytes) throws CDIException;
-
- /**
- * @return true if the block does not update.
- */
- boolean isFrozen();
-
- /**
- * A memoryBlock set frozen means that the block will
- * not update and check for new data.
- * @param frozen the block is frozen by default.
- */
- void setFrozen(boolean frozen);
-
- /**
- * Refresh the data, this may cause events to be trigger
- * if the data values changed.
- */
- void refresh() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java
deleted file mode 100644
index a419efce87..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2007 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * The memory manager manages the collection of memory blocks
- * specified for the debug session.
- *
- * ICDIMemoryBlockManagement
- *
- */
-public interface ICDIMemoryBlockManagement {
-
- /**
- * Returns a memory block specified by given identifier.
- * @param address
- * @param units - number of bytes
- * @param wordSize - this parameter has been deprecated in 4.0
- * and will always be passed as the value 1. If the memory
- * has an addressable size (number of bytes per address)
- * greather than 1, the CDI client should take care not to
- * return the value of wordSize we pass in here, but rather
- * return the actual addressable size for that memory.
- * @return a memory block with the specified identifier
- * @throws CDIException on failure. Reasons include:
- */
- ICDIMemoryBlock createMemoryBlock(String address, int units, int wordSize)
- throws CDIException;
-
- /**
- * Removes the given array of memory blocks from the debug session.
- *
- * @param memoryBlock - the array of memory blocks to be removed
- * @exception CDIException on failure. Reasons include:
- */
- void removeBlocks(ICDIMemoryBlock[] memoryBlocks) throws CDIException;
-
- /**
- * Removes all memory blocks from the debug session.
- *
- * @exception CDIException on failure. Reasons include:
- */
- void removeAllBlocks() throws CDIException;
-
- /**
- * Returns an array of all memory blocks set for this debug session.
- *
- * @return an array of all memory blocks set for this debug session
- * @throws CDIException on failure. Reasons include:
- */
- ICDIMemoryBlock[] getMemoryBlocks() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java
deleted file mode 100644
index 125a19f860..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemoryBlockManagement2.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 Freescale, Inc.
- * 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:
- * Freescale, Inc. - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Extension of ICDIMemoryBlockManagement
- *
- * @since May 26, 2006
- */
-public interface ICDIMemoryBlockManagement2 extends ICDIMemoryBlockManagement {
-
- /**
- * Returns a memory block specified by given parameters. Differs
- * from {@link ICDIMemoryBlockManagement#createMemoryBlock(String, int, int)}
- * in that this support memory spaces.
- * @param address
- * @param memorySpaceID - value is meaningful only to the backend
- * @param size - number of bytes
- * @return a memory block with the specified identifier
- * @throws CDIException on failure. Reasons include:
- */
- ICDIMemoryBlock createMemoryBlock(BigInteger address, String memorySpaceID, int size)
- throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceEncoder.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceEncoder.java
deleted file mode 100644
index f11d3beb93..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceEncoder.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 Freescale Semiconductor, Inc.
- * 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:
- * Freescale Semiconductor, Inc. - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Add-on interface for objects that implement ICDIMemorySpaceManagement.
- * Provides the string encoding and decoding of a memory space qualified
- * address. CDT provides a default encoding of [memory-space-id]:[expression].
- * If this is adequate, the CDI client need not implement this interface. This
- * method is called when having to represent a memory-space qualified address as
- * a single string.
- *
- * @since 7.0
- */
-public interface ICDIMemorySpaceEncoder extends ICDIObject {
- /**
- * Encode an expression + memory space ID to a string.
- *
- * @param expression
- * the expression representing a location within a memory space.
- * This can be a simple numeric expression like "0x10000" or
- * something more complex "$EAX+(gCustomerCount*100)".
- * @param memorySpaceID
- * a string which represents the memory space
- * @return the encoded string representation of the address; never null
- */
- String encodeAddress(String expression, String memorySpaceID);
-
- /**
- * The inverse of {@link #encodeAddress(String, String)}.
- *
- * @param str
- * the encoded string
- * @return the result of decoding the string into its components; never null
- * @throws CDIException
- * if string is not in the expected format
- */
- DecodeResult decodeAddress(String str) throws CDIException;
-
- interface DecodeResult {
- String getMemorySpaceId();
- String getExpression();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java
deleted file mode 100644
index ca2224a6c2..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMemorySpaceManagement.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2012 Freescale, Inc.
- * 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:
- * Freescale, Inc. - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * The memory space manager provides varous memory-space related operations.
- * The backend implementation of ICDITarget should implement this interface
- * as well if the target supports memory spaces.
- */
-public interface ICDIMemorySpaceManagement extends ICDIObject {
- /**
- * Optionally provides the string encoding of a memory space qualified
- * address. CDT provides a default encoding of
- * <memory-space-id>:<address(hex)>. If this is adequate, the client can
- * return null from this function.
- *
- * @param address
- * a numeric address
- * @param memorySpaceID
- * a string which represents the memory space
- * @return the encoded string representation of the address or null
- * @deprecated CDI clients should implement ICDIMemorySpaceEncoder
- */
- @Deprecated
- String addressToString(BigInteger address, String memorySpaceID);
-
- /**
- * The inverse of addressToString. Optionally decodes a memoryspace/address
- * string to its components. Client must provide decoding if it provides
- * encoding in addressToString. Conversely, it should return null if
- * addressToString returns null.
- *
- * @param str
- * the encoded string (contains memory space + hex address
- * value)
- * @param memorySpaceID_out
- * the memory space ID
- * @return the BigInteger part of str; client should return null if the
- * default decoding provided by CDT is sufficient
- * (<memory-space-id>:<address(hex)>)
- * @throws CDIException
- * if string is not in the expected format
- * @deprecated CDI clients should implement ICDIMemorySpaceEncoder
- */
- @Deprecated
- BigInteger stringToAddress(String str, StringBuffer memorySpaceID_out) throws CDIException;
-
- /**
- * Provides the memory spaces available.
- *
- * @return an array of memory space identifiers
- */
- String [] getMemorySpaces();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java
deleted file mode 100644
index a9715eb2ff..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIMixedInstruction.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents a machine instruction.
- *
- * @since Jul 10, 2002
- */
-public interface ICDIMixedInstruction extends ICDIObject {
- /**
- * @return the line Number.
- */
- int getLineNumber();
-
- /**
- * @return the file name
- */
- String getFileName();
-
- /**
- * @return the array of instruction.
- */
- ICDIInstruction[] getInstructions();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java
deleted file mode 100644
index 096df69d3c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIObject.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- *
- * Represents an object in the CDI model.
- *
- * @since Jul 8, 2002
- */
-public interface ICDIObject {
- /**
- * Returns the target this object is contained in.
- *
- * @return the target this object is contained in
- */
- ICDITarget getTarget();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java
deleted file mode 100644
index b10055ba5a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegister.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * A register is a special kind of variable that is contained
- * in a register group. Each register has a name and a value.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIRegister extends ICDIRegisterDescriptor {
- /**
- * Returns true if the value of this variable could be changed.
- *
- * @return true if the value of this variable could be changed
- * @throws CDIException if this method fails. Reasons include:
- */
- boolean isEditable() throws CDIException;
-
- /**
- * Returns the value of this variable.
- *
- * @param context
- * @return the value of this variable
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIValue getValue(ICDIStackFrame context) throws CDIException;
-
- /**
- * Attempts to set the value of this variable to the value of
- * the given expression.
- *
- * @param expression - an expression to generate a new value
- * @throws CDIException if this method fails. Reasons include:
- */
- void setValue(String expression) throws CDIException;
-
- /**
- * Sets the value of this variable to the given value.
- *
- * @param value - a new value
- * @throws CDIException if this method fails. Reasons include:
- */
- void setValue(ICDIValue value) throws CDIException;
-
- /**
- * Remove the variable from the manager list.
- *
- * @param var
- * @return ICDIArgument
- * @throws CDIException
- */
- void dispose() throws CDIException;
-
- boolean equals(ICDIRegister reg);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java
deleted file mode 100644
index 55e5ee7f4a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterDescriptor.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-
-/**
- *
- * Represents a break condition.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIRegisterDescriptor extends ICDIVariableDescriptor {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java
deleted file mode 100644
index eaad77dd42..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRegisterGroup.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a group of registers that are assigned to a target.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIRegisterGroup extends ICDIObject {
-
- /**
- * The name of the group.
- *
- * @return String name
- */
- String getName();
-
- /**
- * Returns the register descriptors in this register group.
- *
- * @return ICDIRegisterDescriptor[] in this register group
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIRegisterDescriptor[] getRegisterDescriptors() throws CDIException;
-
- /**
- * Returns whether this register group currently contains any registers.
- *
- * @return whether this register group currently contains any registers
- * @exception CDIException if this method fails. Reasons include:
- */
- public boolean hasRegisters() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java
deleted file mode 100644
index 489af8f64c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIRuntimeOptions.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.util.Properties;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Describes the configuration of debug session.
- *
- * @since Aug 6, 2002
- */
-public interface ICDIRuntimeOptions extends ICDIObject {
-
- /**
- * Program/Inferior arguments.
- *
- * @param args the string representing the arguments.
- */
- void setArguments(String[] args) throws CDIException;
-
- /**
- * Program/Inferior environment settings.
- *
- * @param props the new environment variable to add.
- */
- void setEnvironment(Properties props) throws CDIException;
-
- /**
- * Program/Inferior working directory.
- *
- * @param wd the working directory to start the program.
- */
- void setWorkingDirectory(String wd) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java
deleted file mode 100644
index 24eb41c946..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibrary.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a shared library which has been loaded into
- * the debug target.
- *
- * @since Jul 8, 2002
- */
-public interface ICDISharedLibrary extends ICDIObject {
- /**
- * Returns the name of shared library file.
- *
- * @return the name of shared library file
- */
- String getFileName();
-
- /**
- * Returns the start address of this library.
- *
- * @return the start address of this library
- */
- BigInteger getStartAddress();
-
- /**
- * Returns the end address of this library.
- *
- * @return the end address of this library
- */
- BigInteger getEndAddress();
-
- /**
- * Returns whether the symbols of this library are read.
- *
- * @return whether the symbols of this library are read
- */
- boolean areSymbolsLoaded();
-
- /**
- * Loads the library symbols.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void loadSymbols() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java
deleted file mode 100644
index 566812e079..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISharedLibraryManagement.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Manages the sharedLibraries in the target.
- */
-public interface ICDISharedLibraryManagement {
-
- /**
- * Returns the array of shared libraries for this target.
- *
- * @return ICDISharedLibrary[] array
- * @throws CDIException on failure.
- */
- ICDISharedLibrary[] getSharedLibraries() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java
deleted file mode 100644
index 166acbb141..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignal.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a signal.
- *
- * @since Jul 10, 2002
- */
-public interface ICDISignal extends ICDIObject {
-
- /**
- * Returns the name of this signal.
- *
- * @return the name of this signal
- */
- String getName();
-
- /**
- * Returns the meaning of this signal.
- *
- * @return the meaning of this signal
- */
- String getDescription();
-
- /**
- * if false means program will see the signal.
- * Otherwise program does not know.
- *
- * @return boolean
- */
- boolean isIgnore();
-
- /**
- * Means reenter debugger if this signal happens
- *
- * Method isStopSet.
- * @return boolean
- */
- boolean isStopSet();
-
- /**
- * Continue program giving it this signal.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void signal() throws CDIException ;
-
- /**
- * Change the way debugger handles this signal.
- *
- * @param ignore - if true the debugger should not allow your program to see this signal
- * @param stop - if true the debugger should stop your program when this signal happens
- * @throws CDIException if this method fails. Reasons include:
- */
- void handle(boolean ignore, boolean stop) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java
deleted file mode 100644
index 40378ab1e7..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISignalManagement.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- */
-public interface ICDISignalManagement {
-
- /**
- * Returns the array of signals defined for this target.
- *
- * @return the array of signals
- * @throws CDIException on failure. Reasons include:
- */
- ICDISignal[] getSignals() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java
deleted file mode 100644
index e0bd5778f4..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISourceManagement.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Maintains the list of directories to search for source files.
- * Auto update is off by default.
- *
- */
-public interface ICDISourceManagement {
- /**
- * Set the source search paths for the debug session.
- * @param String array of search paths
- */
- void setSourcePaths(String[] srcPaths) throws CDIException;
-
- /**
- * Return the array of source paths
- * @return String array of search paths.
- */
- String[] getSourcePaths() throws CDIException;
-
- /**
- * @param startAddress is the begining address
- * @param endAddress is the end address
- * @throws CDIException on failure.
- */
- ICDIInstruction[] getInstructions(BigInteger startAddress, BigInteger endAddress)
- throws CDIException;
-
- /**
- * @param filename is the name of the file to disassemble
- * @param linenum is the line number to disassemble around
- * @throws CDIException on failure
- */
- ICDIInstruction[] getInstructions(String filename, int linenum)
- throws CDIException;
-
- /**
- * @param filename is the name of the file to disassemble
- * @param linenum is the line number to disassemble around
- * @param lines is the number of disassembly to produced
- * @throws CDIException on failure
- */
- ICDIInstruction[] getInstructions(String filename, int linenum, int lines)
- throws CDIException;
-
- /**
- * @param startAddress is the begining address
- * @param endAddress is the end address
- * @throws CDIException on failure.
- */
- ICDIMixedInstruction[] getMixedInstructions(
- BigInteger startAddress,
- BigInteger endAddress)
- throws CDIException;
-
- /**
- * @param filename is the name of the file to disassemble
- * @param linenum is the line number to disassemble around
- * @param lines is the number of disassembly to produced
- * @throws CDIException on failure
- */
- ICDIMixedInstruction[] getMixedInstructions(String filename, int linenum)
- throws CDIException;
-
- /**
- * @param filename is the name of the file to disassemble
- * @param linenum is the line number to disassemble around
- * @param lines is the number of disassembly to produced
- * @throws CDIException on failure
- */
- ICDIMixedInstruction[] getMixedInstructions(
- String filename,
- int linenum,
- int lines)
- throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java
deleted file mode 100644
index ddde8e1bcd..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIStackFrame.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-
-/**
- *
- * A stack frame in a suspended thread.
- * A stack frame contains variables representing visible locals and
- * arguments at the current execution location.
- *
- * @since Jul 8, 2002
- */
-public interface ICDIStackFrame extends ICDIExecuteStepReturn, ICDIObject {
-
- /**
- * Returns the location of the instruction pointer in this
- * stack frame.
- *
- * @return the location of the instruction pointer
- */
- ICDILocator getLocator();
-
- /**
- * Returns the visible variables in this stack frame. An empty
- * collection is returned if there are no visible variables.
- *
- * @return a collection of visible variables
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDILocalVariableDescriptor[] getLocalVariableDescriptors() throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- * @param varDesc ICDThreadStorageDesc
- * @return
- * @throws CDIException
- */
- ICDIArgument createArgument(ICDIArgumentDescriptor varDesc) throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- * @param varDesc ICDThreadStorageDesc
- * @return
- * @throws CDIException
- */
- ICDILocalVariable createLocalVariable(ICDILocalVariableDescriptor varDesc) throws CDIException;
-
- /**
- * Returns the arguments in this stack frame. An empty collection
- * is returned if there are no arguments.
- *
- * @return a collection of arguments
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIArgumentDescriptor[] getArgumentDescriptors() throws CDIException;
-
- /**
- * Returns the thread this stackframe is contained in.
- *
- * @return the thread
- */
- ICDIThread getThread();
-
- /**
- * Returns the level of the stack frame, 1 based.
- *
- * @return the level of the stack frame
- */
- int getLevel();
-
- /**
- * Return true if the frames are the same.
- */
- boolean equals(ICDIStackFrame stackframe);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java
deleted file mode 100644
index 24929f4897..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDISuspend.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * Provides the ability to suspend a thread or debug target.
-*/
-public interface ICDISuspend {
-
- /**
- * Causes this target/thread to suspend its execution.
- * Has no effect on an already suspended thread.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void suspend() throws CDIException;
-
- /**
- * Returns whether this target/thread is currently suspended.
- *
- * @return whether this target/thread is currently suspended
- */
- boolean isSuspended();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
deleted file mode 100644
index 0a083965fe..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget.java
+++ /dev/null
@@ -1,273 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-
-/**
- *
- * Represents a debuggable process. This is a root object of the CDI
- * model.
- *
- * @since Jul 8, 2002
- */
-public interface ICDITarget extends ICDIThreadGroup, ICDIExpressionManagement,
- ICDISourceManagement, ICDISharedLibraryManagement, ICDIMemoryBlockManagement, ICDISessionObject {
-
- /**
- * Gets the target process.
- *
- * @return the output stream connected to the normal input of the
- * target process.
- */
- Process getProcess();
-
- /**
- * Returns the configuration description of this debug session.
- *
- * @return the configuration description
- */
- ICDITargetConfiguration getConfiguration();
-
- /**
- * Evaluates the expression specified by the given string.
- * Returns the evaluation result as a String.
- *
- * @param - expression string to be evaluated
- * @return the result of the evaluation
- * @throws CDIException if this method fails. Reasons include:
- */
- String evaluateExpressionToString(ICDIStackFrame context, String expressionText)
- throws CDIException;
-
- /**
- * A static/global variable in a particular function or file,
- * filename or/and function is the context for the static ICDIVariableDescriptor.
- * <pre>
- * hello.c:
- * int bar;
- * int main() {
- * static int bar;
- * }
- * file.c:
- * int foo() {
- * static int bar;
- * }
- * getVariableObject(null, null, "bar");
- * getVariableObject(null, "main", "bar");
- * getVariableObject("file.c", "foo", "bar");
- * </pre>
- * @param filename
- * @param function
- * @param name
- * @return ICDIGlobalVariableDescriptor
- * @throws CDIException
- */
- ICDIGlobalVariableDescriptor getGlobalVariableDescriptors(String filename, String function, String name) throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- *
- * @param varDesc ICDIGlobalVariableDescriptor
- * @return ICDIGlobalVariable
- * @throws CDIException
- */
- ICDIGlobalVariable createGlobalVariable(ICDIGlobalVariableDescriptor varDesc) throws CDIException;
-
- /**
- * Return the register groups.
- *
- * @return ICDIRegisterGroup[]
- */
- ICDIRegisterGroup[] getRegisterGroups() throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- * @param varDesc ICDThreadStorageDesc
- * @return
- * @throws CDIException
- */
- ICDIRegister createRegister(ICDIRegisterDescriptor varDesc) throws CDIException;
-
- /**
- * Returns whether this target is terminated.
- *
- * @return whether this target is terminated
- */
- boolean isTerminated();
-
- /**
- * Causes this target to terminate.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void terminate() throws CDIException;
-
- /**
- * Returns whether this target is disconnected.
- *
- * @return whether this target is disconnected
- */
- boolean isDisconnected();
-
- /**
- * Disconnects this target from the debuggable process. Generally,
- * disconnecting ends a debug session with this target, but allows
- * the debuggable program to continue running.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void disconnect() throws CDIException;
-
- /**
- * Restarts the execution of this target.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void restart() throws CDIException;
-
- /**
- * Equivalent to resume(false)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void resume() throws CDIException;
-
- /**
- * Equivalent to stepOver(1)
- *
- * @deprecated
- * @see #stepOver(int)
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void stepOver() throws CDIException;
-
- /**
- * Equivalent to stepInto(1)
- *
- * @deprecated
- * @see #stepInto(int)
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void stepInto() throws CDIException;
-
- /**
- * Equivalent to stepOverInstruction(1)
- *
- * @deprecated
- * @see stepOverInstruction(int)
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void stepOverInstruction() throws CDIException;
-
- /**
- * Equivalent to stepIntoInstruction(1)
- *
- * @deprecated
- * @see #stepIntoInstruction(int)
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void stepIntoInstruction() throws CDIException;
-
- /**
- * Equivaltent to stepUntil(location)
- *
- * @deprecated
- * @see #stepUntil(ICDILocation)
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void runUntil(ICDILocation location) throws CDIException;
-
- /**
- * Equivalent to resume(location
- *
- * @deprecated
- * @see #resume(ICDLocation)
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void jump(ICDILocation location) throws CDIException;
-
- /**
- * Equivalent to resume(false)
- *
- * @deprecated
- * @throws CDIException
- */
- @Deprecated
- void signal() throws CDIException;
-
- /**
- * Equivalent to resume(signal)
- *
- * @deprecated
- * @see #resume(ICDISignal)
- * @param signal
- * @throws CDIException
- */
- @Deprecated
- void signal(ICDISignal signal) throws CDIException;
-
- /**
- * Returns the Runtime options for this target debug session.
- *
- * @return the configuration description
- */
- ICDIRuntimeOptions getRuntimeOptions();
-
- /**
- * Return a ICDICondition
- */
- ICDICondition createCondition(int ignoreCount, String expression);
-
- /**
- * Return a ICDICondition
- */
- ICDICondition createCondition(int ignoreCount, String expression, String[] threadIds);
-
- /**
- * Returns a ICDILineLocation
- */
- ICDILineLocation createLineLocation(String file, int line);
-
- /**
- * Returns a ICDIFunctionLocation
- */
- ICDIFunctionLocation createFunctionLocation(String file, String function);
-
- /**
- * Returns a ICDIAddressLocation
- */
- ICDIAddressLocation createAddressLocation(BigInteger address);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java
deleted file mode 100644
index b970e07cd5..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITarget2.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Nokia 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:
- * Nokia - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-
-public interface ICDITarget2 extends ICDITarget {
-
-
- /** Returns a list of global variables for the targeted process
- * @return list of globals for the targeted process
- */
- ICDIGlobalVariableDescriptor[] getGlobalVariables();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java
deleted file mode 100644
index 81e2a7b031..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * Describes the configuration of the target.
- *
- */
-public interface ICDITargetConfiguration extends ICDIObject {
-
- /**
- * Returns whether this target supports termination.
- *
- * @return whether this target supports termination
- */
- boolean supportsTerminate();
-
- /**
- * Returns whether this target supports disconnecting.
- *
- * @return whether this target supports disconnecting
- */
- boolean supportsDisconnect();
-
- /**
- * Returns whether this target supports suspend.
- *
- * @return whether this target supports suspend.
- */
- boolean supportsSuspend();
-
- /**
- * Returns whether this target supports Resume.
- *
- * @return whether this target supports Resume.
- */
- boolean supportsResume();
-
- /**
- * Returns whether this target supports restarting.
- *
- * @return whether this target supports restarting
- */
- boolean supportsRestart();
-
- /**
- * Returns whether this target supports stepping.
- *
- * @return whether this target supports stepping
- */
- boolean supportsStepping();
-
- /**
- * Returns whether this target supports instruction stepping.
- *
- * @return whether this target supports instruction stepping
- */
- boolean supportsInstructionStepping();
-
- /**
- * Returns whether this target supports breakpoints.
- *
- * @return whether this target supports breakpoints
- */
- boolean supportsBreakpoints();
-
- /**
- * Returns whether this target supports registers.
- *
- * @return whether this target supports registers
- */
- boolean supportsRegisters();
-
- /**
- * Returns whether this target supports register modification.
- *
- * @return whether this target supports registers modification
- */
- boolean supportsRegisterModification();
-
- /**
- * Returns whether this target supports shared library.
- *
- * @return whether this target supports registers modification
- */
- boolean supportsSharedLibrary();
-
- /**
- * Returns whether this target supports memory retrieval.
- *
- * @return whether this target supports memory retrieval
- */
- boolean supportsMemoryRetrieval();
-
- /**
- * Returns whether this target supports memory modification.
- *
- * @return whether this target supports memory modification
- */
- boolean supportsMemoryModification();
-
- /**
- * Returns whether this target supports expression evaluation.
- *
- * @return whether this target supports expression evaluation
- */
- boolean supportsExpressionEvaluation();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java
deleted file mode 100644
index 7fcae29802..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration2.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2007 Nokia 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:
- * Nokia - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-public interface ICDITargetConfiguration2 extends ICDITargetConfiguration {
-
- /**
- * Returns whether this target supports thread control, namely whether it
- * supports suspending/resuming threads individually.
- *
- * @return whether this target supports thread control, namely whether it
- * supports suspending/resuming threads individually.
- */
- boolean supportsThreadControl();
-
- /**
- * Returns whether this target supports passive variable updating. If so
- * targets will not be actively sending variable value change notification
- * when a thread is suspended but will wait until they are asked to
- * redisplay the value. Passive variable updating lets a CDI plugin avoid
- * maintaining its own variable cache and having to keep it in sync with
- * CDT's. Targets that support this feature will need to be able to detect
- * when a variable value has changed and fire a changedEvent in its
- * implementation of ICDIValue.getValueString().
- *
- * Also, targets that support this feature will not have their variables
- * disposed when the user disables them in the GUI. Such a dispose only
- * serves to reduce step-time overhead in the debugger engine. As such
- * overhead is negligible for engines with passive variables, the dispose
- * is unnecessary.
- *
- * @return whether this target supports passive variable updating.
- */
- boolean supportsPassiveVariableUpdate();
-
- /**
- * Returns whether this target supports runtime type indentification.
- * If so this means the type of a variable may change when its value changes.
- *
- * @return whether this target supports runtime type indentification.
- * If so this means the type of a variable may change when its value changes.
- */
- boolean supportsRuntimeTypeIdentification();
-
- /**
- * Returns whether this target supports having address breakpoints
- * enabled when a debug session starts.
- * If so this means address breaks will not be disabled on startup.
- *
- * @return whether this target supports having address breakpoints
- * enabled when a debug session starts.
- * If so this means address breaks will not be disabled on startup.
- */
- boolean supportsAddressBreaksOnStartup();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java
deleted file mode 100644
index 8bc524ea2e..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITargetConfiguration3.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Freescale Semiconductor 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:
- * Freescale Semiconductor - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-
-public interface ICDITargetConfiguration3 extends ICDITargetConfiguration2 {
-
- /**
- * It may be desirable to update all variables when a certain event occurs.
- * For example, some CDI clients may want all variabless updated when memory
- * is changed (when an ICDIMemoryChangedEvent is received) because it's
- * impractical or impossible for those backends to determine what specific
- * variables the memory change affected.
- *
- * CDT will call this method to determine desired behavior for a limited set
- * of event types. The CDI backend should not expect to use this hook as a
- * general control mechanism for when variables are updated.
- *
- * @return Whether the value for all active variables should be invalidated
- * and re-fetched from the CDI backend on the occurence of the given
- * event
- */
- boolean needsVariablesUpdated(ICDIEvent event);
-
- /**
- * Same idea as needsRegistersUpdated() but for registers. Embedded systems
- * often have memory mapped registers; changing bytes in memory might, in
- * effect, change a register value
- *
- * @return Whether the value for all active registers should be invalidated
- * and re-fetched from the CDI backend on the occurence of the given
- * event
- */
- boolean needsRegistersUpdated(ICDIEvent event);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java
deleted file mode 100644
index f9c11d1e73..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThread.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- *
- * A thread in a debug target.
- * A thread contains stack frames. Stack frames are only available
- * when the thread is suspended, and are returned in top-down order.
- *
- * @since Jul 8, 2002
- */
-public interface ICDIThread extends ICDIExecuteStep, ICDIExecuteResume, ICDISuspend, ICDIObject {
-
- /**
- * Returns the stack frames contained in this thread. An
- * empty collection is returned if this thread contains
- * no stack frames, or is not currently suspended. Stack frames
- * are returned in top down order.
- *
- * @return a collection of stack frames
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIStackFrame[] getStackFrames() throws CDIException;
-
- /**
- * Returns the stack frames contained in this thread whose levels
- * are between the two arguments(inclusive).
- * An empty collection is returned if this thread contains
- * no stack frames, or is not currently suspended. Stack frames
- * are returned in top down order.
- *
- * @return a collection of stack frames
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIStackFrame[] getStackFrames(int lowFrame, int highFrame) throws CDIException;
-
- /**
- * Returns the depth of the stack frames.
- *
- * @return depth of stack frames
- * @throws CDIException if this method fails. Reasons include:
- */
- int getStackFrameCount() throws CDIException;
-
- /**
- * Return thread local storage variables descriptor.
- *
- * @return
- * @throws CDIException
- */
- ICDIThreadStorageDescriptor[] getThreadStorageDescriptors() throws CDIException;
-
- /**
- * Create a variable from the descriptor for evaluation. A CreatedEvent will be trigger and
- * ChangedEvent will also be trigger when the variable is assign a new value.
- * DestroyedEvent is fired when the variable is out of scope and automatically
- * removed from the manager list.
- * @param varDesc ICDThreadStorageDesc
- * @return
- * @throws CDIException
- */
- ICDIThreadStorage createThreadStorage(ICDIThreadStorageDescriptor varDesc) throws CDIException;
-
- /**
- * Equivalent to resume(false)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void resume() throws CDIException;
-
- /**
- * Equivalent to stepOver(1)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void stepOver() throws CDIException;
-
- /**
- * Equivalent to stepInto(1)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void stepInto() throws CDIException;
-
- /**
- * Equivalent to stepOverInstruction(1)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void stepOverInstruction() throws CDIException;
-
- /**
- * Equivalent to stepIntoInstruction(1)
- *
- * @deprecated
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void stepIntoInstruction() throws CDIException;
-
- /**
- * This method is deprecated and will only be available
- * on the stackframe
- *
- * @deprecated
- * @see ICDIStackFrame.stepReturn()
- * @throws CDIException
- */
- @Deprecated
- void stepReturn() throws CDIException;
-
- /**
- * Equivalent to stepUntil(location)
- *
- * @deprecated
- * @see #stepUntil(ICDILocation)
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void runUntil(ICDILocation location) throws CDIException;
-
- /**
- * Equivalent to resume(location)
- *
- * @deprecated
- * @see #resume(ICDILocation)
- * @throws CDIException if this method fails. Reasons include:
- */
- @Deprecated
- void jump(ICDILocation location) throws CDIException;
-
- /**
- * Equivalent to resume(false)
- *
- * @deprecated
- * @see #resume(boolean)
- * @throws CDIException
- */
- @Deprecated
- void signal() throws CDIException;
-
- /**
- * Equivalent to resume(signal)
- *
- * @deprecated
- * @see #resume(ICDISignal)
- * @param signal
- * @throws CDIException
- */
- @Deprecated
- void signal(ICDISignal signal) throws CDIException;
-
- /**
- * Returns true if the threads are the same.
- */
- boolean equals(ICDIThread thead);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java
deleted file mode 100644
index caf42d862b..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadGroup.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- */
-public interface ICDIThreadGroup extends ICDIBreakpointManagement, ICDIExecuteStep, ICDIExecuteResume,
- ICDISuspend, ICDISignalManagement, ICDIObject {
-
- /**
- * Returns the threads contained in this target.
- * An empty collection is returned if this target contains no
- * threads.
- *
- * @return a collection of threads
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIThread[] getThreads() throws CDIException;
-
- /**
- * Returns the currently selected thread.
- *
- * @return the currently selected thread
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIThread getCurrentThread() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java
deleted file mode 100644
index f5840ee8a9..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorage.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-/**
- * ICDIThreadStorage
- */
-public interface ICDIThreadStorage extends ICDIVariable, ICDIThreadStorageDescriptor {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java
deleted file mode 100644
index df48cf8d3e..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIThreadStorageDescriptor.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- * ICDIThreadStorageDescriptor
- */
-public interface ICDIThreadStorageDescriptor extends ICDIVariableDescriptor {
-
- /**
- * Return the thread.
- *
- * @return ICDIThread
- * @throws CDIException
- */
- ICDIThread getThread() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java
deleted file mode 100644
index bc201adf3d..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDITracepoint.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-
-/**
- * Defines a point in the program execution when the specified data to be collected.
- *
- * @since May 15, 2003
- */
-public interface ICDITracepoint extends ICDIObject {
-
- /**
- * Represents an action to be taken when the tracepoint is hit.
- *
- * @since May 15, 2003
- */
- public interface IAction {
- }
-
- /**
- * Returns the location of this tracepoint.
- *
- * @return the location of this tracepoint
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDILocation getLocation() throws CDIException;
-
- /**
- * Returns whether this tracepoint is enabled.
- *
- * @return whether this tracepoint is enabled
- * @throws CDIException if this method fails. Reasons include:
- */
- boolean isEnabled() throws CDIException;
-
- /**
- * Sets the enabled state of this tracepoint. This has no effect
- * if the current enabled state is the same as specified by
- * the enabled parameter.
- *
- * @param enabled - whether this tracepoint should be enabled
- * @throws CDIException if this method fails. Reasons include:
- */
- void setEnabled( boolean enabled ) throws CDIException;
-
- /**
- * Returns the passcount of this tracepoint.
- *
- * @return the passcount of this tracepoint
- * @throws CDIException if this method fails. Reasons include:
- */
- int getPassCount() throws CDIException;
-
- /**
- * Sets the passcount of this tracepoint.
- *
- * @param the passcount to set
- * @throws CDIException if this method fails. Reasons include:
- */
- void setPassCount( int passCount ) throws CDIException;
-
- /**
- * Adds the given actions to the action list of thie tracepoint.
- *
- * @param actions to add
- * @throws CDIException if this method fails. Reasons include:
- */
- void addActions( ICDITracepoint.IAction[] actions ) throws CDIException;
-
- /**
- * Removes the given actions from the action list of thie tracepoint.
- *
- * @param actions to remove
- * @throws CDIException if this method fails. Reasons include:
- */
- void removeActions( ICDITracepoint.IAction[] actions ) throws CDIException;
-
- /**
- * Clears the action list of thie tracepoint.
- *
- * @throws CDIException if this method fails. Reasons include:
- */
- void clearActions() throws CDIException;
-
- /**
- * Returns the actions assigned to this tracepoint.
- *
- * @return the actions of this tracepoint
- */
- ICDITracepoint.IAction[] getActions();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java
deleted file mode 100644
index e674c32751..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIValue.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-
-/**
- *
- * Represents the value of a variable. A value representing
- * a complex data structure contains variables.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIValue extends ICDIObject {
- /**
- * Returns a description of the type of data this value contains.
- *
- * @return the name of this value's data type
- * @throws CDIException if this method fails. Reasons include:
- */
- String getTypeName() throws CDIException;
-
- /**
- * Return the type of this value.
- *
- * @return
- * @throws CDIException
- */
- ICDIType getType() throws CDIException;
-
- /**
- * Returns this value as a <code>String</code>.
- *
- * @return a String representation of this value
- * @throws CDIException if this method fails. Reasons include:
- */
- String getValueString() throws CDIException;
-
- /**
- * Return the number of children.
- * @return int children count
- */
- int getChildrenNumber() throws CDIException;
-
- /**
- * @return true if value is a container like structure.
- */
- boolean hasChildren() throws CDIException;
-
- /**
- * Returns the variables in this value. An empty collection
- * is returned if there are no variables.
- *
- * @return an array of variables
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIVariable[] getVariables() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java
deleted file mode 100644
index 19d99a120e..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariable.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a data structure in the program. Each variable has
- * a value which may in turn contain more variables.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIVariable extends ICDIVariableDescriptor {
-
- /**
- * Returns true if the value of this variable could be changed.
- *
- * @return true if the value of this variable could be changed
- * @throws CDIException if this method fails. Reasons include:
- */
- boolean isEditable() throws CDIException;
-
- /**
- * Returns the value of this variable.
- *
- * @return the value of this variable
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIValue getValue() throws CDIException;
-
- /**
- * Attempts to set the value of this variable to the value of
- * the given expression.
- *
- * @param expression - an expression to generate a new value
- * @throws CDIException if this method fails. Reasons include:
- */
- void setValue(String expression) throws CDIException;
-
- /**
- * Sets the value of this variable to the given value.
- *
- * @param value - a new value
- * @throws CDIException if this method fails. Reasons include:
- */
- void setValue(ICDIValue value) throws CDIException;
-
- /**
- * Remove the variable from the manager list.
- *
- * @param var
- * @return ICDIArgument
- * @throws CDIException
- */
- void dispose() throws CDIException;
-
- boolean equals(ICDIVariable variable);
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java
deleted file mode 100644
index 14e27da64f..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIVariableDescriptor.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.type.ICDIType;
-
-
-/**
- *
- */
-public interface ICDIVariableDescriptor extends ICDIObject {
-
- /**
- * Returns the name of this variable.
- *
- * @return String the name of this variable
- */
- String getName();
-
- /**
- * Returns the type of this variable descriptor.
- *
- * @return the type of data this variable is declared
- * @throws CDIException if this method fails. Reasons include:
- */
- ICDIType getType() throws CDIException;
-
- /**
- * Returns the type name of this variable descriptor.
- *
- * @return the type of data this variable is declared
- * @throws CDIException if this method fails. Reasons include:
- */
- String getTypeName() throws CDIException;
-
- /**
- * Returns the size of this variable descriptor.
- *
- * @return the size of this variable
- * @throws CDIException if this method fails. Reasons include:
- */
- int sizeof() throws CDIException;
-
- /**
- * Returns the qualified name of this variable.
- *
- * @return the qualified name of this variable
- * @throws CDIException if this method fails. Reasons include:
- */
- String getQualifiedName() throws CDIException;
-
- /**
- * Consider the variable object as an Array of type and range[start, start + length - 1]
- * @param stack
- * @param name
- * @return ICDIVariableDescriptor
- * @throws CDIException
- */
- ICDIVariableDescriptor getVariableDescriptorAsArray(int start, int length) throws CDIException;
-
- /**
- * Consider the variable descritor as type.
- *
- * @param stack
- * @param name
- * @return ICDIVariableDescriptor
- * @throws CDIException
- */
- ICDIVariableDescriptor getVariableDescriptorAsType(String type) throws CDIException;
-
- /**
- * Returns true if the variable Object are the same,
- * For example event if the name is the same because of
- * casting this may return false;
- * @return true if the same
- */
- boolean equals(ICDIVariableDescriptor varDesc);
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java
deleted file mode 100644
index c974f19b7a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a watchpoint.
- *
- * @since Jul 9, 2002
- */
-public interface ICDIWatchpoint extends ICDIBreakpoint {
- final static public int WRITE = 0x1;
- final static public int READ = 0x2;
-
- /**
- * Returns whether this watchppoint is a write watchpoint.
- *
- * @return whether this watchppoint is a write watchpoint
- */
- boolean isWriteType();
-
- /**
- * Returns whether this watchppoint is a read watchpoint.
- *
- * @return whether this watchppoint is a read watchpoint
- */
- boolean isReadType();
-
- /**
- * Returns the watchpoint's expression.
- *
- * @return the expression of this watchpoint
- * @throws CDIException if this method fails. Reasons include:
- */
- String getWatchExpression() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint2.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint2.java
deleted file mode 100644
index c3f9f946c4..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/ICDIWatchpoint2.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Freescale Semiconductor 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:
- * Freescale Semiconductor - Initial API and implementation, https://bugs.eclipse.org/bugs/show_bug.cgi?id=118299
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model;
-
-import java.math.BigInteger;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-/**
- *
- * Represents a watchpoint.
- *
- */
-public interface ICDIWatchpoint2 extends ICDIWatchpoint {
-
- /**
- * Returns the memory space associated with this
- * watchpoint's start address, or null if there is no memory space.
- *
- * @return the memory space Id associated with the address of
- * this watchpoint
- * @throws CDIException if this method fails. Reasons include:
- */
- String getMemorySpace() throws CDIException;
-
- /**
- * Returns the range for this watchpoint in addressable units.
- *
- * @return the range of the watchpoint.
- * @throws CDIException if this method fails. Reasons include:
- */
- BigInteger getRange() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java
deleted file mode 100644
index b1b1342ceb..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIAggregateType extends ICDIType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java
deleted file mode 100644
index b9fcceb141..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIAggregateValue.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIAggregateValue extends ICDIValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java
deleted file mode 100644
index e39f50602a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIArrayType extends ICDIDerivedType {
-
- int getDimension();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java
deleted file mode 100644
index 285fcdd33f..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIArrayValue.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariable;
-
-
-/**
- *
- * Represents a value of a array type.
- *
- * @since April 15, 2003
- */
-public interface ICDIArrayValue extends ICDIDerivedValue {
- ICDIVariable[] getVariables(int index, int length) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBigIntegerValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBigIntegerValue.java
deleted file mode 100644
index fdf28271e2..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBigIntegerValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Freescale Semiconductor 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:
- * Freescale Semiconductor - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since 6.0
- */
-public interface ICDIBigIntegerValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java
deleted file mode 100644
index d592c2b326..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolType.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIBoolType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java
deleted file mode 100644
index 5eda323adc..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIBoolValue.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIBoolValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java
deleted file mode 100644
index 4e3433b308..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDICharType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java
deleted file mode 100644
index ad568721f5..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDICharValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDICharValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java
deleted file mode 100644
index f5c9b48e6d..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedType.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIDerivedType extends ICDIType {
-
- ICDIType getComponentType();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java
deleted file mode 100644
index 0c92d70032..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDerivedValue.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIDerivedValue extends ICDIValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java
deleted file mode 100644
index b7572232c2..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIDoubleType extends ICDIFloatingPointType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java
deleted file mode 100644
index e29d0376bb..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIDoubleValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIDoubleValue extends ICDIFloatingPointValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java
deleted file mode 100644
index 35a474025c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumType.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIEnumType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java
deleted file mode 100644
index d2f7dc277a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIEnumValue.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIEnumValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java
deleted file mode 100644
index 2dfae75755..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIFloatType extends ICDIFloatingPointType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java
deleted file mode 100644
index f1dd0be8b3..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIFloatValue extends ICDIFloatingPointValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java
deleted file mode 100644
index 9d4d10a03a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointType.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIFloatingPointType extends ICDIType {
-
- boolean isImaginary();
-
- boolean isComplex();
-
- boolean isLong();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java
deleted file mode 100644
index df29a34cf3..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFloatingPointValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIFloatingPointValue extends ICDIValue {
-
- float floatValue() throws CDIException;
-
- double doubleValue() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java
deleted file mode 100644
index 98f5401042..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIFunctionType extends ICDIDerivedType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java
deleted file mode 100644
index a704d0970e..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIFunctionValue.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIFunctionValue extends ICDIDerivedValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java
deleted file mode 100644
index bd3d8adc71..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIIntType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java
deleted file mode 100644
index 327e6b76f6..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIIntValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java
deleted file mode 100644
index 4125bf84e5..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIIntegralType extends ICDIType{
-
- boolean isUnsigned();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java
deleted file mode 100644
index dea2ddd68b..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIIntegralValue.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIIntegralValue extends ICDIValue {
-
- public BigInteger bigIntegerValue() throws CDIException;
-
- public long longValue() throws CDIException;
-
- public int intValue() throws CDIException;
-
- public short shortValue() throws CDIException;
-
- public int byteValue() throws CDIException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java
deleted file mode 100644
index 06408a8413..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDILongLongType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java
deleted file mode 100644
index dcaa0ec39c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongLongValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDILongLongValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java
deleted file mode 100644
index c5a772e261..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDILongType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java
deleted file mode 100644
index 6837e23851..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDILongValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDILongValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java
deleted file mode 100644
index 596f814155..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIPointerType extends ICDIDerivedType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java
deleted file mode 100644
index 9498aa724b..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIPointerValue.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import java.math.BigInteger;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIPointerValue extends ICDIDerivedValue {
-
- BigInteger pointerValue() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java
deleted file mode 100644
index 274af9e2cd..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceType.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- */
-public interface ICDIReferenceType extends ICDIDerivedType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java
deleted file mode 100644
index 912006db06..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIReferenceValue.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIValue;
-
-/**
- */
-public interface ICDIReferenceValue extends ICDIDerivedValue {
-
- /**
- * Return the reference value.
- * @return ICDIValue
- * @throws CDIException
- */
- ICDIValue referenceValue() throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java
deleted file mode 100644
index 52b0e526d3..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIShortType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java
deleted file mode 100644
index 3d39f2961c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIShortValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the value of a variable.
- *
- * @since April 15, 2003
- */
-public interface ICDIShortValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java
deleted file mode 100644
index 4262059e4b..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructType.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIStructType extends ICDIAggregateType {
-
- boolean isClass();
-
- boolean isStruct();
-
- boolean isUnion();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java
deleted file mode 100644
index ccdcf04937..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIStructValue.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIStructValue extends ICDIAggregateValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java
deleted file mode 100644
index ce0802603c..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIType.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIType extends ICDIObject {
-
- /**
- * Returns the name.
- *
- * @return the name of the data type
- * @throws CDIException if this method fails.
- */
- String getTypeName();
-
- /**
- * Returns a more desciptive name.
- * @return
- */
- String getDetailTypeName();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java
deleted file mode 100644
index b3e49f346e..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIVoidType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-
-
-/**
- *
- * Represents the type of a variable.
- *
- * @since Apr 15, 2003
- */
-public interface ICDIVoidType extends ICDIType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java
deleted file mode 100644
index 4978b543d6..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharType.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIWCharType extends ICDIIntegralType {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java b/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java
deleted file mode 100644
index 7873ce1c8f..0000000000
--- a/debug/org.eclipse.cdt.debug.core/cdi/org/eclipse/cdt/debug/core/cdi/model/type/ICDIWCharValue.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.cdi.model.type;
-
-/**
- */
-public interface ICDIWCharValue extends ICDIIntegralValue {
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/plugin.xml b/debug/org.eclipse.cdt.debug.core/plugin.xml
index a67ad4ae71..bbbb4c5a6a 100644
--- a/debug/org.eclipse.cdt.debug.core/plugin.xml
+++ b/debug/org.eclipse.cdt.debug.core/plugin.xml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin>
- <extension-point id="CDebugger" name="%CDebugger.name" schema="schema/CDebugger.exsd"/>
<extension-point id="BreakpointActionType" name="%BreakpointAction" schema="schema/BreakpointAction.exsd"/>
<extension-point id="BreakpointExtension" name="%BreakpointAction" schema="schema/BreakpointExtension.exsd"/>
<extension-point id="supportedSourceContainerTypes" name="%SupportedSourceContainerTypes.name" schema="schema/SupportedSourceContainerTypes.exsd"/>
@@ -384,30 +383,6 @@
name="%containerName.programRelativePath">
</sourceContainerType>
</extension>
-
- <extension
- point="org.eclipse.core.runtime.adapters">
- <factory
- class="org.eclipse.cdt.debug.core.breakpointactions.BreakpointActionAdapterFactory"
- adaptableType="org.eclipse.cdt.debug.internal.core.model.CThread">
- <adapter
- type="org.eclipse.cdt.debug.core.breakpointactions.ILogActionEnabler">
- </adapter>
- <adapter
- type="org.eclipse.cdt.debug.core.breakpointactions.IResumeActionEnabler">
- </adapter>
- </factory>
-
- </extension>
- <extension
- point="org.eclipse.cdt.debug.core.BreakpointExtension">
- <breakpointExtension
- class="org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpointFilterExtension"
- debugModelId="org.eclipse.cdt.debug.core"
- id="org.eclipse.cdt.debug.core.filter"
- markerType="org.eclipse.cdt.debug.core.cBreakpointMarker">
- </breakpointExtension>
- </extension>
<extension
point="org.eclipse.cdt.debug.core.supportedSourceContainerTypes">
<sourceContainer
diff --git a/debug/org.eclipse.cdt.debug.core/pom.xml b/debug/org.eclipse.cdt.debug.core/pom.xml
index 0bbf1dbfe5..9910c34947 100644
--- a/debug/org.eclipse.cdt.debug.core/pom.xml
+++ b/debug/org.eclipse.cdt.debug.core/pom.xml
@@ -11,7 +11,7 @@
<relativePath>../../pom.xml</relativePath>
</parent>
- <version>7.8.0-SNAPSHOT</version>
+ <version>8.0.0-SNAPSHOT</version>
<artifactId>org.eclipse.cdt.debug.core</artifactId>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd b/debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd
deleted file mode 100644
index cdeb3f46ec..0000000000
--- a/debug/org.eclipse.cdt.debug.core/schema/CDebugger.exsd
+++ /dev/null
@@ -1,154 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.cdt.debug.core">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.cdt.debug.core" id="CDebugger" name="CDebugger"/>
- </appInfo>
- <documentation>
- [Enter description of this extension point]
- </documentation>
- </annotation>
-
- <element name="extension">
- <complexType>
- <sequence>
- <element ref="debugger" minOccurs="1" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
- a fully qualified identifier of the target extension point
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
- an optional identifier of the extension instance
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
- an optional name of the extension instance
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="debugger">
- <complexType>
- <sequence>
- <element ref="buildIdPattern" minOccurs="0" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="name" type="string" use="required">
- <annotation>
- <documentation>
- specifies the debugger&apos;s name
- </documentation>
- </annotation>
- </attribute>
- <attribute name="modes" type="string">
- <annotation>
- <documentation>
- specifies the comma separated list of debugging modes (run,core,attach).
- </documentation>
- </annotation>
- </attribute>
- <attribute name="class" type="string" use="required">
- <annotation>
- <documentation>
- specifies a fully qualified name of a Java class that implements &amp;lt;code&amp;gt;ICDIDebugger2&amp;lt;/code&amp;gt;
- </documentation>
- <appInfo>
- <meta.attribute kind="java" basedOn="org.eclipse.cdt.debug.core.ICDIDebugger2"/>
- </appInfo>
- </annotation>
- </attribute>
- <attribute name="id" type="string" use="required">
- <annotation>
- <documentation>
- specifies a unique identifier for this debugger.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="platform" type="string">
- <annotation>
- <documentation>
- specifies a comma separated list of supported platforms.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="cpu" type="string">
- <annotation>
- <documentation>
- specifies a comma separated list of supported architectures.
- </documentation>
- </annotation>
- </attribute>
- <attribute name="coreFileFilter" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="buildIdPattern">
- <complexType>
- <attribute name="pattern" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- [Enter extension point usage example here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiInfo"/>
- </appInfo>
- <documentation>
- [Enter API information here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
- [Enter information about supplied implementation of this extension point.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="copyright"/>
- </appInfo>
- <documentation>
- Copyright (c) 2004, 2005 QNX Software Systems 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
- </documentation>
- </annotation>
-
-</schema>
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java
index 9d549066e8..d9feb25195 100644
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java
+++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDIDebugModel.java
@@ -14,20 +14,11 @@
*******************************************************************************/
package org.eclipse.cdt.debug.core;
-import java.io.IOException;
import java.math.BigInteger;
import java.util.HashMap;
import java.util.Map;
-import org.eclipse.cdt.core.CCorePlugin;
import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IBinaryParser;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryFile;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.core.model.CoreModelUtil;
-import org.eclipse.cdt.core.settings.model.ICConfigExtensionReference;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
import org.eclipse.cdt.debug.core.model.ICBreakpoint;
import org.eclipse.cdt.debug.core.model.ICBreakpoint2;
@@ -51,10 +42,7 @@ import org.eclipse.cdt.debug.internal.core.breakpoints.CLineBreakpoint;
import org.eclipse.cdt.debug.internal.core.breakpoints.CLineDynamicPrintf;
import org.eclipse.cdt.debug.internal.core.breakpoints.CLineTracepoint;
import org.eclipse.cdt.debug.internal.core.breakpoints.CWatchpoint;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.IWorkspaceRunnable;
import org.eclipse.core.resources.ResourcesPlugin;
@@ -64,14 +52,10 @@ import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
import org.eclipse.debug.core.DebugPlugin;
import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
import org.eclipse.debug.core.model.ILineBreakpoint;
-import org.eclipse.debug.core.model.IProcess;
/**
* Provides utility methods for creating debug sessions, targets and breakpoints
@@ -89,154 +73,6 @@ public class CDIDebugModel {
}
/**
- * Creates and returns a debug target for the given CDI target, with the
- * specified name, and associates it with the given process for console I/O.
- * The debug target is added to the given launch.
- *
- * @param launch
- * the launch the new debug target will be contained in
- * @param project
- * the project to use to persist breakpoints.
- * @param cdiTarget
- * the CDI target to create a debug target for
- * @param name
- * the name to associate with this target, which will be returned
- * from <code>IDebugTarget.getName</code>.
- * @param debuggeeProcess
- * the process to associate with the debug target, which will be
- * returned from <code>IDebugTarget.getProcess</code>
- * @param file
- * the executable to debug.
- * @param allowTerminate
- * allow terminate().
- * @param allowDisconnect
- * allow disconnect().
- * @param stopSymbol
- * place temporary breakpoint at <code>stopSymbol</code>, ignore
- * if <code>null</code> or empty.
- * @param resumeTarget
- * resume target.
- * @return a debug target
- * @throws DebugException
- * @since 3.1
- */
- public static IDebugTarget newDebugTarget(final ILaunch launch, final IProject project, final ICDITarget cdiTarget,
- final String name, final IProcess debuggeeProcess, final IBinaryObject file, final boolean allowTerminate,
- final boolean allowDisconnect, final String stopSymbol, final boolean resumeTarget) throws DebugException {
- final IDebugTarget[] target = new IDebugTarget[1];
- IWorkspaceRunnable r = new IWorkspaceRunnable() {
-
- @Override
- public void run(IProgressMonitor m) throws CoreException {
- target[0] = new CDebugTarget(launch, project, cdiTarget, name, debuggeeProcess, file, allowTerminate,
- allowDisconnect);
- ((CDebugTarget) target[0]).start(stopSymbol, resumeTarget);
- }
- };
- try {
- ResourcesPlugin.getWorkspace().run(r, null);
- } catch (CoreException e) {
- CDebugCorePlugin.log(e);
- throw new DebugException(e.getStatus());
- }
- return target[0];
- }
-
- /**
- * Creates and returns a debug target for the given CDI target, with the
- * specified name, and associates it with the given process for console I/O.
- * The debug target is added to the given launch.
- *
- * @param launch
- * the launch the new debug target will be contained in
- * @param project
- * the project to use to persist breakpoints.
- * @param cdiTarget
- * the CDI target to create a debug target for
- * @param name
- * the name to associate with this target, which will be returned
- * from <code>IDebugTarget.getName</code>.
- * @param debuggeeProcess
- * the process to associate with the debug target, which will be
- * returned from <code>IDebugTarget.getProcess</code>
- * @param file
- * the executable to debug.
- * @param allowTerminate
- * allow terminate().
- * @param allowDisconnect
- * allow disconnect().
- * @param stopInMain
- * place temporary breakpoint at main()
- * @param resumeTarget
- * resume target.
- * @return a debug target
- * @throws DebugException
- * @deprecated
- */
- @Deprecated
- public static IDebugTarget newDebugTarget(final ILaunch launch, final IProject project, final ICDITarget cdiTarget,
- final String name, final IProcess debuggeeProcess, final IBinaryObject file, final boolean allowTerminate,
- final boolean allowDisconnect, final boolean stopInMain, final boolean resumeTarget) throws DebugException {
- final IDebugTarget[] target = new IDebugTarget[1];
- IWorkspaceRunnable r = new IWorkspaceRunnable() {
-
- @Override
- public void run(IProgressMonitor m) throws CoreException {
- String stopSymbol = null;
- if (stopInMain)
- stopSymbol = launch.getLaunchConfiguration().getAttribute(
- ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL,
- ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT);
- target[0] = new CDebugTarget(launch, project, cdiTarget, name, debuggeeProcess, file, allowTerminate,
- allowDisconnect);
- ((CDebugTarget) target[0]).start(stopSymbol, resumeTarget);
- }
- };
- try {
- ResourcesPlugin.getWorkspace().run(r, null);
- } catch (CoreException e) {
- CDebugCorePlugin.log(e);
- throw new DebugException(e.getStatus());
- }
- return target[0];
- }
-
- /**
- * Creates and returns a debug target for the given CDI target, with the
- * specified name, and associates it with the given process for console I/O.
- * The debug target is added to the given launch.
- *
- * @param launch
- * the launch the new debug target will be contained in
- * @param project
- * the project to use to persist breakpoints.
- * @param cdiTarget
- * the CDI target to create a debug target for
- * @param name
- * the name to associate with this target, which will be returned
- * from <code>IDebugTarget.getName</code>.
- * @param debuggeeProcess
- * the process to associate with the debug target, which will be
- * returned from <code>IDebugTarget.getProcess</code>
- * @param file
- * the executable to debug.
- * @param allowTerminate
- * allow terminate().
- * @param allowDisconnect
- * allow disconnect().
- * @param resumeTarget
- * resume target.
- * @return a debug target
- * @throws DebugException
- */
- public static IDebugTarget newDebugTarget(ILaunch launch, IProject project, ICDITarget cdiTarget,
- final String name, IProcess debuggeeProcess, IBinaryObject file, boolean allowTerminate,
- boolean allowDisconnect, boolean resumeTarget) throws DebugException {
- return newDebugTarget(launch, project, cdiTarget, name, debuggeeProcess, file, allowTerminate, allowDisconnect,
- null, resumeTarget);
- }
-
- /**
* Calculates breakpoint marker ID based on the breakpoint object type.
*
* @since 7.2
@@ -1376,61 +1212,6 @@ public class CDIDebugModel {
return null;
}
- /**
- * @deprecated
- */
- @Deprecated
- public static IDebugTarget newDebugTarget(ILaunch launch, ICDITarget target, String name, IProcess iprocess,
- IProcess debuggerProcess, IFile file, boolean allowTerminate, boolean allowDisconnect, boolean stopInMain)
- throws CoreException {
- IBinaryExecutable exeFile = getBinary(file);
- String stopSymbol = null;
- if (stopInMain)
- stopSymbol = launch.getLaunchConfiguration().getAttribute(
- ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL,
- ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT);
- return newDebugTarget(launch, file.getProject(), target, name, iprocess, exeFile, allowTerminate,
- allowDisconnect, stopSymbol, true);
- }
-
- /**
- * @deprecated
- */
- @Deprecated
- public static IDebugTarget newAttachDebugTarget(ILaunch launch, ICDITarget target, String name,
- IProcess debuggerProcess, IFile file) throws CoreException {
- IBinaryExecutable exeFile = getBinary(file);
- return newDebugTarget(launch, file.getProject(), target, name, null, exeFile, true, true, false);
- }
-
- /**
- * @deprecated
- */
- @Deprecated
- public static IDebugTarget newCoreFileDebugTarget(final ILaunch launch, final ICDITarget target, final String name,
- final IProcess debuggerProcess, final IFile file) throws CoreException {
- IBinaryExecutable exeFile = getBinary(file);
- return newDebugTarget(launch, file.getProject(), target, name, null, exeFile, true, false, false);
- }
-
- private static IBinaryExecutable getBinary(IFile file) throws CoreException {
- IProject project = file.getProject();
- ICConfigExtensionReference[] binaryParsersExt = CCorePlugin.getDefault().getDefaultBinaryParserExtensions(
- project);
- for (int i = 0; i < binaryParsersExt.length; i++) {
- IBinaryParser parser = CoreModelUtil.getBinaryParser(binaryParsersExt[i]);
- try {
- IBinaryFile exe = parser.getBinary(file.getLocation());
- if (exe instanceof IBinaryExecutable) {
- return (IBinaryExecutable) exe;
- }
- } catch (IOException e) {
- }
- }
- throw new CoreException(new Status(IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), -1,
- DebugCoreMessages.getString("CDIDebugModel.0"), null)); //$NON-NLS-1$
- }
-
private static boolean sameSourceHandle(String handle1, String handle2) {
if (handle1 == null || handle2 == null)
return false;
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java
index 41274aa5ad..177b245c5d 100644
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java
+++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugCorePlugin.java
@@ -12,11 +12,7 @@
*******************************************************************************/
package org.eclipse.cdt.debug.core;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
import java.util.HashSet;
-import java.util.List;
import org.eclipse.cdt.debug.core.breakpointactions.BreakpointActionManager;
import org.eclipse.cdt.debug.core.command.CCommandAdapterFactory;
@@ -27,11 +23,9 @@ import org.eclipse.cdt.debug.core.sourcelookup.AbsolutePathSourceContainer;
import org.eclipse.cdt.debug.core.sourcelookup.CProjectSourceContainer;
import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
import org.eclipse.cdt.debug.core.sourcelookup.ProgramRelativePathSourceContainer;
-import org.eclipse.cdt.debug.internal.core.DebugConfiguration;
import org.eclipse.cdt.debug.internal.core.DebugModelProvider;
import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
import org.eclipse.cdt.debug.internal.core.ListenerList;
-import org.eclipse.cdt.debug.internal.core.SessionManager;
import org.eclipse.cdt.debug.internal.core.Trace;
import org.eclipse.cdt.debug.internal.core.disassembly.DisassemblyContextService;
import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupDirector;
@@ -41,8 +35,6 @@ import org.eclipse.core.resources.IWorkspace;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.Plugin;
@@ -74,10 +66,6 @@ public class CDebugCorePlugin extends Plugin {
*/
private static CDebugCorePlugin plugin;
- private HashMap<String, DebugConfiguration> fDebugConfigurations;
-
- private HashSet<String> fActiveDebugConfigurations;
-
/**
* Breakpoint listener list.
*/
@@ -105,8 +93,6 @@ public class CDebugCorePlugin extends Plugin {
*/
private CommonSourceLookupDirector fCommonSourceLookupDirector;
- private SessionManager fSessionManager = null;
-
/**
* The constructor.
*/
@@ -179,117 +165,6 @@ public class CDebugCorePlugin extends Plugin {
getDefault().getLog().log(new Status(IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), INTERNAL_ERROR, message, null));
}
- private void initializeDebugConfiguration() {
- IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(getUniqueIdentifier(), CDEBUGGER_EXTENSION_POINT_ID);
- IConfigurationElement[] infos = extensionPoint.getConfigurationElements();
- fDebugConfigurations = new HashMap<String, DebugConfiguration>(infos.length);
- for(int i = 0; i < infos.length; i++) {
- IConfigurationElement configurationElement = infos[i];
- if (configurationElement.getName().equals(DEBUGGER_ELEMENT)) {
- DebugConfiguration configType = new DebugConfiguration(configurationElement);
- fDebugConfigurations.put(configType.getID(), configType);
- }
- }
- }
-
- private void initializeActiveDebugConfigurations() {
- fActiveDebugConfigurations = new HashSet<String>(getDebugConfigurations().length);
- fActiveDebugConfigurations.addAll(fDebugConfigurations.keySet());
- String[] filteredTypes = CDebugCorePlugin.getDefault().getPluginPreferences().getString(ICDebugConstants.PREF_FILTERED_DEBUGGERS).split("\\,"); //$NON-NLS-1$
- fActiveDebugConfigurations.removeAll(Arrays.asList(filteredTypes));
- }
-
- public ICDebugConfiguration[] getDebugConfigurations() {
- if (fDebugConfigurations == null) {
- initializeDebugConfiguration();
- }
- return fDebugConfigurations.values().toArray(new ICDebugConfiguration[fDebugConfigurations.size()]);
- }
-
- public ICDebugConfiguration[] getActiveDebugConfigurations() {
- if (fDebugConfigurations == null) {
- initializeDebugConfiguration();
- }
- if (fActiveDebugConfigurations == null) {
- initializeActiveDebugConfigurations();
- }
- ArrayList<DebugConfiguration> list = new ArrayList<DebugConfiguration>(fActiveDebugConfigurations.size());
-
- for (String id : fActiveDebugConfigurations) {
- DebugConfiguration dc = fDebugConfigurations.get(id);
- if (dc != null)
- list.add(dc);
- }
- return list.toArray(new ICDebugConfiguration[list.size()]);
- }
-
- public ICDebugConfiguration[] getDefaultActiveDebugConfigurations() {
- List<String> filtered = Arrays.asList(CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultString(ICDebugConstants.PREF_FILTERED_DEBUGGERS).split("\\,")); //$NON-NLS-1$
- HashMap<String, DebugConfiguration> all = new HashMap<String, DebugConfiguration>(fDebugConfigurations);
- all.keySet().removeAll(filtered);
- return all.values().toArray(new ICDebugConfiguration[all.size()]);
- }
-
- public void saveFilteredDebugConfigurations(ICDebugConfiguration[] configurations) {
- disposeActiveDebugConfigurations();
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < configurations.length; ++i) {
- sb.append(configurations[i].getID()).append(',');
- }
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue(ICDebugConstants.PREF_FILTERED_DEBUGGERS, sb.toString());
- CDebugCorePlugin.getDefault().savePluginPreferences();
- }
-
- public void saveDefaultDebugConfiguration(String id) {
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue(ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE, (id != null) ? id : ""); //$NON-NLS-1$
- }
-
- public ICDebugConfiguration getDefaultDebugConfiguration() {
- ICDebugConfiguration result = null;
- try {
- result = getDebugConfiguration(CDebugCorePlugin.getDefault().getPluginPreferences().getString(ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE));
- } catch (CoreException e) {
- }
- return result;
- }
-
- public ICDebugConfiguration getDefaultDefaultDebugConfiguration() {
- ICDebugConfiguration result = null;
- try {
- result = getDebugConfiguration(CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultString(ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE));
- } catch (CoreException e) {
- }
- if (result == null) {
- }
- return result;
- }
-
- public boolean isDefaultDebugConfiguration(String id) {
- return id.compareTo(CDebugCorePlugin.getDefault().getPluginPreferences().getString(ICDebugConstants.PREF_DEFAULT_DEBUGGER_TYPE)) == 0;
- }
-
- public ICDebugConfiguration getDebugConfiguration(String id) throws CoreException {
- if (fDebugConfigurations == null) {
- initializeDebugConfiguration();
- }
- ICDebugConfiguration dbgCfg = fDebugConfigurations.get(id);
- if (dbgCfg == null) {
- IStatus status = new Status(IStatus.ERROR, getUniqueIdentifier(), 100, DebugCoreMessages.getString("CDebugCorePlugin.0"), null); //$NON-NLS-1$
- throw new CoreException(status);
- }
- return dbgCfg;
- }
-
- protected SessionManager getSessionManager() {
- return fSessionManager;
- }
-
- protected void setSessionManager(SessionManager sm) {
- if (fSessionManager != null)
- fSessionManager.dispose();
- fSessionManager = sm;
- }
-
public void saveCommonSourceLocations(ICSourceLocation[] locations) {
CDebugCorePlugin.getDefault().getPluginPreferences().setValue(ICDebugConstants.PREF_SOURCE_LOCATIONS, SourceUtils.getCommonSourceLocationsMemento(locations));
}
@@ -348,7 +223,6 @@ public class CDebugCorePlugin extends Plugin {
createCommandAdapterFactory();
createBreakpointListenersList();
createDisassemblyContextService();
- setSessionManager(new SessionManager());
setDefaultLaunchDelegates();
Platform.getAdapterManager().registerAdapters(new DebugModelProvider(), ICDebugElement.class);
@@ -359,11 +233,9 @@ public class CDebugCorePlugin extends Plugin {
*/
@Override
public void stop(BundleContext context) throws Exception {
- setSessionManager(null);
disposeDisassemblyContextService();
disposeBreakpointListenersList();
disposeCommonSourceLookupDirector();
- disposeDebugConfigurations();
super.stop(context);
}
@@ -423,21 +295,6 @@ public class CDebugCorePlugin extends Plugin {
private void convertSourceLocations(CommonSourceLookupDirector director) {
director.setSourceContainers(SourceUtils.convertSourceLocations(getCommonSourceLocations()));
}
-
- private void disposeActiveDebugConfigurations() {
- if (fActiveDebugConfigurations != null) {
- fActiveDebugConfigurations.clear();
- fActiveDebugConfigurations = null;
- }
- }
-
- private void disposeDebugConfigurations() {
- disposeActiveDebugConfigurations();
- if (fDebugConfigurations != null) {
- fDebugConfigurations.clear();
- fDebugConfigurations = null;
- }
- }
public BreakpointActionManager getBreakpointActionManager() {
if (breakpointActionManager == null)
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java
index 3d6329c3b9..0c607e563c 100644
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java
+++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/CDebugUtils.java
@@ -32,17 +32,14 @@ import javax.xml.transform.stream.StreamResult;
import org.eclipse.cdt.core.CCorePlugin;
import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
import org.eclipse.cdt.debug.core.model.ICBreakpoint;
import org.eclipse.cdt.debug.core.model.ICBreakpointType;
import org.eclipse.cdt.debug.core.model.ICDynamicPrintf;
import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICValue;
import org.eclipse.cdt.debug.core.model.ICWatchpoint;
import org.eclipse.cdt.debug.core.model.ICWatchpoint2;
-import org.eclipse.cdt.debug.internal.core.model.CFloatingPointValue;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
import org.eclipse.core.resources.IProject;
@@ -246,16 +243,6 @@ public class CDebugUtils {
return serializeDocument(doc, true);
}
- public static Number getFloatingPointValue(ICValue value) {
- if (value instanceof CFloatingPointValue) {
- try {
- return ((CFloatingPointValue)value).getFloatingPointValue();
- } catch (CDIException e) {
- }
- }
- return null;
- }
-
public static boolean isNaN(Number value) {
if (value instanceof Double) {
return ((Double) value).isNaN();
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java
deleted file mode 100644
index a50cf3bb6a..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2012 QNX Software Systems 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:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunch;
-
-/**
- * @deprecated use <code>ICDIDebugger2</code>.
- */
-@Deprecated
-public interface ICDIDebugger {
-
- /**
- * @deprecated use <code>createSession</code> of <code>ICDIDebugger2</code>
- */
- @Deprecated
- public ICDISession createDebuggerSession(ILaunch launch, IBinaryObject exe, IProgressMonitor monitor) throws CoreException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java
deleted file mode 100644
index bc9cba0550..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDIDebugger2.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2010 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import java.io.File;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunch;
-
-/**
- * Replacement for deprecated <code>ICDIDebugger</code>.
- */
-public interface ICDIDebugger2 extends ICDIDebugger {
-
- /**
- * <code>null</code> can be passed as <code>executable</code> allowing debuggers to create session without executables,
- * or load executables later during the session.
- */
- public ICDISession createSession(ILaunch launch, File executable, IProgressMonitor monitor) throws CoreException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java
deleted file mode 100644
index 8573f5fd07..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugConfiguration.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import org.eclipse.core.runtime.CoreException;
-
-public interface ICDebugConfiguration {
- final static String CPU_NATIVE = "native"; //$NON-NLS-1$
-
- /**
- * @return
- * @throws CoreException
- * @deprecated
- */
- @Deprecated
- ICDebugger getDebugger() throws CoreException;
-
- ICDIDebugger createDebugger() throws CoreException;
- String getName();
- String getID();
- String getPlatform();
- String[] getCPUList();
- String[] getModeList();
- String[] getCoreFileExtensions();
- boolean supportsCPU(String cpu);
- boolean supportsMode(String mode);
-
- /**
- * Returns a list of supported build configuration ids.
- * Returns an empty array if a list has not been specified,
- * which means that this debug configuration supports all
- * build configurations.
- */
- String[] getSupportedBuildConfigPatterns();
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java
deleted file mode 100644
index 633d101422..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICDebugger.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-/**
- *
- * @deprecated - see ICDIDebugger
- */
-@Deprecated
-public interface ICDebugger {
- public ICDISession createLaunchSession(ILaunchConfiguration config, IFile exe) throws CDIException ;
- public ICDISession createAttachSession(ILaunchConfiguration config, IFile exe, int pid) throws CDIException;
- public ICDISession createCoreSession(ILaunchConfiguration config, IFile exe, IPath corefile) throws CDIException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java
deleted file mode 100644
index fbe4523cca..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICGlobalVariableManager.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core;
-
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Manages the collection of global variables added to a debug target.
- */
-public interface ICGlobalVariableManager {
-
- /**
- * Registers with this manager the global variables specified by given descriptors.
- *
- * @param descriptors the descriptors of global variables to register with this manager
- * @throws DebugException
- */
- public void addGlobals( IGlobalVariableDescriptor[] descriptors ) throws DebugException;
-
- /**
- * Removes specified global variables from this manager.
- *
- * @param globals global variables to remove
- */
- public void removeGlobals( ICGlobalVariable[] globals );
-
- /**
- * Removes all global variables from this manager.
- */
- public void removeAllGlobals();
-
- /**
- * Returns the array of descriptors of global varibales added to this manager.
- *
- * @return the array of descriptors
- */
- public IGlobalVariableDescriptor[] getDescriptors();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/BreakpointActionAdapterFactory.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/BreakpointActionAdapterFactory.java
deleted file mode 100644
index 00aafd7536..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/BreakpointActionAdapterFactory.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2012 Nokia 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:
- * Nokia - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.breakpointactions;
-
-import org.eclipse.cdt.debug.internal.core.model.CThread;
-import org.eclipse.core.runtime.IAdapterFactory;
-
-public class BreakpointActionAdapterFactory implements IAdapterFactory {
-
- @Override
- public Object getAdapter(Object adaptableObject, Class adapterType) {
- if (adapterType.equals(ILogActionEnabler.class)) {
- if (adaptableObject instanceof CThread) {
- return new LogActionEnabler((CThread) adaptableObject);
- }
- }
- if (adapterType.equals(IResumeActionEnabler.class)) {
- if (adaptableObject instanceof CThread) {
- return new ResumeActionEnabler((CThread) adaptableObject);
- }
- }
- return null;
- }
-
- @Override
- public Class[] getAdapterList() {
- return new Class[] { ILogActionEnabler.class, IResumeActionEnabler.class, };
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/LogActionEnabler.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/LogActionEnabler.java
deleted file mode 100644
index 8f3c319814..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/LogActionEnabler.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2012 Nokia 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:
- * Nokia - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.breakpointactions;
-
-import java.util.List;
-
-import org.eclipse.cdt.debug.internal.core.model.CStackFrame;
-import org.eclipse.cdt.debug.internal.core.model.CThread;
-
-public class LogActionEnabler implements ILogActionEnabler {
-
- private CThread thread;
-
- public LogActionEnabler(CThread thread) {
- this.thread = thread;
- }
-
- @Override
- public String evaluateExpression(String expression) throws Exception {
- List frames = thread.computeStackFrames();
- CStackFrame frame = (CStackFrame) frames.get(0);
-
- return frame.evaluateExpressionToString(expression);
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/ResumeActionEnabler.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/ResumeActionEnabler.java
deleted file mode 100644
index 0412f310f8..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/breakpointactions/ResumeActionEnabler.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2012 Nokia 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:
- * Nokia - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.breakpointactions;
-
-import org.eclipse.cdt.debug.internal.core.model.CThread;
-
-public class ResumeActionEnabler implements IResumeActionEnabler {
-
- private CThread thread;
-
- public ResumeActionEnabler(CThread adaptableObject) {
- thread = adaptableObject;
- }
-
- @Override
- public void resume() throws Exception {
- thread.resume();
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java
deleted file mode 100644
index 21e5b3a6c9..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/CVariableFormat.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Defines the variable format types.
- */
-public class CVariableFormat {
-
- private final String fName;
- private final int fNum;
-
- private CVariableFormat( String name, int num ) {
- this.fName = name;
- this.fNum= num;
- }
-
- @Override
- public String toString() {
- return this.fName;
- }
-
- public int getFormatNumber() {
- return this.fNum;
- }
-
- public static CVariableFormat getFormat( int code ) {
- if ( code == NATURAL.getFormatNumber() ) {
- return NATURAL;
- } else if ( code == DECIMAL.getFormatNumber() ) {
- return DECIMAL;
- } else if ( code == BINARY.getFormatNumber() ) {
- return BINARY;
- } else if ( code == OCTAL.getFormatNumber() ) {
- return OCTAL;
- } else if ( code == HEXADECIMAL.getFormatNumber() ) {
- return HEXADECIMAL;
- } else {
- // unexpected value, mapping to NATURAL
- return NATURAL;
- }
- }
-
- public static final CVariableFormat NATURAL = new CVariableFormat( "natural", 0 ); //$NON-NLS-1$
- public static final CVariableFormat DECIMAL = new CVariableFormat( "decimal", 1 ); //$NON-NLS-1$
- public static final CVariableFormat BINARY = new CVariableFormat( "binary", 2 ); //$NON-NLS-1$
- public static final CVariableFormat OCTAL = new CVariableFormat( "octal", 3 ); //$NON-NLS-1$
- public static final CVariableFormat HEXADECIMAL = new CVariableFormat( "hexadecimal", 4 ); //$NON-NLS-1$
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAddRegisterGroupHandler.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAddRegisterGroupHandler.java
deleted file mode 100644
index 1e402ad491..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IAddRegisterGroupHandler.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2014 Ericsson 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:
- * Marc Khouzam (Ericsson) - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.commands.IDebugCommandHandler;
-
-/**
- * Handler interface to for the addRegisterGroup command
- *
- * @since 7.6
- */
-public interface IAddRegisterGroupHandler extends IDebugCommandHandler {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpointFilterExtension.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpointFilterExtension.java
deleted file mode 100644
index a30526da03..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICBreakpointFilterExtension.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2008 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * Wind River Systems - Refactored from ICBreakpoint
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * Breakpoint extension to allow filtering based on CDTs extended standard debug
- * model elements.
- */
-public interface ICBreakpointFilterExtension extends ICBreakpointExtension {
-
- /**
- * Add the given target to the list of this breakpoint's targets.
- * Target filters are not persisted across workbench invocations.
- *
- * @param target the target to add to the list of this breakpoint's targets.
- * @throws CoreException if unable to set the target filter
- */
- public void setTargetFilter( ICDebugTarget target ) throws CoreException;
-
- /**
- * Removes the given target from the breakpoint's target list.
- * The breakpoint has no effect in the given target.
- *
- * @param target the target filter to be removed
- * @exception CoreException if unable to remove the target filter
- */
- public void removeTargetFilter( ICDebugTarget target ) throws CoreException;
-
- /**
- * Restricts this breakpoint to suspend only in the given threads
- * when encounterd in the given threads' target.
- * All threads must be from the same target.
- * Thread filters are not persisted across workbench invocations.
- *
- * @param threads the thread filters to be set
- * @exception CoreException if unable to set the thread filters
- */
- public void setThreadFilters( ICThread[] threads ) throws CoreException;
-
- /**
- * Returns all target filters set on this breakpoint.
- *
- * @return the targets that this breakpoint is resticted to
- * @exception CoreException if unable to determine this breakpoint's
- * target filters
- */
- public ICDebugTarget[] getTargetFilters() throws CoreException;
-
- /**
- * Removes this breakpoint's thread filters in the given target, if any.
- * Has no effect if this breakpoint does not have filters in the given target.
- * All threads must be from the same target.
- *
- * @param threads the thread filters to be removed
- * @exception CoreException if unable to remove the thread filter
- */
- public void removeThreadFilters( ICThread[] threads ) throws CoreException;
-
- /**
- * Returns the threads in the given target in which this breakpoint
- * is enabled or <code>null</code> if this breakpoint is enabled in
- * all threads in the given target.
- *
- * @return the threads in the given target that this breakpoint is enabled for
- * @exception CoreException if unable to determine this breakpoint's thread
- * filters
- */
- public ICThread[] getThreadFilters( ICDebugTarget target ) throws CoreException;
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java
deleted file mode 100644
index 9962c47031..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICDebugTarget.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IRegisterGroup;
-
-/**
- * C/C++ extension of <code>IDebugTarget</code>.
- */
-public interface ICDebugTarget extends IDebugTarget,
- IExecFileInfo,
- IRestart,
- IResumeWithoutSignal,
- ICDebugElement,
- ISteppingModeTarget,
- IModuleRetrieval,
- ITargetProperties {
-
- /**
- * Returns whether this target is little endian.
- *
- * @return whether this target is little endian
- */
- @Override
- public boolean isLittleEndian();
-
- /**
- * Returns whether this target supports signals.
- *
- * @return whether this target supports signals
- * @throws DebugException if this method fails.
- */
- public boolean hasSignals() throws DebugException;
-
- /**
- * Returns the list of signals defined for this target.
- *
- * @return the list of signals defined for this target
- * @throws DebugException if this method fails.
- */
- public ICSignal[] getSignals() throws DebugException;
-
- /**
- * Returns the disassembly provider of this debug target.
- *
- * @return the disassembly provider of this debug target
- * @throws DebugException if this method fails.
- */
- public IDisassembly getDisassembly() throws DebugException;
-
- /**
- * Returns whether this target is a post mortem type.
- *
- * @return whether this target is a post mortem type
- */
- public boolean isPostMortem();
-
- /**
- * Returns the list of descriptors of the target registers
- *
- * @return the list register descriptors
- * @throws DebugException if this method fails. Reasons include:
- *
- * @since 3.0
- */
- public IRegisterDescriptor[] getRegisterDescriptors() throws DebugException;
-
- /**
- * Adds a new user-defined register group to this target
- *
- * @param name the group name
- * @param descriptors the list of registers to be grouped
- *
- * @since 3.0
- */
- public void addRegisterGroup( String name, IRegisterDescriptor[] descriptors );
-
- /**
- * Removes the given register group from the target
- *
- * @param group a group to be removed
- *
- * @since 3.0
- */
- public void removeRegisterGroups( IRegisterGroup[] groups );
-
- /**
- * Replace the given group's register descriptors by the specified descriptors.
- *
- * @param group a group to be modified
- * @param descriptors a descriptor array to replace existing descriptors
- *
- * @since 3.0
- */
- public void modifyRegisterGroup( IPersistableRegisterGroup group, IRegisterDescriptor[] descriptors );
-
-
- /**
- * Removes all user-defined register groups and restores the hardware groups.
- *
- * @since 3.0
- */
- public void restoreDefaultRegisterGroups();
-
- /**
- * Returns the target address of the given breakpoint.
- *
- * @return the target address of the given breakpoint
- * @throws DebugException if the address is not available
- */
- public IAddress getBreakpointAddress( ICLineBreakpoint breakpoint ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java
deleted file mode 100644
index 19e9eb06c3..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICGlobalVariable.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2008 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-/**
- * Represents a global C/C++ variable.
- */
-public interface ICGlobalVariable extends ICVariable {
-
- /**
- * Returns the descriptor of this variable. Will be null if a child of a global.
- *
- * @return the descriptor of this variable
- */
- public IGlobalVariableDescriptor getDescriptor();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICRegister.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICRegister.java
deleted file mode 100644
index 4e619d6376..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICRegister.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 ARM Limited 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:
- * ARM Limited - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.model.IRegister;
-
-/**
- * C/C++ specific extension of <code>IRegister</code>.
- * Added to be able to contribute a label provider.
- * See https://bugs.eclipse.org/bugs/show_bug.cgi?id=186981
- */
-public interface ICRegister extends ICVariable, IRegister {
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java
deleted file mode 100644
index cbd92257e8..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/ICVariable.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2007 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValueModification;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * C/C++ specific extension <code>IVariable</code>.
- */
-public interface ICVariable extends IVariable, ICDebugElement, IFormatSupport, ICastToArray, IValueModification, IEnableDisableTarget {
-
- /**
- * Returns the type of this variable.
- *
- * @return the type of this variable
- * @throws DebugException
- */
- ICType getType() throws DebugException;
-
- /**
- * Returns whether this variable is an argument.
- *
- * @return whether this variable is an argument
- */
- boolean isArgument();
-
- /**
- * Returns the text presentation of this variable as an expression.
- *
- * @return the text presentation of this variable as an expression
- * @throws DebugException
- */
- public String getExpressionString() throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IChangeReverseMethodHandler.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IChangeReverseMethodHandler.java
index 5766dea6b0..c24f3ec316 100644
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IChangeReverseMethodHandler.java
+++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IChangeReverseMethodHandler.java
@@ -15,7 +15,7 @@ import org.eclipse.debug.core.commands.IDebugCommandHandler;
/**
* Handler interface for the reverse debug change trace method command
*
- * @since 7.8
+ * @since 8.0
*/
public interface IChangeReverseMethodHandler extends IReverseToggleHandler, IDebugCommandHandler {
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java
deleted file mode 100644
index 290b9e3f85..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/model/IFormatSupport.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.core.model;
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to set and get the format of a variable.
- */
-public interface IFormatSupport {
-
- /**
- * Returns whether this variable supports formatting operations.
- *
- * @return whether this variable supports formatting operations
- */
- boolean supportsFormatting();
-
- /**
- * Returns the current format of this variable.
- *
- * @return the current format of this variable
- */
- CVariableFormat getFormat();
-
- /**
- * Sets the current format of this variable to <code>format</code>.
- *
- * @param format the new format type
- * @throws DebugException if this method fails.
- */
- void changeFormat( CVariableFormat format ) throws DebugException;
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java
deleted file mode 100644
index bdd060f4cb..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CBreakpointManager.java
+++ /dev/null
@@ -1,1542 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2015 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * Matthias Spycher (matthias@coware.com) - patch for bug #112008
- * Ken Ryall (Nokia) - bugs 170027, 105196
- * Ling Wang (Nokia) - bug 176081
- * Freescale Semiconductor - Address watchpoints, https://bugs.eclipse.org/bugs/show_bug.cgi?id=118299
- * QNX Software Systems - catchpoints - bug 226689
- * James Blackburn (Broadcom) - bug 314865
- * Marc Khouzam (Ericsson) - Support for dynamic printf (400628)
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.io.File;
-import java.io.IOException;
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.core.model.ITranslationUnit;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDICondition;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocator;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIBreakpointMovedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIBreakpointProblemEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDICreatedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDestroyedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIExecutableReloadedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIAddressBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpointManagement3;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIEventBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILineBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDILocationBreakpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint2;
-import org.eclipse.cdt.debug.core.model.ICAddressBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpointFilterExtension;
-import org.eclipse.cdt.debug.core.model.ICBreakpointType;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICDynamicPrintf;
-import org.eclipse.cdt.debug.core.model.ICEventBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICFunctionBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICThread;
-import org.eclipse.cdt.debug.core.model.ICTracepoint;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint;
-import org.eclipse.cdt.debug.core.model.ICWatchpoint2;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.internal.core.breakpoints.BreakpointProblems;
-import org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupDirector;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.IBreakpointManagerListener;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.ILineBreakpoint;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage;
-
-public class CBreakpointManager implements IBreakpointsListener, IBreakpointManagerListener, ICDIEventListener, IAdaptable {
-
- static class BreakpointInProgess {
-
- private ICDIBreakpoint fCDIBreakpoint;
-
- void setCDIBreakpoint( ICDIBreakpoint b ) {
- fCDIBreakpoint = b;
- }
-
- ICDIBreakpoint getCDIBreakpoint() {
- return fCDIBreakpoint;
- }
- }
-
- class BreakpointMap {
-
- /**
- * Maps CBreakpoints to CDI breakpoints.
- */
- private HashMap fCBreakpoints;
-
- /**
- * Maps CDI breakpoints to CBreakpoints.
- */
- private HashMap fCDIBreakpoints;
-
- protected BreakpointMap() {
- fCBreakpoints = new HashMap( 10 );
- fCDIBreakpoints = new HashMap( 10 );
- }
-
- void register( ICBreakpoint breakpoint ) {
- fCBreakpoints.put( breakpoint, new BreakpointInProgess() );
- }
-
- void put( ICBreakpoint breakpoint, ICDIBreakpoint cdiBreakpoint ) {
- fCBreakpoints.put( breakpoint, cdiBreakpoint );
- fCDIBreakpoints.put( cdiBreakpoint, breakpoint );
- }
-
- Object get( ICBreakpoint breakpoint ) {
- return fCBreakpoints.get( breakpoint );
- }
-
- ICDIBreakpoint getCDIBreakpoint( ICBreakpoint breakpoint ) {
- Object b = fCBreakpoints.get( breakpoint );
- return ( b instanceof ICDIBreakpoint ) ? (ICDIBreakpoint)b : null;
- }
-
- ICBreakpoint getCBreakpoint( ICDIBreakpoint cdiBreakpoint ) {
- ICBreakpoint breakpoint = (ICBreakpoint)fCDIBreakpoints.get( cdiBreakpoint );
- if ( breakpoint == null ) {
- ICBreakpoint[] bip = getBreakpointsInProgress();
- for ( int i = 0; i < bip.length; ++i ) {
- if ( isSameBreakpoint( bip[i], cdiBreakpoint ) ) {
- breakpoint = bip[i];
- break;
- }
- }
- }
- return breakpoint;
- }
-
- void removeCDIBreakpoint( ICDIBreakpoint cdiBreakpoint ) {
- if ( cdiBreakpoint != null ) {
- ICBreakpoint breakpoint = (ICBreakpoint)fCDIBreakpoints.remove( cdiBreakpoint );
- if ( breakpoint != null )
- fCBreakpoints.remove( breakpoint );
- }
- }
-
- boolean isRegistered( ICBreakpoint breakpoint ) {
- return ( fCBreakpoints.get( breakpoint ) != null );
- }
-
- boolean isInProgress( ICBreakpoint breakpoint ) {
- return ( fCBreakpoints.get( breakpoint ) instanceof BreakpointInProgess );
- }
-
- ICBreakpoint[] getAllCBreakpoints() {
- Set set = fCBreakpoints.keySet();
- return (ICBreakpoint[])set.toArray( new ICBreakpoint[set.size()] );
- }
-
- void dispose() {
- fCBreakpoints.clear();
- fCDIBreakpoints.clear();
- }
-
- private ICBreakpoint[] getBreakpointsInProgress() {
- ArrayList list = new ArrayList();
- Set set = fCBreakpoints.entrySet();
- Iterator it = set.iterator();
- while ( it.hasNext() ) {
- Map.Entry entry = (Map.Entry)it.next();
- if ( entry.getValue() instanceof BreakpointInProgess ) {
- list.add( entry.getKey() );
- }
- }
- return (ICBreakpoint[])list.toArray( new ICBreakpoint[list.size()] );
- }
-
- private boolean isSameBreakpoint( ICBreakpoint breakpoint, ICDIBreakpoint cdiBreakpoint ) {
- try {
- if ( breakpoint instanceof ICFunctionBreakpoint && cdiBreakpoint instanceof ICDIFunctionBreakpoint ) {
- return ( ((ICFunctionBreakpoint)breakpoint).getFunction().compareTo( ((ICDIFunctionBreakpoint)cdiBreakpoint).getLocator().getFunction() ) == 0 );
- }
- if ( breakpoint instanceof ICAddressBreakpoint && cdiBreakpoint instanceof ICDIAddressBreakpoint ) {
- IAddressFactory factory = getDebugTarget().getAddressFactory();
- return factory.createAddress( ((ICAddressBreakpoint)breakpoint).getAddress() ).equals( factory.createAddress( ((ICDIAddressBreakpoint)cdiBreakpoint).getLocator().getAddress() ) );
- }
- if ( breakpoint instanceof ICLineBreakpoint && cdiBreakpoint instanceof ICDILineBreakpoint ) {
- ICDILocator location = ((ICDILineBreakpoint)cdiBreakpoint).getLocator();
- String file = location.getFile();
- String sourceHandle = file;
- if ( !isEmpty( file ) ) {
- Object sourceElement = getSourceElement( file );
- if ( sourceElement instanceof IFile ) {
- sourceHandle = ((IFile)sourceElement).getLocation().toOSString();
- }
- else if ( sourceElement instanceof IStorage ) {
- sourceHandle = ((IStorage)sourceElement).getFullPath().toOSString();
- }
- else if ( sourceElement instanceof ITranslationUnit ) {
- sourceHandle = ((ITranslationUnit)sourceElement).getLocation().toOSString();
- }
- String bpSourceHandle = ((ICLineBreakpoint)breakpoint).getSourceHandle();
- if ( sourceElement instanceof LocalFileStorage ) { // see bug #112008
- try {
- bpSourceHandle = new File( bpSourceHandle ).getCanonicalPath();
- }
- catch( IOException e ) {
- }
- }
- return sourceHandle.equals( bpSourceHandle ) && location.getLineNumber() == ((ICLineBreakpoint)breakpoint).getLineNumber();
- }
- }
- if ( breakpoint instanceof ICWatchpoint && cdiBreakpoint instanceof ICDIWatchpoint ) {
- try {
- ICWatchpoint watchpoint = (ICWatchpoint)breakpoint;
- if ( watchpoint instanceof ICWatchpoint2 && cdiBreakpoint instanceof ICDIWatchpoint2 ) {
- ICWatchpoint2 wp2 = (ICWatchpoint2)breakpoint;
- ICDIWatchpoint2 cdiwp2 = (ICDIWatchpoint2)cdiBreakpoint;
- if ( !wp2.getMemorySpace().equals( cdiwp2.getMemorySpace() )
- || !wp2.getRange().equals( cdiwp2.getRange() ) ) {
- return false;
- }
- }
- ICDIWatchpoint cdiWatchpoint = (ICDIWatchpoint)cdiBreakpoint;
- return ( watchpoint.getExpression().compareTo( cdiWatchpoint.getWatchExpression() ) == 0 &&
- watchpoint.isReadType() == cdiWatchpoint.isReadType() &&
- watchpoint.isWriteType() == cdiWatchpoint.isWriteType() );
- }
- catch( CDIException e ) {
- }
- }
- if ( breakpoint instanceof ICEventBreakpoint && cdiBreakpoint instanceof ICDIEventBreakpoint) {
- ICEventBreakpoint mevtbkpt = (ICEventBreakpoint) breakpoint;
- ICDIEventBreakpoint cdievtbkpt = (ICDIEventBreakpoint) cdiBreakpoint;
- if (!mevtbkpt.getEventType().equals(cdievtbkpt.getEventType())) return false;
- return (mevtbkpt.getEventArgument().equals(cdievtbkpt.getExtraArgument()));
- }
- }
- catch( CoreException e ) {
- }
- return false;
- }
- }
-
- private CDebugTarget fDebugTarget;
-
- private BreakpointMap fMap;
-
- private boolean fSkipBreakpoint = false;
-
- private ArrayList fBreakpointProblems = new ArrayList();
-
- public CBreakpointManager( CDebugTarget target ) {
- super();
- fDebugTarget = target;
- fMap = new BreakpointMap();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsAdded(org.eclipse.debug.core.model.IBreakpoint[])
- */
- @Override
- public void breakpointsAdded( IBreakpoint[] breakpoints ) {
- if ( !isTargetAvailable() )
- return;
- setBreakpointsOnTarget( breakpoints );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsRemoved(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
- */
- @Override
- public void breakpointsRemoved( IBreakpoint[] breakpoints, IMarkerDelta[] deltas ) {
- if ( !isTargetAvailable() )
- return;
- ArrayList list = new ArrayList( breakpoints.length );
- synchronized( getBreakpointMap() ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof ICBreakpoint ) {
- try { // Remove any problem markers for this breakpoint
- BreakpointProblems.removeProblemsForBreakpoint((ICBreakpoint)breakpoints[i]);
- } catch (CoreException e) {}
- Object obj = getBreakpointMap().get( (ICBreakpoint)breakpoints[i] );
- ICDIBreakpoint b = null;
- if ( obj instanceof ICDIBreakpoint ) {
- b = (ICDIBreakpoint)obj;
- }
- else if ( obj instanceof BreakpointInProgess ) {
- b = ((BreakpointInProgess)obj).getCDIBreakpoint();
- }
- if ( b != null ) {
- list.add( b );
- }
- }
- }
- }
- if ( list.isEmpty() )
- return;
- final ICDIBreakpoint[] cdiBreakpoints = (ICDIBreakpoint[])list.toArray( new ICDIBreakpoint[list.size()] );
- final ICDITarget cdiTarget = getCDITarget();
- DebugPlugin.getDefault().asyncExec( new Runnable() {
- @Override
- public void run() {
- try {
- cdiTarget.deleteBreakpoints( cdiBreakpoints );
- }
- catch( CDIException e ) {
- }
- }
- } );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsChanged(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
- */
- @Override
- public void breakpointsChanged( IBreakpoint[] breakpoints, IMarkerDelta[] deltas ) {
- ArrayList removeList = new ArrayList( breakpoints.length );
- ArrayList installList = new ArrayList( breakpoints.length );
- synchronized ( getBreakpointMap() ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( !(breakpoints[i] instanceof ICBreakpoint) || !isTargetAvailable() )
- continue;
- ICBreakpoint b = (ICBreakpoint)breakpoints[i];
- boolean install = false;
- try {
- ICDebugTarget[] tfs = getFilterExtension(b).getTargetFilters();
- install = Arrays.asList( tfs ).contains( getDebugTarget() );
- }
- catch( CoreException e ) {
- }
- boolean registered = getBreakpointMap().isRegistered( b );
- boolean inProgress = getBreakpointMap().isInProgress( b );
- if ( registered && !inProgress && !install ) {
- removeList.add( b );
- }
- if ( !registered && install ) {
- installList.add( b );
- }
- }
- }
- breakpointsRemoved( (ICBreakpoint[])removeList.toArray( new ICBreakpoint[removeList.size()] ), new IMarkerDelta[0] );
- breakpointsAdded( (ICBreakpoint[])installList.toArray( new ICBreakpoint[removeList.size()] ) );
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof ICBreakpoint && isTargetAvailable() )
- changeBreakpointProperties( (ICBreakpoint)breakpoints[i], deltas[i] );
- }
- }
-
- @Override
- public void breakpointManagerEnablementChanged( boolean enabled ) {
- doSkipBreakpoints( !enabled );
- }
-
- @Override
- public void handleDebugEvents( ICDIEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- ICDIEvent event = events[i];
- ICDIObject source = event.getSource();
- if ( source != null && source.getTarget().equals( getDebugTarget().getCDITarget() ) ) {
- if ( event instanceof ICDICreatedEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointCreatedEvent( (ICDIBreakpoint)source );
- }
- else if ( event instanceof ICDIDestroyedEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointDestroyedEvent( (ICDIBreakpoint)source );
- }
- else if ( event instanceof ICDIChangedEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointChangedEvent( (ICDIBreakpoint)source );
- }
- else if ( event instanceof ICDIBreakpointMovedEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointMovedEvent( (ICDIBreakpointMovedEvent) event );
- }
- else if ( event instanceof ICDIExecutableReloadedEvent ) {
- if ( source instanceof ICDITarget )
- handleExecutableReloadedEvent( (ICDIExecutableReloadedEvent) event );
- }
- else if ( event instanceof ICDIBreakpointProblemEvent ) {
- if ( source instanceof ICDIBreakpoint )
- handleBreakpointProblemEvent( (ICDIBreakpointProblemEvent) event );
- }
- }
- }
- }
-
- @Override
- public Object getAdapter( Class adapter ) {
- if ( CBreakpointManager.class.equals( adapter ) )
- return this;
- if ( CDebugTarget.class.equals( adapter ) )
- return getDebugTarget();
- if ( ICDebugTarget.class.equals( adapter ) )
- return getDebugTarget();
- if ( IDebugTarget.class.equals( adapter ) )
- return getDebugTarget();
- return null;
- }
-
- public CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- public void initialize() {
- DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener( this );
- DebugPlugin.getDefault().getBreakpointManager().addBreakpointManagerListener( this );
- getDebugTarget().getCDISession().getEventManager().addEventListener( this );
- }
-
- public void dispose() {
- getDebugTarget().getCDISession().getEventManager().removeEventListener( this );
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpointListener( this );
- DebugPlugin.getDefault().getBreakpointManager().removeBreakpointManagerListener( this );
- removeAllBreakpoints();
- getBreakpointMap().dispose();
- }
-
- public IAddress getBreakpointAddress( ICLineBreakpoint breakpoint ) {
- BigInteger address = null;
- synchronized ( getBreakpointMap() ) {
- ICDIBreakpoint cdiBreakpoint = getBreakpointMap().getCDIBreakpoint( breakpoint );
- if ( cdiBreakpoint instanceof ICDILocationBreakpoint ) {
- ICDILocator locator = ((ICDILocationBreakpoint)cdiBreakpoint).getLocator();
- if ( locator != null ) {
- address = locator.getAddress();
- }
- }
- }
- return ( address != null ) ? getDebugTarget().getAddressFactory().createAddress( address ) : null;
- }
-
- public IBreakpoint getBreakpoint( ICDIBreakpoint cdiBreakpoint ) {
- ICBreakpoint b;
- synchronized ( getBreakpointMap() ) {
- b = getBreakpointMap().getCBreakpoint( cdiBreakpoint );
- }
- return b;
- }
-
- /**
- * @return true if the breakpoint is of a temporary type, otherwise false
- */
- private boolean isTemporary(ICDIBreakpoint cdiBreakpoint) {
- if (cdiBreakpoint instanceof ICDIBreakpoint2) {
- return (((ICDIBreakpoint2)cdiBreakpoint).getType() & ICBreakpointType.TEMPORARY) != 0;
- }
- else {
- return cdiBreakpoint.isTemporary();
- }
- }
-
- private void handleBreakpointCreatedEvent( ICDIBreakpoint cdiBreakpoint ) {
- if ( cdiBreakpoint instanceof ICDIWatchpoint )
- doHandleWatchpointCreatedEvent( (ICDIWatchpoint)cdiBreakpoint );
- if ( cdiBreakpoint instanceof ICDIEventBreakpoint )
- doHandleEventBreakpointCreatedEvent( (ICDIEventBreakpoint)cdiBreakpoint );
- else if ( cdiBreakpoint instanceof ICDILocationBreakpoint )
- doHandleLocationBreakpointCreatedEvent( (ICDILocationBreakpoint)cdiBreakpoint );
- try {
- if ( !isTemporary(cdiBreakpoint) && !DebugPlugin.getDefault().getBreakpointManager().isEnabled() && cdiBreakpoint.isEnabled() ) {
- changeBreakpointPropertiesOnTarget(cdiBreakpoint, false, null);
- }
- } catch (CDIException e){
- }
- }
-
- private void doHandleEventBreakpointCreatedEvent(ICDIEventBreakpoint cdiEventBkpt) {
- ICBreakpoint breakpoint = null;
- ICBreakpoint newBreakpoint = null;
- boolean createNewCBkpt = false;
- final BreakpointMap bkptMap = getBreakpointMap();
-
- synchronized( bkptMap ) {
- createNewCBkpt = (bkptMap.getCBreakpoint( cdiEventBkpt ) == null);
- }
-
- // This has to be done outside the breakpoint map lock, or a deadlock
- // can occur (according to rev 1.71). Not certain we'll use this new CDT
- // breakpoint; we need to check the map again.
- if (createNewCBkpt) {
- try {
- newBreakpoint = createEventBreakpoint( cdiEventBkpt );
- }
- catch( CDIException e ) {}
- catch( CoreException e ) {}
- }
-
- synchronized( bkptMap ) {
- breakpoint = bkptMap.getCBreakpoint( cdiEventBkpt );
- if ( breakpoint == null ) {
- breakpoint = newBreakpoint;
- }
-
- if ( breakpoint != null ) {
- // filter must be set up prior to adding the breakpoint to the
- // map to avoid a race condition in breakpointsChanged for the
- // "registered && !inProgress && !install" condition
- try {
- getFilterExtension(breakpoint).setTargetFilter( getDebugTarget() );
- }
- catch( CoreException e ) {}
-
- bkptMap.put( breakpoint, cdiEventBkpt );
- }
- }
-
- // Delete the new CDT breakpoint if we didn't end up using it
- if (newBreakpoint != null && newBreakpoint != breakpoint) {
- try {
- newBreakpoint.delete();
- } catch (CoreException e) {}
- }
-
- if ( breakpoint != null ) {
- try {
- ((CBreakpoint)breakpoint).register( true );
- }
- catch( CoreException e ) {
- }
- getBreakpointNotifier().breakpointInstalled( getDebugTarget(), breakpoint );
- changeBreakpointProperties( breakpoint, cdiEventBkpt );
- }
-
- }
-
- private void doHandleLocationBreakpointCreatedEvent( ICDILocationBreakpoint cdiBreakpoint ) {
- if ( isTemporary(cdiBreakpoint) )
- return;
- ICBreakpoint breakpoint = null;
- ICBreakpoint newBreakpoint = null;
- final BreakpointMap bkptMap = getBreakpointMap();
- boolean createNewCBkpt = false;
- synchronized( bkptMap ) {
- createNewCBkpt = (bkptMap.getCBreakpoint( cdiBreakpoint ) == null);
- }
-
- // This has to be done outside the breakpoint map lock, or a deadlock
- // can occur (according to rev 1.71). Not certain we'll use this new CDT
- // breakpoint; we need to check the map again.
- if ( createNewCBkpt ) {
- newBreakpoint = createLocationBreakpoint( cdiBreakpoint );
- }
-
- synchronized( bkptMap ) {
- breakpoint = bkptMap.getCBreakpoint( cdiBreakpoint );
- if ( breakpoint == null ) {
- breakpoint = newBreakpoint;
- }
-
- if ( breakpoint != null ) {
- // filter must be set up prior to adding the breakpoint to the
- // map to avoid a race condition in breakpointsChanged for the
- // "registered && !inProgress && !install" condition
- try {
- getFilterExtension(breakpoint).setTargetFilter( getDebugTarget() );
- }
- catch( CoreException e ) {}
-
- bkptMap.put( breakpoint, cdiBreakpoint );
- }
- }
-
- // Delete the new CDT breakpoint if we didn't end up using it
- if (newBreakpoint != null && newBreakpoint != breakpoint) {
- try {
- newBreakpoint.delete();
- } catch (CoreException e) {}
- }
-
- if ( breakpoint != null ) {
- try {
- BreakpointProblems.removeProblemsForResolvedBreakpoint(breakpoint, getDebugTarget().getInternalID());
- ((CBreakpoint)breakpoint).register( true );
- }
- catch( CoreException e ) {
- }
- getBreakpointNotifier().breakpointInstalled( getDebugTarget(), breakpoint );
- changeBreakpointProperties( breakpoint, cdiBreakpoint );
- }
- }
-
- private void doHandleWatchpointCreatedEvent( ICDIWatchpoint cdiWatchpoint ) {
- ICBreakpoint breakpoint = null;
- ICBreakpoint newBreakpoint = null;
- boolean createNewCBkpt = false;
- final BreakpointMap bkptMap = getBreakpointMap();
-
- synchronized( bkptMap ) {
- createNewCBkpt = (bkptMap.getCBreakpoint( cdiWatchpoint ) == null);
- }
-
- // This has to be done outside the breakpoint map lock, or a deadlock
- // can occur (according to rev 1.71). Not certain we'll use this new CDT
- // breakpoint; we need to check the map again.
- if (createNewCBkpt) {
- try {
- newBreakpoint = createWatchpoint( cdiWatchpoint );
- }
- catch( CDIException e ) {}
- catch( CoreException e ) {}
- }
-
- synchronized( bkptMap ) {
- breakpoint = bkptMap.getCBreakpoint( cdiWatchpoint );
- if ( breakpoint == null ) {
- breakpoint = newBreakpoint;
- }
-
- if ( breakpoint != null ) {
- // filter must be set up prior to adding the breakpoint to the
- // map to avoid a race condition in breakpointsChanged for the
- // "registered && !inProgress && !install" condition
- try {
- getFilterExtension(breakpoint).setTargetFilter( getDebugTarget() );
- }
- catch( CoreException e ) {}
-
- bkptMap.put( breakpoint, cdiWatchpoint );
- }
- }
-
- // Delete the new CDT breakpoint if we didn't end up using it
- if (newBreakpoint != null && newBreakpoint != breakpoint) {
- try {
- newBreakpoint.delete();
- } catch (CoreException e) {}
- }
-
-
- if ( breakpoint != null ) {
- try {
- ((CBreakpoint)breakpoint).register( true );
- }
- catch( CoreException e ) {
- }
- getBreakpointNotifier().breakpointInstalled( getDebugTarget(), breakpoint );
- changeBreakpointProperties( breakpoint, cdiWatchpoint );
- }
- }
-
- private void handleBreakpointMovedEvent( ICDIBreakpointMovedEvent movedEvent )
- {
- ICBreakpoint breakpoint = getBreakpointMap().getCBreakpoint( (ICDIBreakpoint) movedEvent.getSource() );
- if (breakpoint != null)
- {
- try {
- int newLineNumber = movedEvent.getNewLocation().getLineNumber();
- int currLineNumber = breakpoint.getMarker().getAttribute(IMarker.LINE_NUMBER, newLineNumber);
- breakpoint.getMarker().setAttribute(IMarker.LINE_NUMBER, newLineNumber);
- IMarker marker = BreakpointProblems.reportBreakpointMoved(
- breakpoint, currLineNumber, newLineNumber, getDebugTarget().getName(), getDebugTarget().getInternalID());
- if (marker != null)
- fBreakpointProblems.add(marker);
- } catch (CoreException e) {}
- }
-
- }
-
- private void handleExecutableReloadedEvent( ICDIExecutableReloadedEvent reloadedEvent )
- {
- ArrayList uninstalledCBplist = new ArrayList();
-
- IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();
- IBreakpoint[] breakpoints = manager.getBreakpoints( CDIDebugModel.getPluginIdentifier() );
-
- for (int i = 0; i < breakpoints.length; i++) {
- if (breakpoints[i] instanceof ICBreakpoint && (getBreakpointMap().getCDIBreakpoint((ICBreakpoint) breakpoints[i]) == null))
- {
- uninstalledCBplist.add(breakpoints[i]);
- }
- }
-
- setBreakpointsOnTarget((IBreakpoint[]) uninstalledCBplist.toArray(new IBreakpoint[uninstalledCBplist.size()]));
- }
-
- private void handleBreakpointProblemEvent( ICDIBreakpointProblemEvent problemEvent )
- {
- ICBreakpoint breakpoint = getBreakpointMap().getCBreakpoint( problemEvent.getBreakpoint() );
- if (breakpoint != null)
- {
- try {
- IMarker marker;
- marker = BreakpointProblems.reportBreakpointProblem(breakpoint, problemEvent.getDescription(),
- problemEvent.getSeverity(), problemEvent.getProblemType(), problemEvent.removeExisting(),
- problemEvent.removeOnly(), getDebugTarget().getName(), getDebugTarget().getInternalID());
- if (marker != null)
- fBreakpointProblems.add(marker);
- } catch (DebugException e) {}
- }
-
- }
-
- private void handleBreakpointChangedEvent( ICDIBreakpoint cdiBreakpoint ) {
- ICBreakpoint breakpoint = getBreakpointMap().getCBreakpoint( cdiBreakpoint );
- if ( breakpoint != null ) {
- Map map = new HashMap( 3 );
- try {
- if ( !fSkipBreakpoint && DebugPlugin.getDefault().getBreakpointManager().isEnabled() ) {
- map.put( IBreakpoint.ENABLED, Boolean.valueOf( cdiBreakpoint.isEnabled() ) );
- }
- else {
- map.put( IBreakpoint.ENABLED, Boolean.valueOf( breakpoint.isEnabled() ) );
- }
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- try {
- map.put( ICBreakpoint.IGNORE_COUNT, new Integer( cdiBreakpoint.getCondition().getIgnoreCount() ) );
- }
- catch( CDIException e ) {
- }
- try {
- map.put( ICBreakpoint.CONDITION, cdiBreakpoint.getCondition().getExpression() );
- }
- catch( CDIException e ) {
- }
- getBreakpointNotifier().breakpointChanged( getDebugTarget(), breakpoint, map );
- }
- }
-
- private void handleBreakpointDestroyedEvent( ICDIBreakpoint cdiBreakpoint ) {
- ICBreakpoint breakpoint = null;
- synchronized( getBreakpointMap() ) {
- breakpoint = getBreakpointMap().getCBreakpoint( cdiBreakpoint );
- getBreakpointMap().removeCDIBreakpoint( cdiBreakpoint );
- }
- if ( breakpoint != null ) {
- if ( isFilteredByTarget( breakpoint, getDebugTarget() ) ) {
- try {
- getFilterExtension(breakpoint).removeTargetFilter( getDebugTarget() );
- }
- catch( CoreException e ) {
- }
- }
- try {
- BreakpointProblems.removeProblemsForBreakpoint(breakpoint);
- } catch (CoreException e) {}
- getBreakpointNotifier().breakpointsRemoved( getDebugTarget(), new IBreakpoint[] { breakpoint } );
- }
- }
-
- private BreakpointMap getBreakpointMap() {
- return fMap;
- }
-
- private void removeAllBreakpoints() {
- // Remove all breakpoint problem markers
- for (Iterator iter = fBreakpointProblems.iterator(); iter.hasNext();) {
- IMarker marker = (IMarker) iter.next();
- try {
- marker.delete();
- } catch (CoreException e) {}
- }
-
- ArrayList installedCDIBplist = new ArrayList();
- ArrayList installedCBplist = new ArrayList();
- ICBreakpoint[] breakpoints;
- synchronized( getBreakpointMap() ) {
- breakpoints = getBreakpointMap().getAllCBreakpoints();
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( !getBreakpointMap().isInProgress( breakpoints[i] ) ) {
- installedCDIBplist.add( getBreakpointMap().getCDIBreakpoint( breakpoints[i] ) );
-
- installedCBplist.add(breakpoints[i]);
- }
- }
- }
- if ( installedCDIBplist.isEmpty() )
- return;
-
- final ICDIBreakpoint[] cdiBreakpoints = (ICDIBreakpoint[])installedCDIBplist.toArray( new ICDIBreakpoint[installedCDIBplist.size()] );
- final ICDITarget cdiTarget = getCDITarget();
-
- // Clean up the target filter to avoid that the CDebugTarget remains referenced by the breakpoint.
- // Note that though we're "removing" breakpoints from a debug session, the breakpoint objects in the
- // platform aren't going anywhere. They are "global" model elements. They go away only when the user
- // deletes them.
- CDebugTarget target = getDebugTarget();
- for (Iterator iter = installedCBplist.iterator(); iter.hasNext();) {
- ICBreakpoint breakpoint = (ICBreakpoint) iter.next();
- if ( isFilteredByTarget( breakpoint, target ) ) {
- try {
- getFilterExtension(breakpoint).removeTargetFilter( target );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e.getStatus() );
- }
- }
- }
-
- DebugPlugin.getDefault().asyncExec( new Runnable() {
- @Override
- public void run() {
- try {
- cdiTarget.deleteBreakpoints( cdiBreakpoints );
- }
- catch( CDIException e ) {
- }
- }
- } );
-
- getBreakpointNotifier().breakpointsRemoved( getDebugTarget(), (ICBreakpoint[])installedCBplist.toArray( new ICBreakpoint[installedCBplist.size()] ) );
- }
-
- private ICBreakpoint[] register( IBreakpoint[] breakpoints ) {
- ArrayList list = new ArrayList( breakpoints.length );
- synchronized ( getBreakpointMap() ) {
- for ( int i = 0; i < breakpoints.length; ++i ) {
- if ( breakpoints[i] instanceof ICBreakpoint && isTargetBreakpoint( (ICBreakpoint)breakpoints[i] ) && !(getBreakpointMap().isRegistered( (ICBreakpoint)breakpoints[i] )) ) {
- getBreakpointMap().register( (ICBreakpoint)breakpoints[i] );
- list.add( breakpoints[i] );
- }
- }
- }
- return (ICBreakpoint[])list.toArray( new ICBreakpoint[list.size()] );
- }
-
- private void setBreakpointsOnTarget( IBreakpoint[] breakpoints ) {
- final ICBreakpoint[] bkpts = register( breakpoints );
- if ( bkpts.length > 0 ) {
- DebugPlugin.getDefault().asyncExec( new Runnable() {
- @Override
- public void run() {
- setBreakpointsOnTarget0( bkpts );
- }
- } );
- }
- }
-
- protected void setBreakpointsOnTarget0( ICBreakpoint[] breakpoints ) {
- ICDITarget cdiTarget = getCDITarget();
- ICDIBreakpointManagement2 bpManager2 = null;
- if (cdiTarget instanceof ICDIBreakpointManagement2)
- bpManager2 = (ICDIBreakpointManagement2) cdiTarget;
- for ( int i = 0; i < breakpoints.length; ++i ) {
- try {
- ICDIBreakpoint b = null;
- int breakpointType = ICBreakpointType.REGULAR;
- ICBreakpoint icbreakpoint = breakpoints[i];
- // Bug 314865: CDI breakpoint is only created enabled if the global breakpoint disable toggle isn't set
- boolean enabled = icbreakpoint.isEnabled() && DebugPlugin.getDefault().getBreakpointManager().isEnabled();
- if (icbreakpoint instanceof ICBreakpointType) {
- breakpointType = ((ICBreakpointType) icbreakpoint).getType();
- }
- if ( icbreakpoint instanceof ICTracepoint) {
- ICTracepoint tracepoint = (ICTracepoint)icbreakpoint;
- IMarker marker = BreakpointProblems.reportUnsupportedTracepoint(tracepoint, getDebugTarget().getName(), getDebugTarget().getInternalID());
- if (marker != null)
- fBreakpointProblems.add(marker);
- } else if ( icbreakpoint instanceof ICDynamicPrintf) {
- ICDynamicPrintf dprintf = (ICDynamicPrintf)icbreakpoint;
- IMarker marker = BreakpointProblems.reportUnsupportedDynamicPrintf(dprintf, getDebugTarget().getName(), getDebugTarget().getInternalID());
- if (marker != null)
- fBreakpointProblems.add(marker);
- }
- else if ( icbreakpoint instanceof ICFunctionBreakpoint ) {
- ICFunctionBreakpoint breakpoint = (ICFunctionBreakpoint)icbreakpoint;
- String function = breakpoint.getFunction();
- String fileName = breakpoint.getFileName();
- ICDIFunctionLocation location = cdiTarget.createFunctionLocation( fileName, function );
- ICDICondition condition = createCondition( breakpoint );
- IMarker marker = BreakpointProblems.reportUnresolvedBreakpoint(breakpoint, getDebugTarget().getName(), getDebugTarget().getInternalID());
- if (marker != null)
- fBreakpointProblems.add(marker);
- if (bpManager2 != null)
- b = bpManager2.setFunctionBreakpoint( breakpointType, location, condition, true, enabled );
- else
- b = cdiTarget.setFunctionBreakpoint( breakpointType, location, condition, true );
- } else if ( icbreakpoint instanceof ICAddressBreakpoint ) {
- ICAddressBreakpoint breakpoint = (ICAddressBreakpoint)icbreakpoint;
- String address = breakpoint.getAddress();
- ICDIAddressLocation location = cdiTarget.createAddressLocation( new BigInteger ( ( address.startsWith( "0x" ) ) ? address.substring( 2 ) : address, 16 ) ); //$NON-NLS-1$
- ICDICondition condition = createCondition( breakpoint );
- if (bpManager2 != null)
- b = bpManager2.setAddressBreakpoint( breakpointType, location, condition, true, enabled );
- else
- b = cdiTarget.setAddressBreakpoint( breakpointType, location, condition, true );
- } else if ( icbreakpoint instanceof ICLineBreakpoint ) {
- ICLineBreakpoint breakpoint = (ICLineBreakpoint)icbreakpoint;
- String handle = breakpoint.getSourceHandle();
- IPath path = convertPath( handle );
- ICDILineLocation location = cdiTarget.createLineLocation( path.toPortableString(), breakpoint.getLineNumber() );
- ICDICondition condition = createCondition( breakpoint );
- IMarker marker = BreakpointProblems.reportUnresolvedBreakpoint(breakpoint, getDebugTarget().getName(), getDebugTarget().getInternalID());
- if (marker != null)
- fBreakpointProblems.add(marker);
- if (bpManager2 != null)
- b = bpManager2.setLineBreakpoint( breakpointType, location, condition, true, enabled );
- else
- b = cdiTarget.setLineBreakpoint( breakpointType, location, condition, true );
- } else if ( icbreakpoint instanceof ICWatchpoint ) {
- ICWatchpoint watchpoint = (ICWatchpoint)icbreakpoint;
- int accessType = 0;
- accessType |= (watchpoint.isWriteType()) ? ICDIWatchpoint.WRITE : 0;
- accessType |= (watchpoint.isReadType()) ? ICDIWatchpoint.READ : 0;
- String expression = watchpoint.getExpression();
- ICDICondition condition = createCondition( watchpoint );
- if ( bpManager2 != null ) {
- if ( icbreakpoint instanceof ICWatchpoint2 ) {
- ICWatchpoint2 wp2 = (ICWatchpoint2)watchpoint;
- b = bpManager2.setWatchpoint( breakpointType, accessType, expression, wp2.getMemorySpace(),
- wp2.getRange(), condition, enabled );
- } else {
- b = bpManager2.setWatchpoint( breakpointType, accessType, expression, condition, enabled );
- }
- } else {
- b = cdiTarget.setWatchpoint(breakpointType, accessType, expression, condition );
- }
- } else if (icbreakpoint instanceof ICEventBreakpoint) {
- ICEventBreakpoint eventbkpt = (ICEventBreakpoint) icbreakpoint;
- ICDICondition condition = createCondition(eventbkpt);
- if (cdiTarget instanceof ICDIBreakpointManagement3) {
- ICDIBreakpointManagement3 bpManager3 = (ICDIBreakpointManagement3) cdiTarget;
- b = bpManager3.setEventBreakpoint(eventbkpt.getEventType(), eventbkpt
- .getEventArgument(), breakpointType, condition, true, enabled);
- } else {
- throw new UnsupportedOperationException("BreakpointManager does not support this type of breapoints");
- }
-
- }
- if ( b != null ) {
- Object obj = getBreakpointMap().get( icbreakpoint );
- if ( obj instanceof BreakpointInProgess ) {
- ((BreakpointInProgess)obj).setCDIBreakpoint( b );
- }
- }
- // Hack: see bug 105196: [CDI]: Add "enabled" flag to the "set...Breakpoint" methods
- if (bpManager2 == null && b != null && b.isEnabled() != enabled ) {
- b.setEnabled( enabled );
- }
- }
- catch( CoreException e ) {
- }
- catch( NumberFormatException e ) {
- }
- catch( CDIException e ) {
- }
- }
- }
-
- protected ICDITarget getCDITarget() {
- return getDebugTarget().getCDITarget();
- }
-
- private ICDICondition createCondition( ICBreakpoint breakpoint ) throws CoreException, CDIException {
- return getCDITarget().createCondition( breakpoint.getIgnoreCount(), breakpoint.getCondition(), getThreadNames( breakpoint ) );
- }
-
- private String[] getThreadNames( ICBreakpoint breakpoint ) {
- try {
- ICThread[] threads = getFilterExtension(breakpoint).getThreadFilters( getDebugTarget() );
- if ( threads == null )
- return new String[0];
- String[] names = new String[threads.length];
- for ( int i = 0; i < threads.length; ++i ) {
- names[i] = threads[i].getName();
- }
- return names;
- }
- catch( DebugException e ) {
- }
- catch( CoreException e ) {
- }
- return new String[0];
- }
-
- private ICLineBreakpoint createLocationBreakpoint( ICDILocationBreakpoint cdiBreakpoint ) {
- ICLineBreakpoint breakpoint = null;
- try {
- ICDILocator location = cdiBreakpoint.getLocator();
- String file = location.getFile();
- String sourceHandle = file;
- IResource resource = getProject();
- if (file != null && file.length() > 0) {
- Object sourceElement = getSourceElement(file);
- if ( sourceElement instanceof IFile ) {
- sourceHandle = ((IFile)sourceElement).getLocation().toOSString();
- resource = (IResource)sourceElement;
- }
- else if ( sourceElement instanceof IStorage ) {
- sourceHandle = ((IStorage)sourceElement).getFullPath().toOSString();
- resource = ResourcesPlugin.getWorkspace().getRoot();
- }
- else if ( sourceElement instanceof ITranslationUnit ) {
- ITranslationUnit translationUnit = (ITranslationUnit)sourceElement;
- sourceHandle = translationUnit.getPath().toString();
- resource = translationUnit.getResource();
-
- // an IExternalTranslationUnit doesn't have an IResource
- if (resource == null) {
- resource = getProject();
- }
- }
- } else {
- sourceHandle = getExecFileHandle();
- }
- if ( cdiBreakpoint instanceof ICDILineBreakpoint ) {
- breakpoint = createLineBreakpoint( sourceHandle, resource, cdiBreakpoint );
- }
- else if ( cdiBreakpoint instanceof ICDIFunctionBreakpoint ) {
- breakpoint = createFunctionBreakpoint( sourceHandle, resource,cdiBreakpoint );
- }
- else if ( cdiBreakpoint instanceof ICDIAddressBreakpoint ) {
- breakpoint = createAddressBreakpoint( sourceHandle, resource,cdiBreakpoint );
- }
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- return breakpoint;
- }
-
- private ICLineBreakpoint createLineBreakpoint( String sourceHandle, IResource resource, ICDILocationBreakpoint cdiBreakpoint ) throws CDIException, CoreException {
- ICLineBreakpoint breakpoint = CDIDebugModel.createLineBreakpoint( sourceHandle,
- resource,
- getCdiBreakpointType(cdiBreakpoint),
- cdiBreakpoint.getLocator().getLineNumber(),
- cdiBreakpoint.isEnabled(),
- cdiBreakpoint.getCondition().getIgnoreCount(),
- cdiBreakpoint.getCondition().getExpression(),
- false );
-// ICDILocator locator = cdiBreakpoint.getLocator();
-// if ( locator != null ) {
-// BigInteger address = locator.getAddress();
-// if ( address != null ) {
-// breakpoint.setAddress( address.toString() );
-// }
-// }
- return breakpoint;
- }
-
- /**
- * Utility method that queries the CDI client for the breakpoint type.
- *
- * @param cdiBreakpoint
- * the CDI breakpoint
- * @return an ICDIBreakpointType constant
- */
- @SuppressWarnings("deprecation")
- private int getCdiBreakpointType(ICDIBreakpoint cdiBreakpoint) {
- if (cdiBreakpoint instanceof ICDIBreakpoint2) {
- // the new way
- return ((ICDIBreakpoint2)cdiBreakpoint).getType();
- }
- else {
- // the old way
- int type = cdiBreakpoint.isHardware() ? ICBreakpointType.HARDWARE : ICBreakpointType.REGULAR;
- if (cdiBreakpoint.isTemporary()) {
- type |= ICBreakpointType.TEMPORARY;
- }
- return type;
- }
- }
-
- private ICFunctionBreakpoint createFunctionBreakpoint( String sourceHandle, IResource resource, ICDILocationBreakpoint cdiBreakpoint ) throws CDIException, CoreException {
- ICDILocator location = cdiBreakpoint.getLocator();
- int line = location.getLineNumber();
- ICFunctionBreakpoint breakpoint = CDIDebugModel.createFunctionBreakpoint(
- sourceHandle,
- resource,
- getCdiBreakpointType(cdiBreakpoint),
- location.getFunction(),
- -1,
- -1,
- line,
- cdiBreakpoint.isEnabled(),
- cdiBreakpoint.getCondition().getIgnoreCount(),
- cdiBreakpoint.getCondition().getExpression(),
- false);
- return breakpoint;
- }
-
- private ICAddressBreakpoint createAddressBreakpoint( String sourceHandle, IResource resource, ICDILocationBreakpoint cdiBreakpoint ) throws CDIException, CoreException {
- String binary = getExecFileHandle();
- IAddress address = getDebugTarget().getAddressFactory().createAddress( cdiBreakpoint.getLocator().getAddress() );
- ICDILocator location = cdiBreakpoint.getLocator();
- int line = location.getLineNumber();
- ICAddressBreakpoint breakpoint = CDIDebugModel.createAddressBreakpoint(
- binary,
- sourceHandle,
- resource,
- ICBreakpointType.REGULAR,
- line,
- address,
- cdiBreakpoint.isEnabled(),
- cdiBreakpoint.getCondition().getIgnoreCount(),
- cdiBreakpoint.getCondition().getExpression(),
- false);
- return breakpoint;
- }
-
- private ICWatchpoint createWatchpoint( ICDIWatchpoint cdiWatchpoint ) throws CDIException, CoreException {
- String sourceHandle = getExecFileHandle();
- ICWatchpoint watchpoint = null;
- if ( cdiWatchpoint instanceof ICDIWatchpoint2 ){
- watchpoint = CDIDebugModel.createWatchpoint( sourceHandle,
- getProject(),
- cdiWatchpoint.isWriteType(),
- cdiWatchpoint.isReadType(),
- cdiWatchpoint.getWatchExpression(),
- ( (ICDIWatchpoint2)cdiWatchpoint ).getMemorySpace(),
- ( (ICDIWatchpoint2)cdiWatchpoint ).getRange(),
- cdiWatchpoint.isEnabled(),
- cdiWatchpoint.getCondition().getIgnoreCount(),
- cdiWatchpoint.getCondition().getExpression(),
- false);
- } else {
- watchpoint = CDIDebugModel.createWatchpoint( sourceHandle,
- getProject(),
- cdiWatchpoint.isWriteType(),
- cdiWatchpoint.isReadType(),
- cdiWatchpoint.getWatchExpression(),
- cdiWatchpoint.isEnabled(),
- cdiWatchpoint.getCondition().getIgnoreCount(),
- cdiWatchpoint.getCondition().getExpression(),
- false );
- }
- return watchpoint;
- }
-
- private ICEventBreakpoint createEventBreakpoint(ICDIEventBreakpoint cdiEventBkpt) throws CDIException,
- CoreException {
-
- ICEventBreakpoint eventBkpt;
- eventBkpt = CDIDebugModel.eventBreakpointExists(cdiEventBkpt.getEventType(), cdiEventBkpt
- .getExtraArgument());
- if (eventBkpt != null)
- return eventBkpt;
- eventBkpt = CDIDebugModel.createEventBreakpoint(cdiEventBkpt.getEventType(), cdiEventBkpt
- .getExtraArgument(), false);
- return eventBkpt;
- }
-
- private void changeBreakpointProperties( ICBreakpoint breakpoint, IMarkerDelta delta ) {
- ICDIBreakpoint cdiBreakpoint = null;
- synchronized( getBreakpointMap() ) {
- if ( !getBreakpointMap().isInProgress( breakpoint ) )
- cdiBreakpoint = getBreakpointMap().getCDIBreakpoint( breakpoint );
- }
- if ( cdiBreakpoint == null )
- return;
- ICDITarget cdiTarget = getCDITarget();
- try {
- boolean enabled = breakpoint.isEnabled() && DebugPlugin.getDefault().getBreakpointManager().isEnabled();
- boolean oldEnabled = ( delta != null ) ? delta.getAttribute( IBreakpoint.ENABLED, true ) : enabled;
- int ignoreCount = breakpoint.getIgnoreCount();
- int oldIgnoreCount = ( delta != null ) ? delta.getAttribute( ICBreakpoint.IGNORE_COUNT, 0 ) : ignoreCount;
- String condition = breakpoint.getCondition();
- String oldCondition = ( delta != null ) ? delta.getAttribute( ICBreakpoint.CONDITION, "" ) : condition; //$NON-NLS-1$
- String[] newThreadIs = getThreadNames( breakpoint );
- Boolean enabled0 = null;
- ICDICondition condition0 = null;
- if ( enabled != oldEnabled && enabled != cdiBreakpoint.isEnabled() ) {
- enabled0 = Boolean.valueOf( enabled );
- }
- if ( ignoreCount != oldIgnoreCount || condition.compareTo( oldCondition ) != 0 || areThreadFiltersChanged( newThreadIs, cdiBreakpoint ) ) {
- ICDICondition cdiCondition = cdiTarget.createCondition( ignoreCount, condition, newThreadIs );
- if ( !cdiCondition.equals( cdiBreakpoint.getCondition() ) ) {
- condition0 = cdiCondition;
- }
- }
- int line = 0;
- if (breakpoint instanceof ILineBreakpoint) {
- ILineBreakpoint l = (ILineBreakpoint) breakpoint;
- line = l.getLineNumber();
- }
- int oldLine = ( delta != null ) ? delta.getAttribute( IMarker.LINE_NUMBER, 0 ) : 0;
- boolean basic = oldLine>0 && oldLine != line;
-
- if (breakpoint instanceof ICBreakpointType) {
- int oldType = ( delta != null ) ? delta.getAttribute( ICBreakpointType.TYPE, -1 ) : -1;
- basic |= oldType != -1 && (oldType != ((ICBreakpointType) breakpoint).getType());
- }
-
- if (basic) {
- final ICBreakpoint[] breakpoints = new ICBreakpoint[] {breakpoint};
- breakpointsRemoved(breakpoints, null);
- handleBreakpointDestroyedEvent(cdiBreakpoint); // events has to processed before add executes
- breakpointsAdded(breakpoints);
- } else if (enabled0 != null || condition0 != null) {
- changeBreakpointPropertiesOnTarget(cdiBreakpoint, enabled0, condition0);
- }
- }
- catch( CoreException e ) {
- }
- catch( CDIException e ) {
- }
- }
-
- private void changeBreakpointProperties( ICBreakpoint breakpoint, ICDIBreakpoint cdiBreakpoint ) {
- Boolean enabled = null;
- try {
- boolean shouldBeEnabled = breakpoint.isEnabled() && DebugPlugin.getDefault().getBreakpointManager().isEnabled();
- if ( cdiBreakpoint.isEnabled() != shouldBeEnabled )
- enabled = shouldBeEnabled;
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- ICDICondition condition = null;
- try {
- ICDICondition c = createCondition( breakpoint );
- if ( !cdiBreakpoint.getCondition().equals( c ) )
- condition = c;
- }
- catch( CDIException e ) {
- }
- catch( CoreException e ) {
- }
- if ( enabled != null || condition != null )
- changeBreakpointPropertiesOnTarget( cdiBreakpoint, enabled, condition );
- }
-
- private void changeBreakpointPropertiesOnTarget( final ICDIBreakpoint breakpoint, final Boolean enabled, final ICDICondition condition ) {
- DebugPlugin.getDefault().asyncExec( new Runnable() {
- @Override
- public void run() {
- if ( enabled != null ) {
- try {
- breakpoint.setEnabled( enabled.booleanValue() );
- }
- catch( CDIException e ) {
- }
- }
- if ( condition != null ) {
- try {
- breakpoint.setCondition( condition );
- }
- catch( CDIException e ) {
- }
- }
- }
- } );
- }
-
- public void setInitialBreakpoints() {
- IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();
- IBreakpoint[] bps = manager.getBreakpoints( CDIDebugModel.getPluginIdentifier() );
-
- ICDITargetConfiguration config = getDebugTarget().getCDITarget().getConfiguration();
-
- if (!(config instanceof ICDITargetConfiguration2) || !((ICDITargetConfiguration2)config).supportsAddressBreaksOnStartup())
- { // Disable address breaks of the target does not support setting them on startup
- for( int i = 0; i < bps.length; i++ ) {
- if ( bps[i] instanceof ICBreakpoint && isTargetBreakpoint( (ICBreakpoint)bps[i] ) && !getBreakpointMap().isRegistered( (ICBreakpoint)bps[i] ) ) {
- if ( bps[i] instanceof ICAddressBreakpoint ) {
- // disable address breakpoints to prevent the debugger to insert them prematurely
- try {
- bps[i].setEnabled( false );
- }
- catch( CoreException e ) {
- }
- }
- }
- }
- }
-
- ICBreakpoint[] breakpoints = register( bps );
- setBreakpointsOnTarget0( breakpoints );
- }
-
- /**
- * Checks if matching between the symbolics referenced by the breakpoint
- * and the symbolics of the contained CDebugTarget should be done using also source handle.
- * @param breakpoint
- * @return true if source handle should be used
- */
- private boolean breakpointUsesSourceMatching(ICBreakpoint breakpoint) {
- boolean result = false;
- if (breakpoint instanceof ICLineBreakpoint) {
- result = true;
- if (breakpoint instanceof ICFunctionBreakpoint) {
- // ICDIFunctionBreakpoint on function elements from binary objects can be
- // set without having a source handle. For this case of line breakpoint
- // don't try to match breakpoints with source locator of contained CDebugTarget.
- String handle = null;
- try {
- handle = breakpoint.getSourceHandle();
- } catch (CoreException ex) {
- // ignore exception. source handle will be empty anyway.
- }
- result = (handle != null) && (handle.length() > 0);
-
- }
- }
- return result;
- }
-
- private boolean isTargetBreakpoint( ICBreakpoint breakpoint ) {
- if ( breakpoint instanceof ICAddressBreakpoint )
- return supportsAddressBreakpoint( (ICAddressBreakpoint)breakpoint );
-
- // If the breakpoint is set on a resource in this project
- // it should be enabled irrespective of what the CSourceLookupDirector thinks
- if (breakpoint.getMarker() != null) {
- IProject project = breakpoint.getMarker().getResource().getProject();
- if (getProject().equals(project))
- return true;
- if (CDebugUtils.isReferencedProject(getProject(), project))
- return true;
- }
-
- // Is it a line breakpoint with source handle ?
- if ( breakpointUsesSourceMatching( breakpoint ) ) {
- try {
- String handle = breakpoint.getSourceHandle();
- ISourceLocator sl = getSourceLocator();
- if ( sl instanceof ICSourceLocator )
- return ( ((ICSourceLocator)sl).findSourceElement( handle ) != null );
- else if ( sl instanceof CSourceLookupDirector ) {
- return ( ((CSourceLookupDirector)sl).contains( breakpoint ) );
- }
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log(e);
- }
- } else {
- // Check the marker resource against the source containers ...
- IResource resource = breakpoint.getMarker().getResource();
- IProject project = resource.getProject();
- if ( project != null && project.exists() ) {
- ISourceLocator sl = getSourceLocator();
- if ( sl instanceof ICSourceLocator )
- return ((ICSourceLocator)sl).contains( project );
- else if ( sl instanceof CSourceLookupDirector )
- return ((CSourceLookupDirector)sl).contains( project );
- }
- }
- // Allow unclassified breakpoints i.e. those which aren't project scoped,
- // or not resource related (e.g. watchpoints)
- return true;
- }
-
- public boolean supportsBreakpoint( ICBreakpoint breakpoint ) {
- boolean s = false;
- synchronized( getBreakpointMap() ) {
- s = getBreakpointMap().isRegistered( breakpoint );
- }
- return s;
- }
-
- /**
- * Checks for a match between the symbolics referenced by the breakpoint
- * and the symbolics of the contained CDebugTarget.
- * @param breakpoint
- * @return true if the symbolics match or if the breakpoint has no symbolics
- */
- public boolean supportsAddressBreakpoint( ICAddressBreakpoint breakpoint ) {
- boolean sessionHasSymbols = getExecFileHandle() != null && getExecFileHandle().length() > 0;
- boolean bpHasSymbols = false;
- try {
- String module = breakpoint.getModule();
- if ( module != null && module.length() > 0 ) {
- bpHasSymbols = true;
- if ( sessionHasSymbols ) {
- return getExecFileHandle().equals( module );
- }
- }
- }
- catch( CoreException e ) {
- }
-
- // supporting old breakpoints (> 3.0)
- try {
- String sourceHandle = breakpoint.getSourceHandle();
- if ( sourceHandle != null && sourceHandle.length() > 0 ) {
- bpHasSymbols = true;
- if ( sessionHasSymbols ) {
- return getExecFileHandle().equals( sourceHandle );
- }
- }
- }
- catch( CoreException e ) {
- }
-
- // an address breakpoint can also be set in the absence of any symbols
- return !bpHasSymbols;
- }
-
- public void skipBreakpoints( boolean enabled ) {
- if ( fSkipBreakpoint != enabled && (DebugPlugin.getDefault().getBreakpointManager().isEnabled() || !enabled) ) {
- fSkipBreakpoint = enabled;
- doSkipBreakpoints( enabled );
- }
- }
-
- public void watchpointOutOfScope( ICDIWatchpoint cdiWatchpoint ) {
- handleBreakpointDestroyedEvent( cdiWatchpoint );
- }
-
- private void doSkipBreakpoints( boolean enabled ) {
- ICBreakpoint[] cBreakpoints = getBreakpointMap().getAllCBreakpoints();
- for ( int i = 0; i < cBreakpoints.length; ++i ) {
- try {
- if ( cBreakpoints[i].isEnabled() ) {
- ICDIBreakpoint cdiBreakpoint = getBreakpointMap().getCDIBreakpoint( cBreakpoints[i] );
- if ( cdiBreakpoint != null ) {
- cdiBreakpoint.setEnabled( !enabled );
- }
- }
- }
- catch( CoreException e ) {
- // ignore
- }
- catch( CDIException e ) {
- // ignore
- }
- }
- }
-
- private IPath convertPath( String sourceHandle ) {
- IPath path = null;
- if ( Path.EMPTY.isValidPath( sourceHandle ) ) {
- ISourceLocator sl = getSourceLocator();
- if ( sl instanceof CSourceLookupDirector ) {
- path = ((CSourceLookupDirector)sl).getCompilationPath( sourceHandle );
- }
- if ( path == null ) {
- path = new Path( sourceHandle );
- }
- }
- return path;
- }
-
- private IProject getProject() {
- return getDebugTarget().getProject();
- }
-
- private String getExecFileHandle() {
- CDebugTarget target = getDebugTarget();
- if ( target != null ) {
- IBinaryObject binary = target.getExecFile();
- if ( binary != null ) {
- IPath path = binary.getPath();
- if ( path != null ) {
- return path.toOSString();
- }
- }
- }
- return null;
- }
-
- private ISourceLocator getSourceLocator() {
- return getDebugTarget().getLaunch().getSourceLocator();
- }
-
- protected Object getSourceElement( String file ) {
- Object sourceElement = null;
- ISourceLocator locator = getSourceLocator();
- if ( locator instanceof ICSourceLocator || locator instanceof CSourceLookupDirector ) {
- if ( locator instanceof ICSourceLocator )
- sourceElement = ((ICSourceLocator)locator).findSourceElement( file );
- else
- sourceElement = ((CSourceLookupDirector)locator).getSourceElement( file );
- }
- return sourceElement;
- }
-
- protected boolean isEmpty( String str ) {
- return !( str != null && str.trim().length() > 0 );
- }
-
- private boolean isTargetAvailable() {
- return getDebugTarget().getCDITarget().getConfiguration().supportsBreakpoints() && getDebugTarget().isAvailable();
- }
-
- private CBreakpointNotifier getBreakpointNotifier() {
- return CBreakpointNotifier.getInstance();
- }
-
- private boolean isFilteredByTarget( ICBreakpoint breakpoint, ICDebugTarget target ) {
- boolean result = false;
- try {
- ICDebugTarget[] tfs = getFilterExtension(breakpoint).getTargetFilters();
- result = Arrays.asList( tfs ).contains( target );
- }
- catch( CoreException e ) {
- // ignore
- }
- return result;
- }
-
- private boolean areThreadFiltersChanged( String[] newIds, ICDIBreakpoint cdiBreakpoint ) {
- try {
- String[] oldIds = cdiBreakpoint.getCondition().getThreadIds();
- if ( oldIds.length != newIds.length )
- return true;
- List list = Arrays.asList( oldIds );
- for ( int i = 0; i < newIds.length; ++i ) {
- if ( !list.contains( newIds[i] ) ) {
- return true;
- }
- }
- }
- catch( CDIException e ) {
- }
- return false;
- }
-
- private ICBreakpointFilterExtension getFilterExtension(ICBreakpoint bp) throws CoreException{
- return bp.getExtension(
- CDIDebugModel.getPluginIdentifier(), ICBreakpointFilterExtension.class);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java
deleted file mode 100644
index 01ea87d431..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugAdapter.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2013 QNX Software Systems 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:
- * QNX Software Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.Date;
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.core.model.ICProject;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDIDebugger;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugger;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.variables.VariablesPlugin;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IProcess;
-
-import com.ibm.icu.text.DateFormat;
-import com.ibm.icu.text.MessageFormat;
-
-public class CDebugAdapter implements ICDIDebugger {
- final ICDebugger fDebugger;
-
- /**
- * @param debugger
- */
- public CDebugAdapter(ICDebugger debugger) {
- fDebugger = debugger;
- }
-
- /* (non-Javadoc)
- *
- * @see org.eclipse.cdt.debug.core.ICDIDebugger#createDebuggerSession(org.eclipse.debug.core.ILaunch,
- * org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable,
- * org.eclipse.core.runtime.IProgressMonitor)
- */
- @Override
- public ICDISession createDebuggerSession(ILaunch launch, IBinaryObject exe, IProgressMonitor monitor) throws CoreException {
- ILaunchConfiguration config = launch.getLaunchConfiguration();
- if (exe == null) {
- abort(InternalDebugCoreMessages.CDebugAdapter_Program_file_not_specified, null,
- ICDTLaunchConfigurationConstants.ERR_UNSPECIFIED_PROGRAM);
- }
- IFile[] exeFile = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(exe.getPath());
- if (exeFile.length == 0) {
- abort(InternalDebugCoreMessages.CDebugAdapter_0, null, -1);
- }
- int pid = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_ATTACH_PROCESS_ID, -1);
- String coreFile = config.getAttribute(ICDTLaunchConfigurationConstants.ATTR_COREFILE_PATH, (String)null);
- ICDISession session;
- try {
- if (pid == -1 && coreFile == null) {
- session = fDebugger.createLaunchSession(config, exeFile[0]);
- } else if (pid != -1) {
- session = fDebugger.createAttachSession(config, exeFile[0], pid);
- } else {
- session = fDebugger.createCoreSession(config, exeFile[0], new Path(coreFile));
- }
- Process debugger = session.getSessionProcess();
- if (debugger != null) {
- IProcess debuggerProcess = DebugPlugin.newProcess(launch, debugger, renderDebuggerProcessLabel());
- launch.addProcess(debuggerProcess);
- }
- return session;
- } catch (CDIException e) {
- abort(e.getLocalizedMessage(), e, -1);
- }
- throw new IllegalStateException(); // should never happen
- }
-
- protected String renderDebuggerProcessLabel() {
- String format = "{0} ({1})"; //$NON-NLS-1$
- String timestamp = DateFormat.getInstance().format(new Date(System.currentTimeMillis()));
- String message = InternalDebugCoreMessages.CDebugAdapter_1;
- return MessageFormat.format(format, message, timestamp);
- }
-
- protected void abort(String message, Throwable exception, int code) throws CoreException {
- MultiStatus status = new MultiStatus(CDebugCorePlugin.getUniqueIdentifier(), code, message, exception);
- status.add(new Status(IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), code,
- exception == null ? "" : exception.getLocalizedMessage(), //$NON-NLS-1$
- exception));
- throw new CoreException(status);
- }
-
- public static ICProject getCProject(ILaunchConfiguration configuration) throws CoreException {
- String projectName = getProjectName(configuration);
- if (projectName != null) {
- projectName = projectName.trim();
- if (projectName.length() > 0) {
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- ICProject cProject = CCorePlugin.getDefault().getCoreModel().create(project);
- if (cProject != null && cProject.exists()) {
- return cProject;
- }
- }
- }
- return null;
- }
-
- public static String getProjectName(ILaunchConfiguration configuration) throws CoreException {
- return configuration.getAttribute(ICDTLaunchConfigurationConstants.ATTR_PROJECT_NAME, (String)null);
- }
-
- public static String getProgramName(ILaunchConfiguration configuration) throws CoreException {
- String programName = configuration.getAttribute(ICDTLaunchConfigurationConstants.ATTR_PROGRAM_NAME, (String) null);
- if (programName != null) {
- programName = VariablesPlugin.getDefault().getStringVariableManager().performStringSubstitution(programName);
- }
- return programName;
- }
-
- public static IPath getProgramPath(ILaunchConfiguration configuration) throws CoreException {
- String path = getProgramName(configuration);
- if (path == null) {
- return null;
- }
- return new Path(path);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java
index a6a3329414..d951fd1b0e 100644
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java
+++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDebugCorePreferenceInitializer.java
@@ -16,7 +16,6 @@ import java.nio.charset.Charset;
import org.eclipse.cdt.debug.core.CDebugCorePlugin;
import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.cdi.ICDIFormat;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
import org.eclipse.core.runtime.preferences.DefaultScope;
@@ -42,9 +41,6 @@ public class CDebugCorePreferenceInitializer extends AbstractPreferenceInitializ
IEclipsePreferences defaultPreferences = DefaultScope.INSTANCE.getNode(CDebugCorePlugin.PLUGIN_ID);
defaultPreferences.putInt(ICDebugConstants.PREF_MAX_NUMBER_OF_INSTRUCTIONS, ICDebugConstants.DEF_NUMBER_OF_INSTRUCTIONS);
- defaultPreferences.putInt(ICDebugConstants.PREF_DEFAULT_VARIABLE_FORMAT, ICDIFormat.NATURAL);
- defaultPreferences.putInt(ICDebugConstants.PREF_DEFAULT_EXPRESSION_FORMAT, ICDIFormat.NATURAL);
- defaultPreferences.putInt(ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT, ICDIFormat.NATURAL);
defaultPreferences.put(ICDebugConstants.PREF_DEBUG_CHARSET, Charset.defaultCharset().name());
if (Platform.getOS().equals(Platform.OS_WIN32)) {
defaultPreferences.put(ICDebugConstants.PREF_DEBUG_WIDE_CHARSET, "UTF-16"); //$NON-NLS-1$
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDisassemblyContextProvider.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDisassemblyContextProvider.java
deleted file mode 100644
index 469781e5fc..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CDisassemblyContextProvider.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2012 ARM Limited 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:
- * ARM Limited - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.cdt.debug.internal.core;
-
-import org.eclipse.cdt.debug.core.disassembly.IDisassemblyContextProvider;
-import org.eclipse.cdt.debug.core.model.ICDebugElement;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- * org.eclipse.cdt.debug.internal.core.CDisassemblyContextProvider:
- * //TODO Add description.
- */
-public class CDisassemblyContextProvider implements IDisassemblyContextProvider {
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.disassembly.IDisassemblyContextProvider#getDisassemblyContext(java.lang.Object)
- */
- @Override
- public Object getDisassemblyContext( Object element ) {
- if ( element instanceof ICDebugElement ) {
- IDebugTarget target = ((ICDebugElement)element).getDebugTarget();
- return ((CDebugTarget)target).getDisassemblyRetrieval();
- }
- return null;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java
deleted file mode 100644
index 24bc5b3568..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CGlobalVariableManager.java
+++ /dev/null
@@ -1,297 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2013 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * Gaetano Santoro (gaetano.santoro@st.com): patch for
- * https://bugs.eclipse.org/bugs/show_bug.cgi?id=274499
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICGlobalVariableManager;
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.CVariable;
-import org.eclipse.cdt.debug.internal.core.model.CVariableFactory;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-/**
- * Manages all global variables registered with a debug target.
- */
-public class CGlobalVariableManager implements ICGlobalVariableManager {
-
- private static final String GLOBAL_VARIABLE_LIST = "globalVariableList"; //$NON-NLS-1$
- private static final String GLOBAL_VARIABLE = "globalVariable"; //$NON-NLS-1$
- private static final String ATTR_GLOBAL_VARIABLE_PATH = "path"; //$NON-NLS-1$
- private static final String ATTR_GLOBAL_VARIABLE_NAME = "name"; //$NON-NLS-1$
-
- private CDebugTarget fDebugTarget;
-
- private IGlobalVariableDescriptor[] fInitialDescriptors = new IGlobalVariableDescriptor[0];
-
- private List<ICGlobalVariable> fGlobals;
-
- /**
- * Constructor for CGlobalVariableManager.
- */
- public CGlobalVariableManager( CDebugTarget target ) {
- super();
- setDebugTarget( target );
- initialize();
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- private void setDebugTarget( CDebugTarget debugTarget ) {
- fDebugTarget = debugTarget;
- }
-
- public ICGlobalVariable[] getGlobals() {
- if ( fGlobals == null ) {
- try {
- addGlobals( getInitialDescriptors() );
- }
- catch( DebugException e ) {
- DebugPlugin.log( e );
- }
- }
- return fGlobals.toArray( new ICGlobalVariable[fGlobals.size()] );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICGlobalVariableManager#addGlobals(IGlobalVariableDescriptor[])
- */
- @Override
- public void addGlobals( IGlobalVariableDescriptor[] descriptors ) throws DebugException {
- fGlobals = new ArrayList<ICGlobalVariable>( 10 );
- MultiStatus ms = new MultiStatus( CDebugCorePlugin.getUniqueIdentifier(), 0, "", null ); //$NON-NLS-1$
- List<ICGlobalVariable> globals = new ArrayList<ICGlobalVariable>( descriptors.length );
- for ( int i = 0; i < descriptors.length; ++i ) {
- try {
- globals.add( getDebugTarget().createGlobalVariable( descriptors[i] ) );
- }
- catch( DebugException e ) {
- ms.add( e.getStatus() );
- }
- }
- if ( globals.size() > 0 ) {
- synchronized( fGlobals ) {
- fGlobals.addAll( globals );
- }
- }
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- if ( !ms.isOK() ) {
- throw new DebugException( ms );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICGlobalVariableManager#removeGlobals(ICGlobalVariable[])
- */
- @Override
- public void removeGlobals( ICGlobalVariable[] globals ) {
- synchronized( fGlobals ) {
- fGlobals.removeAll( Arrays.asList( globals ) );
- }
- for ( int i = 0; i < globals.length; ++i ) {
- if ( globals[i] instanceof CVariable )
- ((CVariable)globals[i]).dispose();
- }
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICGlobalVariableManager#removeAllGlobals()
- */
- @Override
- public void removeAllGlobals() {
- if (fGlobals == null ) {
- return;
- }
-
- ICGlobalVariable[] globals;
- synchronized( fGlobals ) {
- globals = fGlobals.toArray( new ICGlobalVariable[fGlobals.size()] );
- fGlobals.clear();
- }
- for ( int i = 0; i < globals.length; ++i ) {
- if ( globals[i] instanceof CVariable )
- ((CVariable)globals[i]).dispose();
- }
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
-
- public void dispose() {
- if ( fGlobals != null ) {
- for (ICGlobalVariable global : fGlobals) {
- ((CVariable)global).dispose();
- }
- fGlobals.clear();
- fGlobals = null;
- }
- }
-
- public String getMemento() {
- Document document = null;
- try {
- document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
- Element node = document.createElement( GLOBAL_VARIABLE_LIST );
- document.appendChild( node );
- ICGlobalVariable[] globals = getGlobals();
- for (ICGlobalVariable global : globals) {
- IGlobalVariableDescriptor descriptor = global.getDescriptor();
- // children of globals don't have a descriptor, though getGlobals() shouldn't return only top level globals
- if (descriptor != null) {
- Element child = document.createElement( GLOBAL_VARIABLE );
- child.setAttribute( ATTR_GLOBAL_VARIABLE_NAME, descriptor.getName() );
- child.setAttribute( ATTR_GLOBAL_VARIABLE_PATH, descriptor.getPath().toOSString() );
- node.appendChild( child );
- }
- }
- return CDebugUtils.serializeDocument( document );
- }
- catch( ParserConfigurationException e ) {
- DebugPlugin.log( e );
- }
- catch( IOException e ) {
- DebugPlugin.log( e );
- }
- catch( TransformerException e ) {
- DebugPlugin.log( e );
- }
- return null;
- }
-
- private void initializeFromMemento( String memento ) throws CoreException {
- Exception ex = null;
- try {
- Element root = null;
- DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- StringReader reader = new StringReader( memento );
- InputSource source = new InputSource( reader );
- root = parser.parse( source ).getDocumentElement();
- if ( root.getNodeName().equalsIgnoreCase( GLOBAL_VARIABLE_LIST ) ) {
- List<IGlobalVariableDescriptor> descriptors = new ArrayList<IGlobalVariableDescriptor>();
- NodeList list = root.getChildNodes();
- int length = list.getLength();
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- short type = node.getNodeType();
- if ( type == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( GLOBAL_VARIABLE ) ) {
- String name = entry.getAttribute( ATTR_GLOBAL_VARIABLE_NAME );
- String pathString = entry.getAttribute( ATTR_GLOBAL_VARIABLE_PATH );
- IPath path = new Path( pathString );
- if ( path.isValidPath( pathString ) ) {
- descriptors.add( CVariableFactory.createGlobalVariableDescriptor( name, path ) );
- }
- }
- }
- }
- fInitialDescriptors = descriptors.toArray( new IGlobalVariableDescriptor[descriptors.size()] );
- return;
- }
- }
- catch( ParserConfigurationException e ) {
- ex = e;
- }
- catch( SAXException e ) {
- ex = e;
- }
- catch( IOException e ) {
- ex = e;
- }
- abort(InternalDebugCoreMessages.CGlobalVariableManager_0, ex);
- }
-
- private void initialize() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- String memento = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_GLOBAL_VARIABLES, "" ); //$NON-NLS-1$
- if ( memento != null && memento.trim().length() != 0 )
- initializeFromMemento( memento );
- }
- catch( CoreException e ) {
- DebugPlugin.log( e );
- }
- }
-
- /**
- * Throws an internal error exception
- */
- private void abort( String message, Throwable e ) throws CoreException {
- IStatus s = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, message, e );
- throw new CoreException( s );
- }
-
- private IGlobalVariableDescriptor[] getInitialDescriptors() {
- return fInitialDescriptors;
- }
-
- public void save() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- ILaunchConfigurationWorkingCopy wc = config.getWorkingCopy();
- wc.setAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_GLOBAL_VARIABLES, getMemento() );
- wc.doSave();
- }
- catch( CoreException e ) {
- DebugPlugin.log( e );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICGlobalVariableManager#getDescriptors()
- */
- @Override
- public IGlobalVariableDescriptor[] getDescriptors() {
- if ( fGlobals == null )
- return getInitialDescriptors();
- List<IGlobalVariableDescriptor> descrs = new ArrayList<IGlobalVariableDescriptor>();
- for (ICGlobalVariable global : fGlobals) {
- IGlobalVariableDescriptor descr = global.getDescriptor();
- if (descr != null) { // children of globals don't have a descriptor, though 'fGlobals' should contain only top level globals
- descrs.add(descr);
- }
- }
- return descrs.toArray(new IGlobalVariableDescriptor[descrs.size()]);
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java
deleted file mode 100644
index bdb16e2bb5..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CMemoryBlockRetrievalExtension.java
+++ /dev/null
@@ -1,499 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2013 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.core.IAddressFactory2;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIExpression;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemorySpaceEncoder;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIMemorySpaceManagement;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.ICType;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.cdt.debug.core.model.provisional.IMemorySpaceAwareMemoryBlock;
-import org.eclipse.cdt.debug.core.model.provisional.IMemorySpaceAwareMemoryBlockRetrieval;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.CExpression;
-import org.eclipse.cdt.debug.internal.core.model.CMemoryBlockExtension;
-import org.eclipse.cdt.debug.internal.core.model.CStackFrame;
-import org.eclipse.cdt.debug.internal.core.model.CThread;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IValue;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.ibm.icu.text.MessageFormat;
-
-/**
- * Implements the memory retrieval features based on the CDI model.
- */
-public class CMemoryBlockRetrievalExtension extends PlatformObject implements IMemorySpaceAwareMemoryBlockRetrieval {
-
- private static final String MEMORY_BLOCK_EXPRESSION_LIST = "memoryBlockExpressionList"; //$NON-NLS-1$
- private static final String MEMORY_BLOCK_EXPRESSION_ITEM = "memoryBlockExpressionItem"; //$NON-NLS-1$
- private static final String MEMORY_BLOCK_EXPRESSION = "expression"; //$NON-NLS-1$
- private static final String MEMORY_BLOCK_MEMSPACEID = "memorySpaceID"; //$NON-NLS-1$
- private static final String ATTR_MEMORY_BLOCK_MEMSPACEID_TEXT = "text"; //$NON-NLS-1$
- private static final String ATTR_MEMORY_BLOCK_EXPRESSION_TEXT = "text"; //$NON-NLS-1$
-
- CDebugTarget fDebugTarget;
-
- /**
- * Constructor for CMemoryBlockRetrievalExtension.
- */
- public CMemoryBlockRetrievalExtension( CDebugTarget debugTarget ) {
- fDebugTarget = debugTarget;
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- public void initialize() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- String memento = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_MEMORY_BLOCKS, "" ); //$NON-NLS-1$
- if ( memento != null && memento.trim().length() != 0 )
- initializeFromMemento( memento );
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- }
- }
-
- private void parseMementoExprItem(Element element, List<String> expressions, List<String> memorySpaceIDs) {
- NodeList list = element.getChildNodes();
- int length = list.getLength();
- String exp = null;
- String memorySpaceID = null;
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- if ( node.getNodeType() == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( MEMORY_BLOCK_EXPRESSION ) ) {
- exp = entry.getAttribute( ATTR_MEMORY_BLOCK_EXPRESSION_TEXT );
- } else if ( entry.getNodeName().equalsIgnoreCase( MEMORY_BLOCK_MEMSPACEID ) ) {
- memorySpaceID = entry.getAttribute( ATTR_MEMORY_BLOCK_MEMSPACEID_TEXT );
- }
- }
- }
- if (exp != null) {
- expressions.add( exp );
- memorySpaceIDs.add( memorySpaceID );
- }
- }
-
-
- private void initializeFromMemento( String memento ) throws CoreException {
- Element root = DebugPlugin.parseDocument( memento );
- if ( root.getNodeName().equalsIgnoreCase( MEMORY_BLOCK_EXPRESSION_LIST ) ) {
- List<String> expressions = new ArrayList<String>();
- List<String> memorySpaceIDs = new ArrayList<String>();
- NodeList list = root.getChildNodes();
- int length = list.getLength();
- for( int i = 0; i < length; ++i ) {
- Node node = list.item( i );
- if ( node.getNodeType() == Node.ELEMENT_NODE ) {
- Element entry = (Element)node;
- if ( entry.getNodeName().equalsIgnoreCase( MEMORY_BLOCK_EXPRESSION_ITEM ) ) {
- parseMementoExprItem(entry, expressions, memorySpaceIDs);
- }
- }
- }
- createMemoryBlocks( expressions.toArray( new String[expressions.size()]) ,
- memorySpaceIDs.toArray( new String[memorySpaceIDs.size()]));
-
- return;
- }
- abort(InternalDebugCoreMessages.CMemoryBlockRetrievalExtension_3, null);
- }
-
- /**
- * Convert a simple literal address (e.g., "0x1000") to a BigInteger value
- * using the debug target's address factory.
- *
- * We throw a NumberFormatException if the string is not a valid literal
- * address. If the backend implements the new&improved factory interface,
- * we'll throw a NumberFormatException if the string is a literal address
- * but is outside of the valid range. Old address factories will simply
- * truncate the value.
- *
- * @param expression
- * @return
- * @throws DebugException if target not available
- */
- private BigInteger evaluateLiteralAddress(String addr) throws DebugException {
- CDebugTarget target = getDebugTarget();
- if (target == null) {
- throw new DebugException(new Status(IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED,
- InternalDebugCoreMessages.CMemoryBlockRetrievalExtension_CDebugTarget_not_available, null));
- }
- IAddressFactory addrFactory = target.getAddressFactory();
- if (addrFactory instanceof IAddressFactory2) {
- return ((IAddressFactory2)addrFactory).createAddress(addr, false).getValue();
- }
- else {
- return addrFactory.createAddress(addr).getValue();
- }
- }
-
- private void createMemoryBlocks( String[] expressions, String[] memorySpaceIDs ) {
- List<CMemoryBlockExtension> list = new ArrayList<CMemoryBlockExtension>( expressions.length );
- for ( int i = 0; i < expressions.length; ++i ) {
- try {
- IAddress address = getDebugTarget().getAddressFactory().createAddress( expressions[i] );
- if ( address != null ) {
- if (memorySpaceIDs[i] == null) {
- list.add( new CMemoryBlockExtension( getDebugTarget(), address.toHexAddressString(), address.getValue() ) );
- } else {
- list.add( new CMemoryBlockExtension( getDebugTarget(), expressions[i], address.getValue(), memorySpaceIDs[i] ) );
- }
- }
- } catch (NumberFormatException exc) {
- CDebugCorePlugin.log(exc);
- }
- }
- DebugPlugin.getDefault().getMemoryBlockManager().addMemoryBlocks( list.toArray( new IMemoryBlock[list.size()] ) );
- }
-
- public String getMemento() throws CoreException {
- IMemoryBlock[] blocks = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks( getDebugTarget() );
- Document document = DebugPlugin.newDocument();
- Element exprList = document.createElement( MEMORY_BLOCK_EXPRESSION_LIST );
- for ( int i = 0; i < blocks.length; ++i ) {
- if ( blocks[i] instanceof IMemoryBlockExtension ) {
- IMemoryBlockExtension memBlockExt = (IMemoryBlockExtension)blocks[i];
- Element exprItem = document.createElement( MEMORY_BLOCK_EXPRESSION_ITEM );
- exprList.appendChild(exprItem);
-
- String memorySpaceID = null;
- if (memBlockExt instanceof IMemorySpaceAwareMemoryBlock) {
- memorySpaceID = ((IMemorySpaceAwareMemoryBlock)memBlockExt).getMemorySpaceID();
- }
- BigInteger addrBigInt = memBlockExt.getBigBaseAddress();
-
- Element child = document.createElement( MEMORY_BLOCK_EXPRESSION );
- child.setAttribute( ATTR_MEMORY_BLOCK_EXPRESSION_TEXT, "0x" + addrBigInt.toString(16) ); //$NON-NLS-1$
- exprItem.appendChild( child );
-
- if (memorySpaceID != null) {
- child = document.createElement( MEMORY_BLOCK_MEMSPACEID );
- child.setAttribute( ATTR_MEMORY_BLOCK_MEMSPACEID_TEXT, memorySpaceID);
- exprItem.appendChild( child );
- }
- }
- }
- document.appendChild( exprList );
- return DebugPlugin.serializeDocument( document );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockExtensionRetrieval#getExtendedMemoryBlock(java.lang.String, org.eclipse.debug.core.model.IDebugElement)
- */
- @Override
- public IMemoryBlockExtension getExtendedMemoryBlock( String expression, Object selected ) throws DebugException {
- return getMemoryBlock(expression, selected, null);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.provisional.IMemorySpaceAwareMemoryBlockRetrieval#getExtendedMemoryBlock(java.lang.String, java.lang.Object, java.lang.String)
- */
- @Override
- public IMemorySpaceAwareMemoryBlock getMemoryBlock( String expression, Object selected, String memorySpaceID ) throws DebugException {
- String address = null;
- CExpression exp = null;
- String msg = null;
- try {
- if (selected instanceof IDebugElement) {
- IDebugElement debugElement = (IDebugElement)selected;
- IDebugTarget target = debugElement.getDebugTarget();
- if (!(target instanceof CDebugTarget)) {
- throw new DebugException( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, msg, null ) );
- }
-
- // See if the expression is a simple numeric value; if it is, we can avoid some costly
- // processing (calling the backend to resolve the expression)
- try {
- return new CMemoryBlockExtension((CDebugTarget)target, expression, evaluateLiteralAddress(expression), memorySpaceID);
- } catch (NumberFormatException nfexc) {}
-
- // OK, expression is not a simple literal address; keep trucking and try to resolve as expression
- CStackFrame frame = getStackFrame( debugElement );
- if ( frame != null ) {
- // Get the address of the expression
- ICDIExpression cdiExpression = frame.getCDITarget().createExpression( expression );
- exp = new CExpression( frame, cdiExpression, null );
- IValue value = exp.getValue();
- if ( value instanceof ICValue ) {
- ICType type = ((ICValue)value).getType();
- if ( type != null ) {
- // get the address for the expression, allow all types
- String rawExpr = exp.getExpressionString();
- String voidExpr = "(void *)(" + rawExpr + ')'; //$NON-NLS-1$
- String attempts[] = { rawExpr, voidExpr };
- for (int i = 0; i < attempts.length; i++) {
- String expr = attempts[i];
- address = frame.evaluateExpressionToString(expr);
- if (address != null) {
- try {
- BigInteger a = (address.startsWith("0x")) ? new BigInteger(address.substring(2), 16) : new BigInteger(address); //$NON-NLS-1$
- return new CMemoryBlockExtension((CDebugTarget) target, expression, a, memorySpaceID);
- } catch (NumberFormatException e) {
- // not pointer? lets cast it to void*
- if (i == 0)
- continue;
- throw e;
- }
- }
- }
-
- }
- else {
- msg = MessageFormat.format(InternalDebugCoreMessages.CMemoryBlockRetrievalExtension_1, expression);
- }
- }
- else {
- msg = MessageFormat.format(InternalDebugCoreMessages.CMemoryBlockRetrievalExtension_2, expression);
- }
- }
- }
- }
- catch( CDIException e ) {
- msg = e.getMessage();
- }
- catch( NumberFormatException e ) {
- msg = MessageFormat.format(InternalDebugCoreMessages.CMemoryBlockRetrievalExtension_0, expression);
- }
- finally {
- if (exp != null) {
- exp.dispose();
- }
- }
-
- throw new DebugException( new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, msg, null ) );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockRetrieval#supportsStorageRetrieval()
- */
- @Override
- public boolean supportsStorageRetrieval() {
- return true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockRetrieval#getMemoryBlock(long, long)
- */
- @Override
- public IMemoryBlock getMemoryBlock( long startAddress, long length ) throws DebugException {
- String expression = Long.toHexString(startAddress);
- BigInteger address = new BigInteger(expression, 16);
- expression = "0x" + expression; //$NON-NLS-1$
- return new CMemoryBlockExtension( getDebugTarget(), expression, address );
- }
-
- private CStackFrame getStackFrame( IDebugElement selected ) throws DebugException {
- if ( selected instanceof CStackFrame ) {
- return (CStackFrame)selected;
- }
- if ( selected instanceof CThread ) {
- IStackFrame frame = ((CThread)selected).getTopStackFrame();
- if ( frame instanceof CStackFrame )
- return (CStackFrame)frame;
- }
- return null;
- }
-
- public void save() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- ILaunchConfigurationWorkingCopy wc = config.getWorkingCopy();
- wc.setAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_MEMORY_BLOCKS, getMemento() );
- wc.doSave();
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e.getStatus() );
- }
- }
-
- /**
- * Throws an internal error exception
- */
- private void abort( String message, Throwable e ) throws CoreException {
- IStatus s = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, message, e );
- throw new CoreException( s );
- }
-
- public void dispose() {
- // Fire a terminate event so our hosts can clean up. See 255120 and 283586
- DebugPlugin.getDefault().fireDebugEventSet( new DebugEvent[]{new DebugEvent( this, DebugEvent.TERMINATE )});
-
- // Minimize leaks in case we are ourselves are leaked
- fDebugTarget = null;
- }
-
- /**
- * Checks the CDI backend to see is memory spaces are supported and actually
- * available for the target process.
- *
- * @return true if the backend supports memory spaces
- */
- public boolean hasMemorySpaces() {
- return getMemorySpaces().length > 0;
- }
-
- /**
- * @see org.eclipse.cdt.debug.core.model.provisional.IMemorySpaceAwareMemoryBlockRetrieval#getMemorySpaces(java.lang.Object, org.eclipse.cdt.debug.internal.core.model.provisional.IRequestListener)
- */
- @Override
- public void getMemorySpaces(final Object context, GetMemorySpacesRequest request) {
- // We're not very asynchronous in CDI. DSF is another story. Also, note
- // that we ignore the context. That's because we know that there's only
- // one instance of this object per process object, and all elements of
- // the project object (process, threads, frames) will have the same
- // memory spaces
- request.setMemorySpaces(getMemorySpaces());
- request.done();
- }
-
- /**
- * This variant is called by code that is CDI-specific. This method and its
- * uses predate the introduction of the DSF/CDI-agnostic
- * IMemorySpaceAwareMemoryBlockRetrieval
- *
- * @return the memory spaces available in this debug session
- */
- public String [] getMemorySpaces(){
- if (fDebugTarget != null) {
- ICDITarget cdiTarget = fDebugTarget.getCDITarget();
- if (cdiTarget instanceof ICDIMemorySpaceManagement)
- return ((ICDIMemorySpaceManagement)cdiTarget).getMemorySpaces();
- }
-
- return new String[0];
- }
-
- /**
- * The default encoding of an {expression, memory space ID} pair into a
- * string. A CDI client can provide custom decoding by implementing
- * ICDIMemorySpaceEncoder
- */
- public static String encodeAddressDefault(String expression, String memorySpaceID) {
- return memorySpaceID + ':' + expression;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.provisional.IMemorySpaceAwareMemoryBlockRetrieval#encodeAddress(java.math.BigInteger, java.lang.String)
- */
- @Override
- public String encodeAddress(final String expression, final String memorySpaceID) {
- // See if the CDI client provides customized encoding/decoding
- if (fDebugTarget != null) {
- ICDITarget cdiTarget = fDebugTarget.getCDITarget();
- if (cdiTarget instanceof ICDIMemorySpaceEncoder) {
- return ((ICDIMemorySpaceEncoder)cdiTarget).encodeAddress(expression, memorySpaceID);
- }
- }
-
- // Nope; use default encoding
- return encodeAddressDefault(expression, memorySpaceID);
- }
-
- /*
- * The default decoding of a string into an {expression, memory space ID}
- * pair. A CDI client can provide custom decoding by implementing ICDIMemorySpaceEncoder
- */
- public static DecodeResult decodeAddressDefault(String str) throws CoreException {
- int index = str.lastIndexOf(':');
-
- // minimum is "<space>:<expression>"
- if ((index == -1) || (index == str.length()-1)) {
- IStatus s = new Status(IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(),
- CDebugCorePlugin.INTERNAL_ERROR,
- InternalDebugCoreMessages.CMemoryBlockRetrievalExtension_invalid_encoded_address, null);
- throw new CoreException( s );
- }
-
- final String memorySpaceID = str.substring(0, index);
- final String expression = str.substring(index+1);
-
- return new DecodeResult() {
- @Override
- public String getMemorySpaceId() { return memorySpaceID; }
- @Override
- public String getExpression() { return expression; }
- };
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.model.provisional.IMemorySpaceAwareMemoryBlockRetrieval#decodeAddress(java.lang.String, java.lang.StringBuffer)
- */
- @Override
- public DecodeResult decodeAddress(final String str) throws CoreException {
-
- // See if the CDI client provides customized encoding/decoding
- if (fDebugTarget != null) {
- ICDITarget cdiTarget = fDebugTarget.getCDITarget();
- if (cdiTarget instanceof ICDIMemorySpaceEncoder) {
- try {
- final ICDIMemorySpaceEncoder.DecodeResult result = ((ICDIMemorySpaceEncoder)cdiTarget).decodeAddress(str);
- return new DecodeResult() {
- @Override
- public String getMemorySpaceId() { return result.getMemorySpaceId(); }
- @Override
- public String getExpression() { return result.getExpression(); }
- };
- }
- catch (CDIException exc) {
- IStatus s = new Status(IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, InternalDebugCoreMessages.CMemoryBlockRetrievalExtension_invalid_encoded_address, exc);
- throw new CoreException(s);
-
- }
- }
- }
-
- // Nope; use default decoding
- return decodeAddressDefault(str);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.provisional.IMemorySpaceAwareMemoryBlockRetrieval#creatingBlockRequiresMemorySpaceID()
- */
- @Override
- public boolean creatingBlockRequiresMemorySpaceID() {
- // A behavioral control we're not extending to CDI clients, but is being
- // extended to DSF ones.
- return false;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java
deleted file mode 100644
index cc1d7ced85..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CRegisterManager.java
+++ /dev/null
@@ -1,381 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2013 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.concurrent.locks.ReentrantLock;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup;
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.CRegisterDescriptor;
-import org.eclipse.cdt.debug.internal.core.model.CRegisterGroup;
-import org.eclipse.cdt.debug.internal.core.model.CStackFrame;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * Manages all register groups in a debug target.
- */
-public class CRegisterManager {
-
- private static final String ELEMENT_REGISTER_GROUP_LIST = "registerGroups"; //$NON-NLS-1$
- private static final String ELEMENT_REGISTER_GROUP = "group"; //$NON-NLS-1$
- private static final String ATTR_REGISTER_GROUP_MEMENTO = "memento"; //$NON-NLS-1$
-
- /**
- * The debug target associated with this manager.
- */
- private CDebugTarget fDebugTarget;
-
- /**
- * Collection of register groups added to this target. Values are of type <code>CRegisterGroup</code>.
- */
- protected List fRegisterGroups;
-
- /**
- * The list of all register descriptors.
- */
- private IRegisterDescriptor[] fRegisterDescriptors;
-
- private boolean fUseDefaultRegisterGroups = true;
-
- private CStackFrame fCurrentFrame;
-
- private ReentrantLock fInitializationLock = new ReentrantLock();
-
- private boolean fInitialized = false;
-
- /**
- * Constructor for CRegisterManager.
- */
- public CRegisterManager( CDebugTarget target ) {
- fDebugTarget = target;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( CRegisterManager.class.equals( adapter ) )
- return this;
- return null;
- }
-
- public void dispose() {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- @Override
- public void run() {
- synchronized( fRegisterGroups ) {
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- ((CRegisterGroup)it.next()).dispose();
- }
- fRegisterGroups.clear();
- }
- }
- } );
- }
-
- public IRegisterDescriptor[] getAllRegisterDescriptors() throws DebugException {
- return fRegisterDescriptors;
- }
-
- public IRegisterGroup[] getRegisterGroups() {
- return (IRegisterGroup[])fRegisterGroups.toArray( new IRegisterGroup[fRegisterGroups.size()] );
- }
-
- public IRegisterGroup[] getRegisterGroups( CStackFrame frame ) throws DebugException {
- setCurrentFrame( frame );
- return getRegisterGroups();
- }
-
- public void setCurrentFrame( ICStackFrame frame ) throws DebugException {
- if ( frame != null && !frame.equals( getCurrentFrame() ) ) {
- for ( IRegisterGroup group : getRegisterGroups() ) {
- ((CRegisterGroup)group).resetRegisterValues();
- }
- setCurrentFrame0( (CStackFrame)frame );
- }
- }
-
- public void initialize() {
- if ( !fInitialized ) {
- synchronized( fInitializationLock ) {
- if ( !fInitialized ) {
- boolean failed = false;
- ICDIRegisterGroup[] groups = new ICDIRegisterGroup[0];
- try {
- groups = getDebugTarget().getCDITarget().getRegisterGroups();
- }
- catch( CDIException e ) {
- CDebugCorePlugin.log( e );
- failed = true;
- }
- List<CRegisterDescriptor> list = new ArrayList<CRegisterDescriptor>();
- for( int i = 0; i < groups.length; ++i ) {
- try {
- ICDIRegisterDescriptor[] cdiDescriptors = groups[i].getRegisterDescriptors();
- for ( int j = 0; j < cdiDescriptors.length; ++j ) {
- list.add( new CRegisterDescriptor( groups[i], cdiDescriptors[j] ) );
- }
- }
- catch( CDIException e ) {
- CDebugCorePlugin.log( e );
- failed = true;
- }
- }
- fRegisterDescriptors = list.toArray( new IRegisterDescriptor[list.size()] );
- fInitialized = !failed;
- if ( failed )
- fRegisterGroups = Collections.emptyList();
- else
- createRegisterGroups();
- }
- }
- }
- }
-
- public void addRegisterGroup( final String name, final IRegisterDescriptor[] descriptors ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- @Override
- public void run() {
- fRegisterGroups.add( new CRegisterGroup( getDebugTarget(), name, descriptors ) );
- setUseDefaultRegisterGroups( false );
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
- }
-
- public void removeAllRegisterGroups() {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- @Override
- public void run() {
- synchronized( fRegisterGroups ) {
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- ((CRegisterGroup)it.next()).dispose();
- }
- fRegisterGroups.clear();
- }
- setUseDefaultRegisterGroups( false );
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
- }
-
- public void removeRegisterGroups( final IRegisterGroup[] groups ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- @Override
- public void run() {
- for ( int i = 0; i < groups.length; ++i ) {
- ((CRegisterGroup)groups[i]).dispose();
- }
- fRegisterGroups.removeAll( Arrays.asList( groups ) );
- setUseDefaultRegisterGroups( false );
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
- }
-
- public void restoreDefaults() {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- @Override
- public void run() {
- synchronized( fRegisterGroups ) {
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- ((CRegisterGroup)it.next()).dispose();
- }
- fRegisterGroups.clear();
- initializeDefaults();
- }
- getDebugTarget().fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
- }
-
- private void createRegisterGroups() {
- fRegisterGroups = Collections.synchronizedList( new ArrayList( 20 ) );
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- String memento = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_REGISTER_GROUPS, "" ); //$NON-NLS-1$
- if ( memento != null && memento.length() > 0 ) {
- initializeFromMemento( memento );
- return;
- }
- }
- catch( CoreException e ) {
- }
- initializeDefaults();
- }
-
- public void targetSuspended() {
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- ((CRegisterGroup)it.next()).targetSuspended();
- }
- }
-
- public CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- private void initializeFromMemento( String memento ) throws CoreException {
- Node node = DebugPlugin.parseDocument( memento );
- if ( node.getNodeType() != Node.ELEMENT_NODE ) {
- abort(InternalDebugCoreMessages.CRegisterManager_0, null);
- }
- Element element = (Element)node;
- if ( !ELEMENT_REGISTER_GROUP_LIST.equals( element.getNodeName() ) ) {
- abort(InternalDebugCoreMessages.CRegisterManager_1, null);
- }
- Node childNode = element.getFirstChild();
- while( childNode != null ) {
- if ( childNode.getNodeType() == Node.ELEMENT_NODE ) {
- Element child = (Element)childNode;
- if ( ELEMENT_REGISTER_GROUP.equals( child.getNodeName() ) ) {
- String groupMemento = child.getAttribute( ATTR_REGISTER_GROUP_MEMENTO );
- CRegisterGroup group = new CRegisterGroup( getDebugTarget() );
- try {
- group.initializeFromMemento( groupMemento );
- doAddRegisterGroup( group );
- }
- catch( CoreException e ) {
- // skip this group
- }
- }
- }
- childNode = childNode.getNextSibling();
- }
- setUseDefaultRegisterGroups( false );
- }
-
- protected void initializeDefaults() {
- setUseDefaultRegisterGroups( true );
- String current = null;
- int startIndex = 0;
- for ( int i = 0; i < fRegisterDescriptors.length; ++i ) {
- CRegisterDescriptor d = (CRegisterDescriptor)fRegisterDescriptors[i];
- if ( current != null && d.getGroupName().compareTo( current ) != 0 ) {
- IRegisterDescriptor[] descriptors = new IRegisterDescriptor[i - startIndex];
- System.arraycopy( fRegisterDescriptors, startIndex, descriptors, 0, descriptors.length );
- fRegisterGroups.add( new CRegisterGroup( getDebugTarget(), current, descriptors ) );
- startIndex = i;
- }
- current = d.getGroupName();
- }
- if ( startIndex < fRegisterDescriptors.length ) {
- IRegisterDescriptor[] descriptors = new IRegisterDescriptor[fRegisterDescriptors.length - startIndex];
- System.arraycopy( fRegisterDescriptors, startIndex, descriptors, 0, descriptors.length );
- fRegisterGroups.add( new CRegisterGroup( getDebugTarget(), current, descriptors ) );
- }
- }
-
- protected synchronized void doAddRegisterGroup( IRegisterGroup group ) {
- fRegisterGroups.add( group );
- }
-
- public void save() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- ILaunchConfigurationWorkingCopy wc = config.getWorkingCopy();
- wc.setAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_REGISTER_GROUPS, getMemento() );
- wc.doSave();
- }
- catch( CoreException e ) {
- CDebugCorePlugin.log( e );
- }
- }
-
- private String getMemento() throws CoreException {
- if ( useDefaultRegisterGroups() || fRegisterGroups == null )
- return ""; //$NON-NLS-1$
- Document document = DebugPlugin.newDocument();
- Element element = document.createElement( ELEMENT_REGISTER_GROUP_LIST );
- Iterator it = fRegisterGroups.iterator();
- while( it.hasNext() ) {
- CRegisterGroup group = (CRegisterGroup)it.next();
- Element child = document.createElement( ELEMENT_REGISTER_GROUP );
- child.setAttribute( ATTR_REGISTER_GROUP_MEMENTO, group.getMemento() );
- element.appendChild( child );
- }
- document.appendChild( element );
- return DebugPlugin.serializeDocument( document );
- }
-
- private void abort( String message, Throwable exception ) throws CoreException {
- IStatus status = new Status( IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), CDebugCorePlugin.INTERNAL_ERROR, message, exception );
- throw new CoreException( status );
- }
-
- public IRegisterDescriptor findDescriptor( String groupName, String name ) {
- for ( int i = 0; i < fRegisterDescriptors.length; ++i ) {
- IRegisterDescriptor d = fRegisterDescriptors[i];
- if ( groupName.equals( d.getGroupName() ) && name.equals( d.getName() ) )
- return d;
- }
- return null;
- }
-
- public void modifyRegisterGroup( final IPersistableRegisterGroup group, final IRegisterDescriptor[] descriptors ) {
- DebugPlugin.getDefault().asyncExec(
- new Runnable() {
- @Override
- public void run() {
- group.setRegisterDescriptors( descriptors );
- ((CRegisterGroup)group).fireChangeEvent( DebugEvent.CONTENT );
- }
- } );
-
- }
-
- protected boolean useDefaultRegisterGroups() {
- return fUseDefaultRegisterGroups;
- }
-
- protected void setUseDefaultRegisterGroups( boolean useDefaultRegisterGroups ) {
- fUseDefaultRegisterGroups = useDefaultRegisterGroups;
- }
-
- public CStackFrame getCurrentFrame() {
- return fCurrentFrame;
- }
-
- private void setCurrentFrame0( CStackFrame currentFrame ) {
- fCurrentFrame = currentFrame;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSettingsManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSettingsManager.java
deleted file mode 100644
index c833a098d2..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSettingsManager.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2012 Freescale Semiconductor 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:
- * Freescale Semiconductor - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.Map;
-import java.util.Set;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-/**
- * Settings manager
- *
- * The settings manager stores a set of settings,
- * (key/value) pairs in the launch configuration so they exist across debug sessions.
- *
- * All active settings are stored together in a single configuration entry
- * (ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_FORMAT).
- *
- * Every setting is identified by a string identifier. That string identifier can be used to
- * store an additional setting, to remove an exiting one or to retrieve a previously stored setting.
- *
- * The setting value consists of a String.
- *
- * Settings fade out automatically so clients do not necessarily need to delete old settings. This makes it
- * possible to build the string identifiers with names out of the user application, like function names or
- * variable names, without the danger of a constantly growing launch configuration.
- * However it also causes that the settings manager must only be used for configurations and customizations for which
- * always reasonable defaults exist.
- *
- * As cleanup policy the settings manager only keeps a certain number of settings and drops the
- * least recently used one when more settings are added. The least recently used order is maintained
- * across debug sessions.
- *
- */
-
-public class CSettingsManager {
-
- /**
- * the name of the XML node for the list
- */
- private static final String CONTENT_LIST = "contentList"; //$NON-NLS-1$
-
- /**
- * the name of the XML node for every format entry
- */
- private static final String CONTENT = "content"; //$NON-NLS-1$
-
- /**
- * the attribute name used to identify the object to store the content for.
- */
- private static final String ATTR_CONTENT_ID = "id"; //$NON-NLS-1$
-
- /**
- * the attribute name of the actual content
- */
- private static final String ATTR_CONTENT_VALUE = "val"; //$NON-NLS-1$
-
- /**
- * Number defining how many settings are stored.
- * Whenever an additional setting is added when there are already MAX_USED_COUNT settings, the
- * least recently used setting is dropped.
- *
- * The actual value is chosen to be high enough for normal use cases, but still low enough to avoid that the launch configuration
- * gets arbitrarily large
- */
- private static int MAX_ELEMENT_COUNT = 100;
-
- /**
- * the map used to actually store the format information
- * as key String are used, values are of type String too.
- *
- * The map automatically is limited to MAX_ELEMENT_COUNT
- * elements, dropping the least recently used one
- * when more elements are added.
- */
- private Map fContentMap = new LinkedHashMap(MAX_ELEMENT_COUNT, 0.75f, true) {
- private static final long serialVersionUID = 1;
- @Override
- protected boolean removeEldestEntry(Map.Entry eldest) {
- return size() > MAX_ELEMENT_COUNT;
- }
- };
-
- /**
- * the debug target we store the values for
- */
- private CDebugTarget fDebugTarget;
-
- /**
- * Store the value for the given id.
- * @param id used to identify the information. Different objects/topics should use different identifiers.
- * @param value content to be stored
- */
- public synchronized void putValue( String id, String value ) {
- fContentMap.put(id, value);
- }
- /**
- * remove the stored format for the given id.
- * @param id used to identify the formatting information. Different objects/topics should use different identifiers.
- */
- public synchronized void removeValue( String id ) {
- fContentMap.remove( id );
- }
-
- /** Retrieve the value for the given id.
- * @param id used to identify the formatting information. Different objects/topics should use different identifiers.
- * @return returns the entry information for the given id, or null if no such information is available.
- */
- public synchronized String getValue( String id ) {
- String entry= (String) fContentMap.get( id );
- return entry;
- }
-
- /** constructor.
- * @param debugTarget
- */
- public CSettingsManager( CDebugTarget debugTarget ) {
- fDebugTarget = debugTarget;
- initialize();
- }
-
- /** get the string format of the current content.
- * Only stores entries which have been used in the last MAX_USED_COUNT debug sessions.
- * @return
- */
- private String getMemento() {
- Document document = null;
- try {
- document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
- Element node = document.createElement( CONTENT_LIST );
- document.appendChild( node );
- Set entrySet = fContentMap.entrySet();
- Iterator it = entrySet.iterator();
- while ( it.hasNext() ) {
- Map.Entry entry= (Map.Entry) it.next();
- String id= (String)entry.getKey();
- String value= (String)entry.getValue();
- Element child = document.createElement( CONTENT );
- child.setAttribute( ATTR_CONTENT_ID, id );
- child.setAttribute( ATTR_CONTENT_VALUE, value );
- node.appendChild( child );
- }
- return CDebugUtils.serializeDocument( document, false );
- }
- catch( ParserConfigurationException e ) {
- DebugPlugin.log( e );
- }
- catch( IOException e ) {
- DebugPlugin.log( e );
- }
- catch( TransformerException e ) {
- DebugPlugin.log( e );
- }
- return null;
- }
-
- /** set the current state to the one given by the memento.
- * @param memento a string representation of the state to be loaded.
- * @throws CoreException
- */
- private void initializeFromMemento( String memento ) throws CoreException {
- try {
- fContentMap.clear();
- DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- StringReader reader = new StringReader( memento );
- InputSource source = new InputSource( reader );
- Element root = parser.parse( source ).getDocumentElement();
- if ( root.getNodeName().equalsIgnoreCase( CONTENT_LIST ) ) {
- NodeList list = root.getChildNodes();
- int i = list.getLength() - 1; // backwards to keep least recent access order.
- for( ; i >= 0; i-- ) {
- Node node = list.item( i );
- short type = node.getNodeType();
- if ( type == Node.ELEMENT_NODE ) {
- Element elem = (Element)node;
- if ( elem.getNodeName().equalsIgnoreCase( CONTENT ) ) {
- String id = elem.getAttribute( ATTR_CONTENT_ID );
- String value= elem.getAttribute( ATTR_CONTENT_VALUE );
- if ( id == null || id.length() == 0 ) {
- DebugPlugin.logMessage( "unexpected entry in CSettingsManager.initializeFromMemento", null ); //$NON-NLS-1$
- continue;
- }
- putValue( id, value );
- }
- }
- }
- return;
- }
- DebugPlugin.logMessage( "unexpected content", null ); //$NON-NLS-1$
- }
- catch( ParserConfigurationException e ) {
- DebugPlugin.log( e );
- }
- catch( SAXException e ) {
- DebugPlugin.log( e );
- }
- catch( IOException e ) {
- DebugPlugin.log( e );
- }
- }
-
- /**
- * read the stored format from the launch configuration
- */
- private void initialize() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- String memento = config.getAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_FORMAT, "" ); //$NON-NLS-1$
- if ( memento != null && memento.trim().length() != 0 )
- initializeFromMemento( memento );
- }
- catch( CoreException e ) {
- DebugPlugin.log( e );
- }
- }
-
- /**
- * store the current content in the launch configuration.
- */
- public synchronized void save() {
- ILaunchConfiguration config = getDebugTarget().getLaunch().getLaunchConfiguration();
- try {
- ILaunchConfigurationWorkingCopy wc = config.getWorkingCopy();
- wc.setAttribute( ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_FORMAT, getMemento() );
- wc.doSave();
- }
- catch( CoreException e ) {
- DebugPlugin.log( e );
- }
- }
-
- /**
- * accessor to the debug target
- */
- IDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java
deleted file mode 100644
index 1326eefebd..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSignalManager.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.ArrayList;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
-import org.eclipse.cdt.debug.internal.core.model.CSignal;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Manages the collection of signals on a debug target.
- */
-public class CSignalManager implements IAdaptable {
-
- /**
- * The debug target associated with this manager.
- */
- private CDebugTarget fDebugTarget;
-
- /**
- * The list of signals.
- */
- private ICSignal[] fSignals = null;
-
- /**
- * The dispose flag.
- */
- private boolean fIsDisposed = false;
-
- /**
- * Constructor for CSignalManager.
- */
- public CSignalManager( CDebugTarget target ) {
- fDebugTarget = target;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICSignalManager#getSignals()
- */
- public ICSignal[] getSignals() throws DebugException {
- if ( !isDisposed() && fSignals == null ) {
- try {
- ICDISignal[] cdiSignals = getDebugTarget().getCDITarget().getSignals();
- ArrayList list = new ArrayList( cdiSignals.length );
- for( int i = 0; i < cdiSignals.length; ++i ) {
- list.add( new CSignal( getDebugTarget(), cdiSignals[i] ) );
- }
- fSignals = (ICSignal[])list.toArray( new ICSignal[list.size()] );
- }
- catch( CDIException e ) {
- throwDebugException( e.getMessage(), DebugException.TARGET_REQUEST_FAILED, e );
- }
- }
- return (fSignals != null) ? fSignals : new ICSignal[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.internal.core.CUpdateManager#dispose()
- */
- public void dispose() {
- if ( fSignals != null )
- for( int i = 0; i < fSignals.length; ++i ) {
- ((CSignal)fSignals[i]).dispose();
- }
- fSignals = null;
- fIsDisposed = true;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- @Override
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( CSignalManager.class ) ) {
- return this;
- }
- if ( adapter.equals( CDebugTarget.class ) ) {
- return getDebugTarget();
- }
- return null;
- }
-
- public void signalChanged( ICDISignal cdiSignal ) {
- CSignal signal = find( cdiSignal );
- if ( signal != null ) {
- signal.fireChangeEvent( DebugEvent.STATE );
- }
- }
-
- private CSignal find( ICDISignal cdiSignal ) {
- try {
- ICSignal[] signals = getSignals();
- for( int i = 0; i < signals.length; ++i )
- if ( signals[i].getName().equals( cdiSignal.getName() ) )
- return (CSignal)signals[i];
- }
- catch( DebugException e ) {
- }
- return null;
- }
-
- protected boolean isDisposed() {
- return fIsDisposed;
- }
-
- /**
- * Throws a debug exception with the given message, error code, and underlying exception.
- */
- protected void throwDebugException( String message, int code, Throwable exception ) throws DebugException {
- throw new DebugException( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), code, message, exception ) );
- }
-
- protected CDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java
deleted file mode 100644
index 321256d94d..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/DebugConfiguration.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2013 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.ICDIDebugger;
-import org.eclipse.cdt.debug.core.ICDebugConfiguration;
-import org.eclipse.cdt.debug.core.ICDebugger;
-import org.eclipse.cdt.utils.Platform;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-
-
-
-public class DebugConfiguration implements ICDebugConfiguration {
- /**
- * The configuration element of the extension.
- */
- private IConfigurationElement fElement;
- private HashSet fModes;
- private HashSet fCPUs;
- private String[] fCoreExt;
-
- public DebugConfiguration(IConfigurationElement element) {
- fElement = element;
- }
-
- private IConfigurationElement getConfigurationElement() {
- return fElement;
- }
-
- @Override
- public ICDebugger getDebugger() throws CoreException {
- Object debugger = getConfigurationElement().createExecutableExtension("class"); //$NON-NLS-1$
- if (debugger instanceof ICDebugger) {
- return (ICDebugger)debugger;
- }
- throw new CoreException(new Status(IStatus.ERROR, CDebugCorePlugin.getUniqueIdentifier(), -1,
- InternalDebugCoreMessages.DebugConfiguration_0, null));
- }
-
- @Override
- public ICDIDebugger createDebugger() throws CoreException {
- Object debugger = getConfigurationElement().createExecutableExtension("class"); //$NON-NLS-1$
- if (debugger instanceof ICDIDebugger) {
- return (ICDIDebugger)debugger;
- }
- return new CDebugAdapter((ICDebugger)debugger);
- }
-
- @Override
- public String getName() {
- String name = getConfigurationElement().getAttribute("name"); //$NON-NLS-1$
- return name != null ? name : ""; //$NON-NLS-1$
- }
-
- @Override
- public String getID() {
- return getConfigurationElement().getAttribute("id"); //$NON-NLS-1$
- }
-
- @Override
- public String getPlatform() {
- String platform = getConfigurationElement().getAttribute("platform"); //$NON-NLS-1$
- if (platform == null) {
- return "*"; //$NON-NLS-1$
- }
- return platform;
- }
-
- @Override
- public String[] getCPUList() {
- return (String[]) getCPUs().toArray(new String[0]);
- }
-
- @Override
- public String[] getModeList() {
- return (String[]) getModes().toArray(new String[0]);
- }
-
- @Override
- public boolean supportsMode(String mode) {
- return getModes().contains(mode);
- }
-
- @Override
- public boolean supportsCPU(String cpu) {
- String nativeCPU = Platform.getOSArch();
- boolean ret = false;
- if (nativeCPU.startsWith(cpu)
- || nativeCPU.equalsIgnoreCase("powerpc") //$NON-NLS-1$
- && (cpu.equalsIgnoreCase("ppc") //$NON-NLS-1$
- || cpu.equalsIgnoreCase("xcoff32") || cpu //$NON-NLS-1$
- .equalsIgnoreCase("xcoff64"))) { //$NON-NLS-1$
- ret = getCPUs().contains(CPU_NATIVE);
- }
- return ret || getCPUs().contains(cpu) || getCPUs().contains("*"); //$NON-NLS-1$
- }
- /**
- * Returns the set of modes specified in the configuration data.
- *
- * @return the set of modes specified in the configuration data
- */
- protected Set getModes() {
- if (fModes == null) {
- String modes = getConfigurationElement().getAttribute("modes"); //$NON-NLS-1$
- if (modes == null) {
- return new HashSet(0);
- }
- StringTokenizer tokenizer = new StringTokenizer(modes, ","); //$NON-NLS-1$
- fModes = new HashSet(tokenizer.countTokens());
- while (tokenizer.hasMoreTokens()) {
- fModes.add(tokenizer.nextToken().trim());
- }
- }
- return fModes;
- }
-
- protected Set getCPUs() {
- if (fCPUs == null) {
- String cpus = getConfigurationElement().getAttribute("cpu"); //$NON-NLS-1$
- if (cpus == null) {
- fCPUs = new HashSet(1);
- fCPUs.add(CPU_NATIVE);
- }
- else {
- String nativeCPU = Platform.getOSArch();
- StringTokenizer tokenizer = new StringTokenizer(cpus, ","); //$NON-NLS-1$
- fCPUs = new HashSet(tokenizer.countTokens());
- while (tokenizer.hasMoreTokens()) {
- String cpu = tokenizer.nextToken().trim();
- fCPUs.add(cpu);
- if (nativeCPU.startsWith(cpu)) { // os arch be cpu{le/be}
- fCPUs.add(CPU_NATIVE);
- }
- }
- }
- }
- return fCPUs;
- }
-
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.ICDebugConfiguration#getCoreFileExtensions()
- */
- @Override
- public String[] getCoreFileExtensions() {
- if (fCoreExt == null) {
- List exts = new ArrayList();
- String cexts = getConfigurationElement().getAttribute("coreFileFilter"); //$NON-NLS-1$
- if (cexts != null) {
- StringTokenizer tokenizer = new StringTokenizer(cexts, ","); //$NON-NLS-1$
- while (tokenizer.hasMoreTokens()) {
- String ext = tokenizer.nextToken().trim();
- exts.add(ext);
- }
- }
- exts.add("*"); //$NON-NLS-1$
- fCoreExt = (String[])exts.toArray(new String[exts.size()]);
- }
- return fCoreExt;
- }
-
- @Override
- public String[] getSupportedBuildConfigPatterns() {
- IConfigurationElement[] patternElems = fElement.getChildren("buildIdPattern"); //$NON-NLS-1$
- String[] patterns = new String[patternElems.length];
- for (int i = 0; i < patternElems.length; ++i) {
- patterns[i] = patternElems[i].getAttribute("pattern"); //$NON-NLS-1$
- }
- return patterns;
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java
deleted file mode 100644
index df341b2f77..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/SessionManager.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2015 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core;
-
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- * Default implementation of the session manager. Terminates the session when the last target is terminated;
- */
-public class SessionManager implements IDebugEventSetListener {
-
- public SessionManager() {
- DebugPlugin.getDefault().addDebugEventListener( this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- public Object getAdapter( Class adapter ) {
- if ( SessionManager.class.equals( adapter ) )
- return this;
- return null;
- }
-
- public void dispose() {
- DebugPlugin.getDefault().removeDebugEventListener( this );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
- */
- @Override
- public void handleDebugEvents( DebugEvent[] events ) {
- for( int i = 0; i < events.length; i++ ) {
- DebugEvent event = events[i];
- if ( event.getKind() == DebugEvent.TERMINATE ) {
- Object element = event.getSource();
- if ( element instanceof IDebugTarget && ((IDebugTarget)element).getAdapter( ICDITarget.class ) != null ) {
- handleTerminateEvent( ((IDebugTarget)element).getLaunch(), ((IDebugTarget)element).getAdapter( ICDITarget.class ).getSession() );
- }
- }
- }
- }
-
- private void handleTerminateEvent( ILaunch launch, ICDISession session ) {
- IDebugTarget[] targets = launch.getDebugTargets();
- boolean terminate = true;
- for( int i = 0; i < targets.length; ++i ) {
- if ( targets[i].getAdapter( ICDITarget.class ) != null && session.equals( targets[i].getAdapter( ICDITarget.class ).getSession() ) && !targets[i].isTerminated() && !targets[i].isDisconnected() )
- terminate = false;
- }
- if ( terminate ) {
- try {
- session.terminate();
- }
- catch( CDIException e ) {
- CDebugCorePlugin.log( e );
- }
- }
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpointFilterExtension.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpointFilterExtension.java
deleted file mode 100644
index 608ba1bbfb..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/breakpoints/CBreakpointFilterExtension.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2012 Wind River Systems 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:
- * Wind River Systems - initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.breakpoints;
-
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpointFilterExtension;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICThread;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IDebugTarget;
-
-/**
- *
- */
-public class CBreakpointFilterExtension implements ICBreakpointFilterExtension {
-
- @Override
- public void initialize(ICBreakpoint breakpoint) {
- }
-
- private Map fFilteredThreadsByTarget = new HashMap( 10 );
-
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#getTargetFilters()
- */
- @Override
- public ICDebugTarget[] getTargetFilters() throws CoreException {
- Set set = fFilteredThreadsByTarget.keySet();
- return (ICDebugTarget[])set.toArray( new ICDebugTarget[set.size()] );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#getThreadFilters(org.eclipse.cdt.debug.core.model.ICDebugTarget)
- */
- @Override
- public ICThread[] getThreadFilters( ICDebugTarget target ) throws CoreException {
- Set set = (Set)fFilteredThreadsByTarget.get( target );
- return ( set != null ) ? (ICThread[])set.toArray( new ICThread[set.size()] ) : null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#removeTargetFilter(org.eclipse.cdt.debug.core.model.ICDebugTarget)
- */
- @Override
- public void removeTargetFilter( ICDebugTarget target ) throws CoreException {
- if ( fFilteredThreadsByTarget.containsKey( target ) ) {
- fFilteredThreadsByTarget.remove( target );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#removeThreadFilters(org.eclipse.cdt.debug.core.model.ICThread[])
- */
- @Override
- public void removeThreadFilters( ICThread[] threads ) throws CoreException {
- if ( threads != null && threads.length > 0 ) {
- IDebugTarget target = threads[0].getDebugTarget();
- if ( fFilteredThreadsByTarget.containsKey( target ) ) {
- Set set = (Set)fFilteredThreadsByTarget.get( target );
- if ( set != null ) {
- set.removeAll( Arrays.asList( threads ) );
- if ( set.isEmpty() ) {
- fFilteredThreadsByTarget.remove( target );
- }
- }
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#setTargetFilter(org.eclipse.cdt.debug.core.model.ICDebugTarget)
- */
- @Override
- public void setTargetFilter( ICDebugTarget target ) throws CoreException {
- fFilteredThreadsByTarget.put( target, null );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICBreakpoint#setThreadFilters(org.eclipse.cdt.debug.core.model.ICThread[])
- */
- @Override
- public void setThreadFilters( ICThread[] threads ) throws CoreException {
- if ( threads != null && threads.length > 0 ) {
- fFilteredThreadsByTarget.put( threads[0].getDebugTarget(), new HashSet( Arrays.asList( threads ) ) );
- }
- }
-
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java
deleted file mode 100644
index 1147e964ec..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCValue.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICValue;
-import org.eclipse.debug.core.DebugException;
-
-/**
- * The abstract super class for the C/C++ value types.
- */
-public abstract class AbstractCValue extends CDebugElement implements ICValue {
-
- /**
- * Parent variable.
- */
- private AbstractCVariable fParent = null;
-
- /**
- * Constructor for AbstractCValue.
- */
- public AbstractCValue( AbstractCVariable parent ) {
- super( (CDebugTarget)parent.getDebugTarget() );
- fParent = parent;
- }
-
- public AbstractCVariable getParentVariable() {
- return fParent;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICValue#evaluateAsExpression(org.eclipse.cdt.debug.core.model.ICStackFrame)
- */
- @Override
- public String evaluateAsExpression( ICStackFrame frame ) {
- String valueString = ""; //$NON-NLS-1$
- AbstractCVariable parent = getParentVariable();
- if ( parent != null ) {
- if ( frame != null && frame.canEvaluate() ) {
- try {
- valueString = frame.evaluateExpressionToString( parent.getExpressionString() );
- }
- catch( DebugException e ) {
- valueString = e.getMessage();
- }
- }
- }
- return valueString;
- }
-
- abstract protected void setChanged( boolean changed );
-
- abstract public void dispose();
-
- abstract protected void reset();
-
- abstract protected void preserve();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java
deleted file mode 100644
index b68d61fb82..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AbstractCVariable.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.debug.core.model.ICStackFrame;
-import org.eclipse.cdt.debug.core.model.ICVariable;
-import org.eclipse.cdt.debug.core.model.IEnableDisableTarget;
-
-/**
- * The super class for all variable types.
- */
-public abstract class AbstractCVariable extends CDebugElement implements ICVariable {
-
- /**
- * The parent object this variable is contained in.
- */
- private CDebugElement fParent;
-
- /**
- * Constructor for AbstractCVariable.
- */
- public AbstractCVariable( CDebugElement parent ) {
- super( (CDebugTarget)parent.getDebugTarget() );
- setParent( parent );
- }
-
- protected CDebugElement getParent() {
- return fParent;
- }
-
- private void setParent( CDebugElement parent ) {
- fParent = parent;
- }
-
- protected ICStackFrame getStackFrame() {
- CDebugElement parent = getParent();
- if ( parent instanceof AbstractCValue ) {
- AbstractCVariable pv = ((AbstractCValue)parent).getParentVariable();
- if ( pv != null )
- return pv.getStackFrame();
- }
- if ( parent instanceof CStackFrame )
- return (CStackFrame)parent;
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- @Override
- public Object getAdapter( Class adapter ) {
- if ( IEnableDisableTarget.class.equals( adapter ) )
- return this;
- return super.getAdapter( adapter );
- }
-
- public abstract void dispose();
-
- protected abstract void resetValue();
-
- protected abstract void setChanged( boolean changed );
-
- protected abstract void preserve();
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java
deleted file mode 100644
index c2a386120d..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmInstruction.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmInstruction;
-
-/**
- * Adapter for ICDIInstruction.
- */
-public class AsmInstruction implements IAsmInstruction {
-
- private ICDIInstruction fCDIInstruction;
-
- private IAddress fAddress;
-
- /**
- * Constructor for AsmInstruction.
- */
- public AsmInstruction( IAddressFactory factory, ICDIInstruction cdiInstruction ) {
- fCDIInstruction = cdiInstruction;
- fAddress = factory.createAddress( cdiInstruction.getAdress() );
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getAdress()
- */
- @Override
- public IAddress getAdress() {
- return fAddress;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getFunctionName()
- */
- @Override
- public String getFunctionName() {
- return fCDIInstruction.getFuntionName();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getInstructionText()
- */
- @Override
- public String getInstructionText() {
- return fCDIInstruction.getInstruction();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getOpcode()
- */
- @Override
- public String getOpcode() {
- return fCDIInstruction.getOpcode();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getArguments()
- */
- @Override
- public String getArguments() {
- return fCDIInstruction.getArgs();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmInstruction#getOffset()
- */
- @Override
- public long getOffset() {
- return fCDIInstruction.getOffset();
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java
deleted file mode 100644
index 0065605b92..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/AsmSourceLine.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmInstruction;
-import org.eclipse.cdt.debug.core.model.IAsmSourceLine;
-
-/**
- * Adapter for ICDIMixedInstruction.
- */
-public class AsmSourceLine implements IAsmSourceLine {
-
- private String fText;
-
- private IAsmInstruction[] fInstructions = null;
-
- private int fLineNumber;
-
- /**
- * Constructor for AsmSourceLine.
- */
- public AsmSourceLine( IAddressFactory factory, String text, ICDIInstruction[] cdiInstructions ) {
- this( factory, text, -1, cdiInstructions );
- }
-
- /**
- * Constructor for AsmSourceLine.
- */
- public AsmSourceLine( IAddressFactory factory, String text, int lineNumber, ICDIInstruction[] cdiInstructions ) {
- fText = text;
- fLineNumber = lineNumber;
- fInstructions = new IAsmInstruction[cdiInstructions.length];
- for ( int i = 0; i < fInstructions.length; ++i ) {
- fInstructions[i] = new AsmInstruction( factory, cdiInstructions[i] );
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmSourceLine#getLineNumber()
- */
- @Override
- public int getLineNumber() {
- return fLineNumber;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IAsmSourceLine#getInstructions()
- */
- @Override
- public IAsmInstruction[] getInstructions() {
- return fInstructions;
- }
-
- @Override
- public String toString() {
- return fText;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java
deleted file mode 100644
index 6dc83cfe94..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CCoreFileDebugTarget.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2012 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import org.eclipse.cdt.core.IBinaryParser.IBinaryExecutable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IProcess;
-
-/**
- * A debug target for the postmortem debugging.
- * @deprecated
- */
-@Deprecated
-public class CCoreFileDebugTarget extends CDebugTarget {
-
-
- /**
- * @param launch
- * @param project
- * @param cdiTarget
- * @param name
- * @param debuggeeProcess
- * @param file
- * @param allowsTerminate
- * @param allowsDisconnect
- */
- public CCoreFileDebugTarget(ILaunch launch, IProject project, ICDITarget cdiTarget, String name, IProcess debuggeeProcess, IBinaryExecutable file) {
- super(launch, project, cdiTarget, name, debuggeeProcess, file, false, false);
- setState(CDebugElementState.TERMINATED);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#isPostMortem()
- */
- @Override
- public boolean isPostMortem() {
- return true;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java
deleted file mode 100644
index 0b8c684dba..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugElement.java
+++ /dev/null
@@ -1,398 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2015 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * Ling Wang, Nokia - Bug 179425
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import com.ibm.icu.text.MessageFormat;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.cdt.debug.core.model.ICDebugElement;
-import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-
-/**
- * The super class of all C/C++ debug model elements.
- */
-abstract public class CDebugElement extends PlatformObject implements ICDebugElement, ICDebugElementStatus {
-
- /**
- * Debug target associated with this element
- */
- private CDebugTarget fDebugTarget;
-
- /**
- * The severity code of this element's status
- */
- private int fSeverity = ICDebugElementStatus.OK;
-
- /**
- * The message of this element's status
- */
- private String fMessage = null;
-
- /**
- * The current state of this element.
- */
- private CDebugElementState fState = CDebugElementState.UNDEFINED;
-
- /**
- * The previous state of this element.
- */
- private CDebugElementState fOldState = CDebugElementState.UNDEFINED;
-
- /**
- * The current state info.
- */
- private Object fCurrentStateInfo = null;
-
- /**
- * Constructor for CDebugElement.
- */
- public CDebugElement( CDebugTarget target ) {
- setDebugTarget( target );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugElement#getModelIdentifier()
- */
- @Override
- public String getModelIdentifier() {
- return CDIDebugModel.getPluginIdentifier();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugElement#getDebugTarget()
- */
- @Override
- public IDebugTarget getDebugTarget() {
- return fDebugTarget;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugElement#getLaunch()
- */
- @Override
- public ILaunch getLaunch() {
- return getDebugTarget().getLaunch();
- }
-
- protected void setDebugTarget( CDebugTarget target ) {
- fDebugTarget = target;
- }
-
- /**
- * Convenience method to log errors
- */
- protected void logError( Exception e ) {
- DebugPlugin.log( e );
- }
-
- /**
- * Convenience method to log errors
- *
- */
- protected void logError( String message ) {
- DebugPlugin.logMessage( message, null );
- }
-
- /**
- * Fires a debug event
- *
- * @param event The debug event to be fired to the listeners
- * @see org.eclipse.debug.core.DebugEvent
- */
- protected void fireEvent( DebugEvent event ) {
- DebugPlugin.getDefault().fireDebugEventSet( new DebugEvent[]{ event } );
- }
-
- protected void fireEventSet( DebugEvent[] events ) {
- DebugPlugin.getDefault().fireDebugEventSet( events );
- }
-
- /**
- * Fires a debug event marking the creation of this element.
- */
- public void fireCreationEvent() {
- fireEvent( new DebugEvent( this, DebugEvent.CREATE ) );
- }
-
- public DebugEvent createCreateEvent() {
- return new DebugEvent( this, DebugEvent.CREATE );
- }
-
- /**
- * Fires a debug event marking the RESUME of this element with the associated detail.
- *
- * @param detail The int detail of the event
- * @see org.eclipse.debug.core.DebugEvent
- */
- public void fireResumeEvent( int detail ) {
- fireEvent( new DebugEvent( this, DebugEvent.RESUME, detail ) );
- }
-
- public DebugEvent createResumeEvent( int detail ) {
- return new DebugEvent( this, DebugEvent.RESUME, detail );
- }
-
- /**
- * Fires a debug event marking the SUSPEND of this element with the associated detail.
- *
- * @param detail The int detail of the event
- * @see org.eclipse.debug.core.DebugEvent
- */
- public void fireSuspendEvent( int detail ) {
- fireEvent( new DebugEvent( this, DebugEvent.SUSPEND, detail ) );
- }
-
- public DebugEvent createSuspendEvent( int detail ) {
- return new DebugEvent( this, DebugEvent.SUSPEND, detail );
- }
-
- /**
- * Fires a debug event marking the termination of this element.
- */
- public void fireTerminateEvent() {
- fireEvent( new DebugEvent( this, DebugEvent.TERMINATE ) );
- }
-
- public DebugEvent createTerminateEvent() {
- return new DebugEvent( this, DebugEvent.TERMINATE );
- }
-
- /**
- * Fires a debug event marking the CHANGE of this element with the specifed detail code.
- *
- * @param detail
- * one of <code>STATE</code> or <code>CONTENT</code>
- */
- public void fireChangeEvent( int detail ) {
- fireEvent( new DebugEvent( this, DebugEvent.CHANGE, detail ) );
- }
-
- public DebugEvent createChangeEvent( int detail ) {
- return new DebugEvent( this, DebugEvent.CHANGE, detail );
- }
-
- /**
- * Returns the CDI session associated with this element.
- *
- * @return the CDI session
- */
- public ICDISession getCDISession() {
- final ICDITarget cdiTarget = getCDITarget();
- return cdiTarget != null ? cdiTarget.getSession() : null;
- }
-
- /**
- * Returns the underlying CDI target associated with this element.
- *
- * @return the underlying CDI target
- */
- public ICDITarget getCDITarget() {
- return getDebugTarget().getAdapter( ICDITarget.class );
- }
-
- /**
- * Throws a new debug exception with a status code of <code>REQUEST_FAILED</code>.
- *
- * @param message Failure message
- * @param e Exception that has occurred (<code>can be null</code>)
- * @throws DebugException The exception with a status code of <code>REQUEST_FAILED</code>
- */
- public static void requestFailed( String message, Exception e ) throws DebugException {
- requestFailed( message, e, DebugException.REQUEST_FAILED );
- }
-
- /**
- * Throws a new debug exception with a status code of <code>TARGET_REQUEST_FAILED</code> with the given underlying exception.
- *
- * @param message Failure message
- * @param e underlying exception that has occurred
- * @throws DebugException The exception with a status code of <code>TARGET_REQUEST_FAILED</code>
- */
- public static void targetRequestFailed( String message, CDIException e ) throws DebugException {
- String format = "Target request failed: {0}"; //$NON-NLS-1$
- // Append a period only when incoming message does not end with one.
- if ( !message.endsWith( "." ) ) //$NON-NLS-1$
- format += "."; //$NON-NLS-1$
-
- requestFailed( MessageFormat.format( format, new String[] { message } ), e, DebugException.TARGET_REQUEST_FAILED );
- }
-
- /**
- * Throws a new debug exception with the given status code.
- *
- * @param message Failure message
- * @param e Exception that has occurred (<code>can be null</code>)
- * @param code status code
- * @throws DebugException a new exception with given status code
- */
- public static void requestFailed( String message, Throwable e, int code ) throws DebugException {
- throwDebugException( message, code, e );
- }
-
- /**
- * Throws a new debug exception with a status code of <code>TARGET_REQUEST_FAILED</code>.
- *
- * @param message Failure message
- * @param e Throwable that has occurred
- * @throws DebugException The exception with a status code of <code>TARGET_REQUEST_FAILED</code>
- */
- public static void targetRequestFailed( String message, Throwable e ) throws DebugException {
- String format = "Target request failed: {0}"; //$NON-NLS-1$
- // Append a period only when incoming message does not end with one.
- if ( !message.endsWith( "." ) ) //$NON-NLS-1$
- format += "."; //$NON-NLS-1$
-
- throwDebugException( MessageFormat.format( format, new String[]{ message } ), DebugException.TARGET_REQUEST_FAILED, e );
- }
-
- /**
- * Throws a new debug exception with a status code of <code>NOT_SUPPORTED</code>.
- *
- * @param message Failure message
- * @throws DebugException The exception with a status code of <code>NOT_SUPPORTED</code>.
- */
- public static void notSupported( String message ) throws DebugException {
- throwDebugException( message, DebugException.NOT_SUPPORTED, null );
- }
-
- /**
- * Throws a debug exception with the given message, error code, and underlying exception.
- */
- protected static void throwDebugException( String message, int code, Throwable exception ) throws DebugException {
- throw new DebugException( new Status( IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), code, message, exception ) );
- }
-
- protected void infoMessage( Throwable e ) {
- IStatus newStatus = new Status( IStatus.INFO, CDebugCorePlugin.getUniqueIdentifier(), ICDebugInternalConstants.STATUS_CODE_INFO, e.getMessage(), null );
- CDebugUtils.info( newStatus, getDebugTarget() );
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(Class)
- */
- @Override
- public Object getAdapter( Class adapter ) {
- if ( adapter.equals( IDebugElement.class ) )
- return this;
- if ( adapter.equals( ICDebugElement.class ) )
- return this;
- if ( adapter.equals( CDebugElement.class ) )
- return this;
- if ( adapter.equals( ICDebugElementStatus.class ) )
- return this;
- if ( adapter.equals( ICDISession.class ) )
- return getCDISession();
- if ( adapter.equals( ICDebugTarget.class ) )
- return getDebugTarget();
- if ( adapter.equals( IDebugTarget.class ) )
- return getDebugTarget();
- // See bug #100261
- if ( adapter.equals( IMemoryBlockRetrieval.class ) )
- return getDebugTarget().getAdapter( adapter );
- if ( adapter.equals( IModuleRetrieval.class ) )
- return getDebugTarget().getAdapter( adapter );
- if ( adapter.equals( ILaunch.class ) )
- return getDebugTarget().getLaunch();
- return super.getAdapter( adapter );
- }
-
- protected void setStatus( int severity, String message ) {
- fSeverity = severity;
- fMessage = message;
- if ( fMessage != null )
- fMessage = fMessage.trim();
- }
-
- protected void resetStatus() {
- fSeverity = ICDebugElementStatus.OK;
- fMessage = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElementStatus#isOK()
- */
- @Override
- public boolean isOK() {
- return (fSeverity == ICDebugElementStatus.OK);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElementStatus#getSeverity()
- */
- @Override
- public int getSeverity() {
- return fSeverity;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElementStatus#getMessage()
- */
- @Override
- public String getMessage() {
- return fMessage;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElement#getState()
- */
- @Override
- public CDebugElementState getState() {
- return fState;
- }
-
- protected synchronized void setState( CDebugElementState state ) throws IllegalArgumentException {
- fOldState = fState;
- fState = state;
- }
-
- protected synchronized void restoreState() {
- fState = fOldState;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugElement#getCurrentStateInfo()
- */
- @Override
- public Object getCurrentStateInfo() {
- return fCurrentStateInfo;
- }
-
- protected void setCurrentStateInfo( Object currentStateInfo ) {
- fCurrentStateInfo = currentStateInfo;
- }
-}
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
deleted file mode 100644
index d8ef4fbf3e..0000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CDebugTarget.java
+++ /dev/null
@@ -1,2065 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2015 QNX Software Systems 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:
- * QNX Software Systems - Initial API and implementation
- * Ken Ryall (Nokia) - bugs 118894, 170027, 91771
- * Wind River Systems - adapted to work with platform Modules view (bug 210558)
- * Marc-Andre Laperle - Bug 382462
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.model;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.IAddress;
-import org.eclipse.cdt.core.IAddressFactory;
-import org.eclipse.cdt.core.IBinaryParser.IBinaryObject;
-import org.eclipse.cdt.core.IBinaryParser.ISymbol;
-import org.eclipse.cdt.debug.core.CDIDebugModel;
-import org.eclipse.cdt.debug.core.CDebugCorePlugin;
-import org.eclipse.cdt.debug.core.CDebugUtils;
-import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
-import org.eclipse.cdt.debug.core.ICDebugConstants;
-import org.eclipse.cdt.debug.core.ICGlobalVariableManager;
-import org.eclipse.cdt.debug.core.cdi.CDIException;
-import org.eclipse.cdt.debug.core.cdi.ICDIAddressLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDIBreakpointHit;
-import org.eclipse.cdt.debug.core.cdi.ICDIEndSteppingRange;
-import org.eclipse.cdt.debug.core.cdi.ICDIErrorInfo;
-import org.eclipse.cdt.debug.core.cdi.ICDIEventBreakpointHit;
-import org.eclipse.cdt.debug.core.cdi.ICDIFunctionLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILineLocation;
-import org.eclipse.cdt.debug.core.cdi.ICDILocation;
-import org.eclipse.cdt.debug.core.cdi.ICDISession;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionConfiguration;
-import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
-import org.eclipse.cdt.debug.core.cdi.ICDISharedLibraryEvent;
-import org.eclipse.cdt.debug.core.cdi.ICDISignalReceived;
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointScope;
-import org.eclipse.cdt.debug.core.cdi.ICDIWatchpointTrigger;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDICreatedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDestroyedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIDisconnectedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIExitedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIRestartedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent;
-import org.eclipse.cdt.debug.core.cdi.event.ICDISuspendedEvent;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIAddressFactoryManagement;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIDisposable;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIGlobalVariableDescriptor;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
-import org.eclipse.cdt.debug.core.cdi.model.ICDISignal;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITarget2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration;
-import org.eclipse.cdt.debug.core.cdi.model.ICDITargetConfiguration2;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
-import org.eclipse.cdt.debug.core.cdi.model.ICDIVariableDescriptor;
-import org.eclipse.cdt.debug.core.model.CDebugElementState;
-import org.eclipse.cdt.debug.core.model.ICBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICBreakpointType;
-import org.eclipse.cdt.debug.core.model.ICDebugElement;
-import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
-import org.eclipse.cdt.debug.core.model.ICDebugTarget;
-import org.eclipse.cdt.debug.core.model.ICGlobalVariable;
-import org.eclipse.cdt.debug.core.model.ICLineBreakpoint;
-import org.eclipse.cdt.debug.core.model.ICModule;
-import org.eclipse.cdt.debug.core.model.ICSignal;
-import org.eclipse.cdt.debug.core.model.IDebuggerProcessSupport;
-import org.eclipse.cdt.debug.core.model.IDisassembly;
-import org.eclipse.cdt.debug.core.model.IExecFileInfo;
-import org.eclipse.cdt.debug.core.model.IGlobalVariableDescriptor;
-import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
-import org.eclipse.cdt.debug.core.model.IPersistableRegisterGroup;
-import org.eclipse.cdt.debug.core.model.IRegisterDescriptor;
-import org.eclipse.cdt.debug.core.sourcelookup.CProjectSourceContainer;
-import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
-import org.eclipse.cdt.debug.core.sourcelookup.ISourceLookupChangeListener;
-import org.eclipse.cdt.debug.internal.core.CBreakpointManager;
-import org.eclipse.cdt.debug.internal.core.CGlobalVariableManager;
-import org.eclipse.cdt.debug.internal.core.CMemoryBlockRetrievalExtension;
-import org.eclipse.cdt.debug.internal.core.CRegisterManager;
-import org.eclipse.cdt.debug.internal.core.CSettingsManager;
-import org.eclipse.cdt.debug.internal.core.CSignalManager;
-import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupParticipant;
-import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceManager;
-import org.eclipse.cdt.utils.Addr64Factory;
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.core.runtime.Preferences.IPropertyChangeListener;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionListener;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.core.model.IMemoryBlockRetrievalExtension;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant;
-import org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.FolderSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
-
-import com.ibm.icu.text.MessageFormat;
-
-/**
- * Debug target for C/C++ debug model.
- */
-public class CDebugTarget extends CDebugElement implements ICDebugTarget, ICDIEventListener, ILaunchListener, IExpressionListener, ISourceLookupChangeListener {
-
- /**
- * Threads contained in this debug target.
- * When a thread starts it is added to the list.
- * When a thread ends it is removed from the list.
- */
- private ArrayList<CThread> fThreads;
-
- /**
- * Associated inferior process, or <code>null</code> if not available.
- */
- private IProcess fDebuggeeProcess = null;
-
- /**
- * The underlying CDI target.
- */
- private ICDITarget fCDITarget;
-
- /**
- * The name of this target.
- */
- private String fName;
-
- /**
- * The launch this target is contained in
- */
- private ILaunch fLaunch;
-
- /**
- * The debug configuration of this session
- */
- private ICDITargetConfiguration fConfig;
-
- /**
- * The disassembly manager for this target.
- */
- private Disassembly fDisassembly;
-
- /**
- * The new disassembly manager for this target.
- */
- private DisassemblyRetrieval fDisassemblyRetrieval;
-
- /**
- * The module manager for this target.
- */
- private CModuleManager fModuleManager;
-
- /**
- * The signal manager for this target.
- */
- private CSignalManager fSignalManager;
-
- /**
- * The register manager for this target.
- */
- private CRegisterManager fRegisterManager;
-
- /**
- * A breakpoint manager for this target.
- */
- private CBreakpointManager fBreakpointManager;
-
- /**
- * The global variable manager for this target.
- */
- private CGlobalVariableManager fGlobalVariableManager;
-
- /**
- * container for Default format information
- */
- private CSettingsManager fFormatManager;
-
- /**
- * The executable binary file associated with this target.
- */
- private IBinaryObject fBinaryFile;
-
- /**
- * The project associated with this target.
- */
- private IProject fProject;
-
- /**
- * Whether the target is little endian.
- */
- private Boolean fIsLittleEndian = null;
-
- /**
- * The target's preference set.
- */
- private Preferences fPreferences = null;
-
- /**
- * The address factory of this target.
- */
- private IAddressFactory fAddressFactory;
-
- /**
- * Support for the memory retrieval on this target.
- */
- private CMemoryBlockRetrievalExtension fMemoryBlockRetrieval;
-
- /**
- * Internal ID that uniquely identifies this CDebugTarget.
- */
- private String internalD = Integer.toString(lastInternalID++);
-
- private static int lastInternalID = 1;
-
- /**
- * Constructor for CDebugTarget.
- */
- public CDebugTarget(ILaunch launch, IProject project, ICDITarget cdiTarget, String name, IProcess debuggeeProcess, IBinaryObject file, boolean allowsTerminate, boolean allowsDisconnect) {
- super(null);
- setLaunch(launch);
- setDebugTarget(this);
- setName(name);
- setProcess(debuggeeProcess);
- setProject(project);
- setExecFile(file);
- setCDITarget(cdiTarget);
- setState(CDebugElementState.SUSPENDED);
- initializePreferences();
- setConfiguration(cdiTarget.getConfiguration());
- setThreadList(new ArrayList<CThread>(5));
- createDisassembly();
- setModuleManager(new CModuleManager(this));
- setSignalManager(new CSignalManager(this));
- setRegisterManager(new CRegisterManager(this));
- setBreakpointManager(new CBreakpointManager(this));
- setGlobalVariableManager(new CGlobalVariableManager(this));
- setFormatManager(new CSettingsManager(this));
- setMemoryBlockRetrieval(new CMemoryBlockRetrievalExtension(this));
- initialize();
- DebugPlugin.getDefault().getLaunchManager().addLaunchListener(this);
- DebugPlugin.getDefault().getExpressionManager().addExpressionListener(this);
- getCDISession().getEventManager().addEventListener(this);
- }
-
- protected void initialize() {
- initializeSourceLookupPath();
- ArrayList<DebugEvent> debugEvents = new ArrayList<DebugEvent>(1);
- debugEvents.add(createCreateEvent());
- initializeThreads(debugEvents);
- initializeBreakpoints();
- initializeRegisters();
- initializeSourceManager();
- initializeModuleManager();
- initializeMemoryBlocks();
- getLaunch().addDebugTarget(this);
- fireEventSet(debugEvents.toArray(new DebugEvent[debugEvents.size()]));
- }
-
- private void initializeBreakpoints() {
- getBreakpointManager().initialize();
- }
-
- public void start(String stopSymbol, boolean resume) throws DebugException {
- ICDITargetConfiguration config = getConfiguration();
- if (config.supportsBreakpoints()) {
- getBreakpointManager().setInitialBreakpoints();
-
- if (stopSymbol != null && stopSymbol.length() != 0) {
- // See if the expression is a numeric address
- try {
- IAddress address = getAddressFactory().createAddress(stopSymbol);
- stopAtAddress(address);
- } catch (NumberFormatException nfexc) {
- // OK, expression is not a simple, absolute numeric value; keep trucking and try to resolve as expression
- stopAtSymbol(stopSymbol);
- }
- }
- }
- if (config.supportsResume() && resume) {
- resume();
- }
- }
-
- /**
- * Adds all of the pre-existing threads to this debug target.
- */
- protected void initializeThreads(List<DebugEvent> debugEvents) {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget == null) {
- return;
- }
-
- ICDIThread[] cdiThreads = new ICDIThread[0];
- try {
- cdiThreads = cdiTarget.getThreads();
- } catch (CDIException e) {
- // ignore
- }
- DebugEvent suspendEvent = null;
- for (int i = 0; i < cdiThreads.length; ++i) {
- CThread thread = createThread(cdiThreads[i]);
- debugEvents.add(thread.createCreateEvent());
- try {
- if (cdiThreads[i].equals(cdiTarget.getCurrentThread()) && thread.isSuspended()) {
- // Use BREAKPOINT as a detail to force perspective switch
- suspendEvent = thread.createSuspendEvent(DebugEvent.BREAKPOINT);
- }
- } catch (CDIException e) {
- // ignore
- }
- }
- if (suspendEvent != null) {
- debugEvents.add(suspendEvent);
- }
- }
-
- protected void initializeRegisters() {
- getRegisterManager().initialize();
- }
-
- protected void initializeSourceManager() {
- ISourceLocator locator = getLaunch().getSourceLocator();
- if (locator instanceof IAdaptable) {
- ICSourceLocator clocator = ((IAdaptable)locator).getAdapter(ICSourceLocator.class);
- if (clocator instanceof IAdaptable) {
- CSourceManager sm = ((IAdaptable)clocator).getAdapter(CSourceManager.class);
- if (sm != null)
- sm.setDebugTarget(this);
- }
- IResourceChangeListener listener = ((IAdaptable)locator).getAdapter(IResourceChangeListener.class);
- if (listener != null)
- CCorePlugin.getWorkspace().addResourceChangeListener(listener);
- }
- }
-
- protected void initializeSourceLookupPath() {
- ISourceLocator locator = getLaunch().getSourceLocator();
- if (locator instanceof ISourceLookupDirector) {
- ISourceLookupParticipant[] participants = ((ISourceLookupDirector)locator).getParticipants();
- for (int i = 0; i < participants.length; ++i) {
- if (participants[i] instanceof CSourceLookupParticipant) {
- ((CSourceLookupParticipant)participants[i]).addSourceLookupChangeListener(this);
- }
- }
- setSourceLookupPath(((ISourceLookupDirector)locator).getSourceContainers());
- }
- }
-
- protected void initializeModuleManager() {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget == null) {
- return;
- }
-
- ICDISharedLibrary[] slibs = new ICDISharedLibrary[0];
- try {
- slibs = cdiTarget.getSharedLibraries();
- } catch (CDIException e) {
- DebugPlugin.log(e);
- }
- ICModule[] modules = null;
- if (getExecFile() != null) {
- modules = new ICModule[slibs.length + 1];
- modules[0] = CModule.createExecutable(this, getExecFile().getPath());
- } else {
- modules = new ICModule[slibs.length];
- }
- for (int i = 0; i < slibs.length; ++i) {
- modules[i + 1] = CModule.createSharedLibrary(this, slibs[i]);
- }
- getModuleManager().addModules(modules);
- }
-
- protected void initializeMemoryBlocks() {
- getMemoryBlockRetrieval().initialize();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDebugTarget#getProcess()
- */
- @Override
- public IProcess getProcess() {
- return fDebuggeeProcess;
- }
-
- /**
- * Sets the process associated with this debug target, possibly <code>null</code>. Set on creation.
- *
- * @param process the system process associated with the underlying CDI target,
- * or <code>null</code> if no process is associated with this debug target
- * (for a core dump debugging).
- */
- protected void setProcess(IProcess debuggeeProcess) {
- fDebuggeeProcess = debuggeeProcess;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugTarget#getThreads()
- */
- @Override
- public IThread[] getThreads() {
- List<CThread> threads = getThreadList();
- return threads.toArray(new IThread[threads.size()]);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugTarget#hasThreads()
- */
- @Override
- public boolean hasThreads() throws DebugException {
- return getThreadList().size() > 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.IDebugTarget#getName()
- */
- @Override
- public String getName() throws DebugException {
- return fName;
- }
-
- /**
- * Sets the name of this debug target.
- *
- * @param name the name of this debug target
- */
- public void setName(String name) {
- fName = name;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDebugTarget#supportsBreakpoint(org.eclipse.debug.core.model.IBreakpoint)
- */
- @Override
- public boolean supportsBreakpoint(IBreakpoint breakpoint) {
- if (!getConfiguration().supportsBreakpoints())
- return false;
- return (breakpoint instanceof ICBreakpoint && getBreakpointManager().supportsBreakpoint((ICBreakpoint)breakpoint));
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.ILaunchListener#launchRemoved(org.eclipse.debug.core.ILaunch)
- */
- @Override
- public void launchRemoved(ILaunch launch) {
- if (!isAvailable()) {
- return;
- }
- if (launch.equals(getLaunch())) {
- // This target has been deregistered, but it hasn't been successfully terminated.
- // Update internal state to reflect that it is disconnected
- disconnected();
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.ILaunchListener#launchAdded(org.eclipse.debug.core.ILaunch)
- */
- @Override
- public void launchAdded(ILaunch launch) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.ILaunchListener#launchChanged(org.eclipse.debug.core.ILaunch)
- */
- @Override
- public void launchChanged(ILaunch launch) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#canTerminate()
- */
- @Override
- public boolean canTerminate() {
- return supportsTerminate() && isAvailable();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#isTerminated()
- */
- @Override
- public boolean isTerminated() {
- return (getState().equals(CDebugElementState.TERMINATED));
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ITerminate#terminate()
- */
- @Override
- public void terminate() throws DebugException {
- if (!canTerminate()) {
- return;
- }
- final CDebugElementState newState = CDebugElementState.TERMINATING;
- changeState(newState);
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {
- cdiTarget.terminate();
- }
- } catch (CDIException e) {
- if (getState() == newState) {
- restoreOldState();
- }
- targetRequestFailed(e.getMessage(), null);
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#canResume()
- */
- @Override
- public boolean canResume() {
- return getConfiguration().supportsResume() && isSuspended();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#canSuspend()
- */
- @Override
- public boolean canSuspend() {
- if (!getConfiguration().supportsSuspend())
- return false;
- if (getState().equals(CDebugElementState.RESUMED)) {
- // only allow suspend if no threads are currently suspended
- IThread[] threads = getThreads();
- for (int i = 0; i < threads.length; i++) {
- if (threads[i].isSuspended()) {
- return false;
- }
- }
- return true;
- }
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#isSuspended()
- */
- @Override
- public boolean isSuspended() {
- return (getState().equals(CDebugElementState.SUSPENDED));
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#resume()
- */
- @Override
- public void resume() throws DebugException {
- if (!canResume())
- return;
- final CDebugElementState newState = CDebugElementState.RESUMING;
- changeState(newState);
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {
- cdiTarget.resume(false);
- }
- } catch (CDIException e) {
- if (getState() == newState) {
- restoreOldState();
- }
- targetRequestFailed(e.getMessage(), null);
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.ISuspendResume#suspend()
- */
- @Override
- public void suspend() throws DebugException {
- if (!canSuspend())
- return;
- final CDebugElementState newState = CDebugElementState.SUSPENDING;
- changeState(newState);
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {
- cdiTarget.suspend();
- }
- } catch (CDIException e) {
- if (getState() == newState) {
- restoreOldState();
- }
- targetRequestFailed(e.getMessage(), null);
- }
- }
-
- protected boolean isSuspending() {
- return (getState().equals(CDebugElementState.SUSPENDING));
- }
-
- /**
- * Notifies threads that the target has been suspended.
- */
- protected void suspendThreads(ICDISuspendedEvent event) {
- Iterator<CThread> it = getThreadList().iterator();
- while (it.hasNext()) {
- CThread thread = it.next();
- ICDIThread suspensionThread = null;
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {
- suspensionThread = cdiTarget.getCurrentThread();
- }
- } catch (CDIException e) {
- // ignore
- }
- thread.suspendByTarget(event.getReason(), suspensionThread);
- }
- }
-
- /**
- * Refreshes the thread list.
- */
- protected synchronized List<CThread> refreshThreads() {
- ArrayList<CThread> newThreads = new ArrayList<CThread>(5);
- ArrayList<CThread> list = new ArrayList<CThread>(5);
- ArrayList<DebugEvent> debugEvents = new ArrayList<DebugEvent>(5);
- List<CThread> oldList = (List<CThread>)getThreadList().clone();
- ICDIThread[] cdiThreads = new ICDIThread[0];
- ICDIThread currentCDIThread = null;
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {
- cdiThreads = cdiTarget.getThreads();
- currentCDIThread = cdiTarget.getCurrentThread();
- }
- } catch (CDIException e) {
- }
- for (int i = 0; i < cdiThreads.length; ++i) {
- CThread thread = findThread(oldList, cdiThreads[i]);
- if (thread == null) {
- thread = new CThread(this, cdiThreads[i]);
- newThreads.add(thread);
- }
- else {
- oldList.remove(thread);
- }
- thread.setCurrent(cdiThreads[i].equals(currentCDIThread));
- list.add(thread);
- }
- Iterator<CThread> it = oldList.iterator();
- while (it.hasNext()) {
- CThread thread = it.next();
- thread.terminated();
- debugEvents.add(thread.createTerminateEvent());
- }
- setThreadList(list);
- it = newThreads.iterator();
- while (it.hasNext()) {
- debugEvents.add(it.next().createCreateEvent());
- }
- if (debugEvents.size() > 0)
- fireEventSet(debugEvents.toArray(new DebugEvent[debugEvents.size()]));
- return newThreads;
- }
-
- /**
- * Notifies threads that the target has been resumed.
- */
- protected synchronized void resumeThreads(List<DebugEvent> debugEvents, int detail) {
- Iterator<CThread> it = getThreadList().iterator();
- while (it.hasNext()) {
- it.next().resumedByTarget(detail, debugEvents);
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointListener#breakpointAdded(org.eclipse.debug.core.model.IBreakpoint)
- */
- @Override
- public void breakpointAdded(IBreakpoint breakpoint) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointListener#breakpointRemoved(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.resources.IMarkerDelta)
- */
- @Override
- public void breakpointRemoved(IBreakpoint breakpoint, IMarkerDelta delta) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IBreakpointListener#breakpointChanged(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.resources.IMarkerDelta)
- */
- @Override
- public void breakpointChanged(IBreakpoint breakpoint, IMarkerDelta delta) {
- }
-
- /**
- * Returns whether this debug target supports disconnecting.
- *
- * @return whether this debug target supports disconnecting
- */
- protected boolean supportsDisconnect() {
- return getConfiguration().supportsDisconnect();
- }
-
- /**
- * Returns whether this debug target supports termination.
- *
- * @return whether this debug target supports termination
- */
- protected boolean supportsTerminate() {
- return getConfiguration().supportsTerminate();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDisconnect#canDisconnect()
- */
- @Override
- public boolean canDisconnect() {
- return supportsDisconnect() && isAvailable();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDisconnect#disconnect()
- */
- @Override
- public void disconnect() throws DebugException {
- if (isDisconnecting()) {
- return;
- }
- final CDebugElementState newState = CDebugElementState.DISCONNECTING;
- changeState(newState);
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {
- cdiTarget.disconnect();
- }
- } catch (CDIException e) {
- if (getState() == newState) {
- restoreOldState();
- }
- targetRequestFailed(e.getMessage(), null);
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDisconnect#isDisconnected()
- */
- @Override
- public boolean isDisconnected() {
- return (getState().equals(CDebugElementState.DISCONNECTED));
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockRetrieval#supportsStorageRetrieval()
- */
- @Override
- public boolean supportsStorageRetrieval() {
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IMemoryBlockRetrieval#getMemoryBlock(long, long)
- */
- @Override
- public IMemoryBlock getMemoryBlock(long startAddress, long length) throws DebugException {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.model.IDebugElement#getLaunch()
- */
- @Override
- public ILaunch getLaunch() {
- return fLaunch;
- }
-
- /**
- * Sets the launch this target is contained in
- *
- * @param launch the launch this target is contained in
- */
- private void setLaunch(ILaunch launch) {
- fLaunch = launch;
- }
-
- /**
- * Returns the list of threads contained in this debug target.
- *
- * @return list of threads
- */
- protected ArrayList<CThread> getThreadList() {
- return fThreads;
- }
-
- /**
- * Sets the list of threads contained in this debug target. Set to an empty collection on creation. Threads are added and removed as they start and end. On
- * termination this collection is set to the immutable singleton empty list.
- *
- * @param threads empty list
- */
- private void setThreadList(ArrayList<CThread> threads) {
- fThreads = threads;
- }
-
- private void setCDITarget(ICDITarget cdiTarget) {
- fCDITarget = cdiTarget;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
- */
- @Override
- public Object getAdapter(@SuppressWarnings("rawtypes") Class adapter) {
- if (adapter.equals(ICDebugElement.class))
- return this;
- if (adapter.equals(CDebugElement.class))
- return this;
- if (adapter.equals(IDebugTarget.class))
- return this;
- if (adapter.equals(ICDebugTarget.class))
- return this;
- if (adapter.equals(CDebugTarget.class))
- return this;
- if (adapter.equals(ICDITarget.class))
- return fCDITarget;
- if (adapter.equals(IDebuggerProcessSupport.class))
- return this;
- if (adapter.equals(IExecFileInfo.class))
- return this;
- if (adapter.equals(CBreakpointManager.class))
- return getBreakpointManager();
- if (adapter.equals(CSignalManager.class))
- return getSignalManager();
- if (adapter.equals(CRegisterManager.class))
- return getRegisterManager();
- if (adapter.equals(ICGlobalVariableManager.class))
- return getGlobalVariableManager();
- if (adapter.equals(ICDISession.class))
- return getCDISession();
- if (adapter.equals(IMemoryBlockRetrievalExtension.class))
- return getMemoryBlockRetrieval();
- if (adapter.equals(IMemoryBlockRetrieval.class))
- return getMemoryBlockRetrieval();
- if (adapter.equals(IModuleRetrieval.class))
- return getModuleManager();
-
- // Force adapters to be loaded. Otherwise the adapter manager may not find
- // the model proxy adapter for CDT debug elements.
- Platform.getAdapterManager().loadAdapter(this, adapter.getName());
-
- return super.getAdapter(adapter);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvents(org.eclipse.cdt.debug.core.cdi.event.ICDIEvent[])
- */
- @Override
- public void handleDebugEvents(ICDIEvent[] events) {
- for (int i = 0; i < events.length; i++) {
- ICDIEvent event = events[i];
- ICDIObject source = event.getSource();
- final ICDITarget cdiTarget = getCDITarget();
- if (source == null && event instanceof ICDIDestroyedEvent) {
- handleTerminatedEvent((ICDIDestroyedEvent)event);
- }
- else if (source != null && cdiTarget != null && source.getTarget().equals(cdiTarget)) {
- if (event instanceof ICDICreatedEvent) {
- if (source instanceof ICDIThread) {
- handleThreadCreatedEvent((ICDICreatedEvent)event);
- }
- if (source instanceof ICDISharedLibrary) {
- getModuleManager().sharedLibraryLoaded((ICDISharedLibrary)source);
- }
- }
- else if (event instanceof ICDISuspendedEvent) {
- if (source instanceof ICDITarget) {
- handleSuspendedEvent((ICDISuspendedEvent)event);
- }
- }
- else if (event instanceof ICDIResumedEvent) {
- if (source instanceof ICDITarget) {
- handleResumedEvent((ICDIResumedEvent)event);
- }
- }
- else if (event instanceof ICDIExitedEvent) {
- if (source instanceof ICDITarget) {
- handleExitedEvent((ICDIExitedEvent)event);
- }
- }
- else if (event instanceof ICDIDestroyedEvent) {
- if (source instanceof ICDIThread) {
- handleThreadTerminatedEvent((ICDIDestroyedEvent)event);
- }
- if (source instanceof ICDISharedLibrary) {
- getModuleManager().sharedLibraryUnloaded((ICDISharedLibrary)source);
- }
- }
- else if (event instanceof ICDIDisconnectedEvent) {
- if (source instanceof ICDITarget) {
- handleDisconnectedEvent((ICDIDisconnectedEvent)event);
- }
- }
- else if (event instanceof ICDIChangedEvent) {
- if (source instanceof ICDITarget) {
- handleChangedEvent((ICDIChangedEvent)event);
- }
- if (source instanceof ICDISharedLibrary) {
- handleSymbolsLoaded((ICDISharedLibrary)source);
- }
- if (source instanceof ICDISignal) {
- getSignalManager().signalChanged((ICDISignal)source);
- }
- }
- else if (event instanceof ICDIRestartedEvent) {
- if (source instanceof ICDITarget) {
- handleRestartedEvent((ICDIRestartedEvent)event);
- }
- }
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRestart#canRestart()
- */
- @Override
- public boolean canRestart() {
- return getConfiguration().supportsRestart() && isSuspended();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IRestart#restart()
- */
- @Override
- public void restart() throws DebugException {
- if (!canRestart()) {
- return;
- }
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget == null) {
- return;
- }
-
- try {
- ILaunchConfiguration launchConfig = getLaunch().getLaunchConfiguration();
- if (launchConfig.getAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_DEFAULT)) {
- String mainSymbol = launchConfig.getAttribute(ICDTLaunchConfigurationConstants.ATTR_DEBUGGER_STOP_AT_MAIN_SYMBOL, ICDTLaunchConfigurationConstants.DEBUGGER_STOP_AT_MAIN_SYMBOL_DEFAULT);
- ICDILocation location = null;
- // See if the expression is a numeric address
- try {
- IAddress address = getAddressFactory().createAddress(mainSymbol);
- location = cdiTarget.createAddressLocation(address.getValue());
- } catch (NumberFormatException nfexc) {
- // OK, expression is not a simple, absolute numeric value; keep trucking and try to resolve as expression
- location = cdiTarget.createFunctionLocation("", mainSymbol); //$NON-NLS-1$
- }
-
- setInternalTemporaryBreakpoint(location);
- }
- } catch (CoreException e) {
- requestFailed(e.getMessage(), e);
- }
-
- final CDebugElementState newState = CDebugElementState.RESTARTING;
- changeState(newState);
- try {
- cdiTarget.restart();
- } catch (CDIException e) {
- if (getState() == newState) {
- restoreOldState();
- }
- targetRequestFailed(e.getMessage(), e);
- }
- }
-
- /**
- * Returns whether this target is available to handle client requests.
- *
- * @return whether this target is available to handle client requests
- */
- public boolean isAvailable() {
- return !(isTerminated() || isTerminating() || isDisconnected() || isDisconnecting());
- }
-
- /**
- * Returns whether this target is in the process of terminating.
- *
- * @return whether this target is terminating
- */
- protected boolean isTerminating() {
- return (getState().equals(CDebugElementState.TERMINATING));
- }
-
- /**
- * Updates the state of this target to be terminated, if not already terminated.
- */
- protected void terminated() {
- if (!isTerminated()) {
- if (!isDisconnected()) {
- setState(CDebugElementState.TERMINATED);
- }
- cleanup();
- fireTerminateEvent();
- }
- }
-
- /**
- * Returns whether this target is in the process of terminating.
- *
- * @return whether this target is terminating
- */
- protected boolean isDisconnecting() {
- return (getState().equals(CDebugElementState.DISCONNECTING));
- }
-
- /**
- * Updates the state of this target for disconnection.
- */
- protected void disconnected() {
- if (!isDisconnected()) {
- setState(CDebugElementState.DISCONNECTED);
- cleanup();
- fireTerminateEvent();
- }
- }
-
- /**
- * Cleans up the internal state of this debug target as a result of a session ending.
- */
- protected void cleanup() {
- resetStatus();
- removeAllThreads();
- getCDISession().getEventManager().removeEventListener(this);
- DebugPlugin.getDefault().getExpressionManager().removeExpressionListener(this);
- DebugPlugin.getDefault().getLaunchManager().removeLaunchListener(this);
- saveFormats();
- saveGlobalVariables();
- disposeGlobalVariableManager();
- disposeModuleManager();
- disposeSignalManager();
- saveRegisterGroups();
- disposeRegisterManager();
- saveMemoryBlocks();
- disposeMemoryBlockRetrieval();
- disposeDisassembly();
- disposeSourceManager();
- disposeSourceLookupPath();
- disposeBreakpointManager();
- removeAllExpressions();
- disposePreferences();
-
- ICDITarget cdiTarget = getCDITarget();
- // TODO: apparently we're not really done with the ICDITarget. The
- // arrival of a terminate event from gdb requires access to this (see
- // SessionManager.handleDebugEvent()). Reported by Mikhail. Need to
- // revisit this.
- // setCDITarget(null);
- if (cdiTarget instanceof ICDIDisposable) {
- ((ICDIDisposable)cdiTarget).dispose();
- }
- }
-
- /**
- * Removes all threads from this target's collection of threads, firing a terminate event for each.
- */
- protected void removeAllThreads() {
- List<CThread> threads = getThreadList();
- setThreadList(new ArrayList<CThread>(0));
- ArrayList<DebugEvent> debugEvents = new ArrayList<DebugEvent>(threads.size());
- Iterator<CThread> it = threads.iterator();
- while (it.hasNext()) {
- CThread thread = it.next();
- thread.terminated();
- debugEvents.add(thread.createTerminateEvent());
- }
- fireEventSet(debugEvents.toArray(new DebugEvent[debugEvents.size()]));
- }
-
- /**
- * Removes all expressions from this target.
- */
- protected void removeAllExpressions() {
- IExpressionManager em = DebugPlugin.getDefault().getExpressionManager();
- IExpression[] expressions = em.getExpressions();
- for (int i = 0; i < expressions.length; ++i) {
- if (expressions[i] instanceof CExpression && expressions[i].getDebugTarget().equals(this)) {
- em.removeExpression(expressions[i]);
- }
- }
- }
-
- /**
- * Creates, adds and returns a thread for the given underlying CDI thread. A creation event is fired for the thread. Returns <code>null</code> if during
- * the creation of the thread this target is set to the disconnected state.
- *
- * @param thread the underlying CDI thread
- * @return model thread
- */
- protected CThread createThread(ICDIThread cdiThread) {
- CThread thread = new CThread(this, cdiThread);
- getThreadList().add(thread);
- return thread;
- }
-
- private void handleSuspendedEvent(ICDISuspendedEvent event) {
- setState(CDebugElementState.SUSPENDED);
- ICDISessionObject reason = event.getReason();
- setCurrentStateInfo(reason);
- // Reset the registers that have errors.
- getRegisterManager().targetSuspended();
- getBreakpointManager().skipBreakpoints(false);
- List<CThread> newThreads = refreshThreads();
- if (event.getSource() instanceof ICDITarget) {
- if (!(this.getConfiguration() instanceof ICDITargetConfiguration2) || !((ICDITargetConfiguration2)this.getConfiguration()).supportsThreadControl())
- suspendThreads(event);
- } else if (event.getSource() instanceof ICDIThread) {
- // We need this for debuggers that don't have notifications
- // for newly created threads.
- CThread thread = findThread((ICDIThread)event.getSource());
- if (thread != null && newThreads.contains(thread)) {
- ICDIEvent[] evts = new ICDIEvent[]{ event };
- thread.handleDebugEvents(evts);
- }
- }
- if (reason instanceof ICDIEndSteppingRange) {
- handleEndSteppingRange((ICDIEndSteppingRange)reason);
- }
- else if (reason instanceof ICDIBreakpointHit) {
- handleBreakpointHit((ICDIBreakpointHit)reason);
- }
- else if (reason instanceof ICDISignalReceived) {
- handleSuspendedBySignal((ICDISignalReceived)reason);
- }
- else if (reason instanceof ICDIWatchpointTrigger) {
- handleWatchpointTrigger((ICDIWatchpointTrigger)reason);
- }
- else if (reason instanceof ICDIWatchpointScope) {
- handleWatchpointScope((ICDIWatchpointScope)reason);
- }
- else if (reason instanceof ICDIErrorInfo) {
- handleErrorInfo((ICDIErrorInfo)reason);
- }
- else if (reason instanceof ICDISharedLibraryEvent) {
- handleSuspendedBySolibEvent((ICDISharedLibraryEvent)reason);
- }
- else if (reason instanceof ICDIEventBreakpointHit) {
- handleEventBreakpointHit((ICDIEventBreakpointHit)reason);
- }
- else { // reason is not specified
- fireSuspendEvent(DebugEvent.UNSPECIFIED);
- }
- }
-
- private void handleResumedEvent(ICDIResumedEvent event) {
- setState(CDebugElementState.RESUMED);
- setCurrentStateInfo(null);
- resetStatus();
- ArrayList<DebugEvent> debugEvents = new ArrayList<DebugEvent>(10);
- int detail = DebugEvent.UNSPECIFIED;
- switch(event.getType()) {
- case ICDIResumedEvent.CONTINUE:
- detail = DebugEvent.CLIENT_REQUEST;
- break;
- case ICDIResumedEvent.STEP_INTO:
- case ICDIResumedEvent.STEP_INTO_INSTRUCTION:
- detail = DebugEvent.STEP_INTO;
- break;
- case ICDIResumedEvent.STEP_OVER:
- case ICDIResumedEvent.STEP_OVER_INSTRUCTION:
- detail = DebugEvent.STEP_OVER;
- break;
- case ICDIResumedEvent.STEP_RETURN:
- detail = DebugEvent.STEP_RETURN;
- break;
- }
- debugEvents.add(createResumeEvent(detail));
-
- if (!(this.getConfiguration() instanceof ICDITargetConfiguration2) || !((ICDITargetConfiguration2)this.getConfiguration()).supportsThreadControl())
- resumeThreads(debugEvents, detail);
-
- fireEventSet(debugEvents.toArray(new DebugEvent[debugEvents.size()]));
- }
-
- private void handleEndSteppingRange(ICDIEndSteppingRange endSteppingRange) {
- fireSuspendEvent(DebugEvent.UNSPECIFIED);
- }
-
- private void handleBreakpointHit(ICDIBreakpointHit breakpointHit) {
- fireSuspendEvent(DebugEvent.BREAKPOINT);
- }
-
- private void handleEventBreakpointHit(ICDIEventBreakpointHit breakpointHit) {
- fireSuspendEvent(DebugEvent.BREAKPOINT);
- }
-
- private void handleWatchpointTrigger(ICDIWatchpointTrigger wt) {
- fireSuspendEvent(DebugEvent.BREAKPOINT);
- }
-
- private void handleWatchpointScope(ICDIWatchpointScope ws) {
- getBreakpointManager().watchpointOutOfScope(ws.getWatchpoint());
- fireSuspendEvent(DebugEvent.BREAKPOINT);
- }
-
- private void handleSuspendedBySignal(ICDISignalReceived signal) {
- fireSuspendEvent(DebugEvent.CLIENT_REQUEST);
- }
-
- private void handleErrorInfo(ICDIErrorInfo info) {
- setStatus(ICDebugElementStatus.ERROR, (info != null) ? info.getMessage() : null);
- if (info != null) {
- MultiStatus status = new MultiStatus(CDebugCorePlugin.getUniqueIdentifier(), ICDebugInternalConstants.STATUS_CODE_ERROR, CoreModelMessages.getString("CDebugTarget.1"), //$NON-NLS-1$
- null);
- StringTokenizer st = new StringTokenizer(info.getDetailMessage(), "\n\r"); //$NON-NLS-1$
- while (st.hasMoreTokens()) {
- String token = st.nextToken();
- if (token.length() > 200) {
- token = token.substring(0, 200);
- }
- status.add(new Status(IStatus.ERROR, status.getPlugin(), ICDebugInternalConstants.STATUS_CODE_ERROR, token, null));
- }
- CDebugUtils.error(status, this);
- }
- fireSuspendEvent(DebugEvent.UNSPECIFIED);
- }
-
- private void handleSuspendedBySolibEvent(ICDISharedLibraryEvent solibEvent) {
- fireSuspendEvent(DebugEvent.UNSPECIFIED);
- }
-
- private void handleExitedEvent(ICDIExitedEvent event) {
- removeAllThreads();
- setState(CDebugElementState.EXITED);
- setCurrentStateInfo(event.getReason());
- fireChangeEvent(DebugEvent.CONTENT);
- ICDISessionConfiguration sessionConfig = getCDISession().getConfiguration();
- if (sessionConfig != null && sessionConfig.terminateSessionOnExit())
- terminated();
- }
-
- private void handleTerminatedEvent(ICDIDestroyedEvent event) {
- terminated();
- }
-
- private void handleDisconnectedEvent(ICDIDisconnectedEvent event) {
- disconnected();
- }
-
- private void handleChangedEvent(ICDIChangedEvent event) {
- }
-
- private void handleRestartedEvent(ICDIRestartedEvent event) {
- }
-
- private void handleThreadCreatedEvent(ICDICreatedEvent event) {
- ICDIThread cdiThread = (ICDIThread)event.getSource();
- CThread thread = findThread(cdiThread);
- if (thread == null) {
- thread = createThread(cdiThread);
- thread.fireCreationEvent();
- }
- }
-
- private void handleThreadTerminatedEvent(ICDIDestroyedEvent event) {
- ICDIThread cdiThread = (ICDIThread)event.getSource();
- List<CThread> threads = getThreadList();
- List<CThread> threadsToRemove = new ArrayList<CThread>(1);
- for (int i = 0; i < threads.size(); i++) {
- CThread cthread = threads.get(i);
- // It's possible CThread has handled the thread-terminated event
- // before us (by appearing first in the EventManager)
- // and has disassociated itself from the ICDIThread.
- // So handle any disassociated CThreads we find. Chances are
- // there's only one and it's the one we got the terminated event
- // for. See bugzilla 254888.
- ICDIThread cdithread = cthread.getCDIThread();
- if (cdithread == null || cdithread.equals(cdiThread)) {
- threadsToRemove.add(cthread);
- }
- }
- for (CThread cthread : threadsToRemove) {
- threads.remove(cthread);
- cthread.terminated();
- cthread.fireTerminateEvent();
- }
- }
-
- /**
- * Finds and returns the model thread for the associated CDI thread, or <code>null</code> if not found.
- *
- * @param the underlying CDI thread
- * @return the associated model thread
- */
- public CThread findThread(ICDIThread cdiThread) {
- return findThread(getThreadList(), cdiThread);
- }
-
- public CThread findThread(List<CThread> threads, ICDIThread cdiThread) {
- for (int i = 0; i < threads.size(); i++) {
- CThread t = threads.get(i);
- ICDIThread thisCdiThread = t.getCDIThread();
- if (thisCdiThread != null && thisCdiThread.equals(cdiThread))
- return t;
- }
- return null;
- }
-
- /**
- * Returns the debug configuration of this target.
- *
- * @return the debug configuration of this target
- */
- protected ICDITargetConfiguration getConfiguration() {
- return fConfig;
- }
-
- /**
- * Sets the debug configuration of this target.
- *
- * @param config the debug configuration to set
- */
- private void setConfiguration(ICDITargetConfiguration config) {
- fConfig = config;
- }
-
- protected boolean supportsExpressionEvaluation() {
- return getConfiguration().supportsExpressionEvaluation();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IExpressionListener#expressionAdded(org.eclipse.debug.core.model.IExpression)
- */
- @Override
- public void expressionAdded(IExpression expression) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IExpressionListener#expressionChanged(org.eclipse.debug.core.model.IExpression)
- */
- @Override
- public void expressionChanged(IExpression expression) {
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.debug.core.IExpressionListener#expressionRemoved(org.eclipse.debug.core.model.IExpression)
- */
- @Override
- public void expressionRemoved(IExpression expression) {
- if (expression instanceof CExpression && expression.getDebugTarget().equals(this)) {
- ((CExpression)expression).dispose();
- }
- }
-
- public void setInternalTemporaryBreakpoint(ICDILocation location) throws DebugException {
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget == null) {
- return;
- }
- if (location instanceof ICDIFunctionLocation) {
- cdiTarget.setFunctionBreakpoint(ICBreakpointType.TEMPORARY, (ICDIFunctionLocation)location, null, false);
- } else if (location instanceof ICDILineLocation) {
- cdiTarget.setLineBreakpoint(ICBreakpointType.TEMPORARY, (ICDILineLocation)location, null, false);
- } else if (location instanceof ICDIAddressLocation) {
- cdiTarget.setAddressBreakpoint(ICBreakpointType.TEMPORARY, (ICDIAddressLocation)location, null, false);
- } else {
- // ???
- targetRequestFailed("not_a_location", null); //$NON-NLS-1$
- }
- } catch (CDIException e) {
- targetRequestFailed(e.getMessage(), null);
- }
- }
-
- protected IThread getCurrentThread() {
- IThread[] threads = getThreads();
- for (int i = 0; i < threads.length; ++i) {
- if (((CThread)threads[i]).isCurrent())
- return threads[i];
- }
- return null;
- }
-
- protected ISourceLocator getSourceLocator() {
- return getLaunch().getSourceLocator();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IExecFileInfo#isLittleEndian()
- */
- @Override
- public boolean isLittleEndian() {
- if (fIsLittleEndian == null) {
- fIsLittleEndian = Boolean.TRUE;
- IBinaryObject file;
- file = getBinaryFile();
- if (file != null) {
- fIsLittleEndian = Boolean.valueOf(file.isLittleEndian());
- }
- }
- return fIsLittleEndian.booleanValue();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IExecFileInfo#getExecFile()
- */
- @Override
- public IBinaryObject getExecFile() {
- return getBinaryFile();
- }
-
- public IBinaryObject getBinaryFile() {
- return fBinaryFile;
- }
-
- private void setExecFile(IBinaryObject file) {
- fBinaryFile = file;
- }
-
- private void setProject(IProject project) {
- fProject = project;
- }
-
- public IProject getProject() {
- return fProject;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IExecFileInfo#getGlobals()
- */
- @Override
- public IGlobalVariableDescriptor[] getGlobals() throws DebugException {
- ICDITarget cdiTarget = getCDITarget();
- // If the backend can give us the globals...
- boolean hasCDIGlobals = false;
- ArrayList<IGlobalVariableDescriptor> list = new ArrayList<IGlobalVariableDescriptor>();
- if (cdiTarget instanceof ICDITarget2) {
- ICDIGlobalVariableDescriptor[] cdiGlobals = ((ICDITarget2) cdiTarget).getGlobalVariables();
- hasCDIGlobals = cdiGlobals != null;
- if (hasCDIGlobals) {
- for (int i = 0; i < cdiGlobals.length; i++) {
- list.add(CVariableFactory.createGlobalVariableDescriptor(cdiGlobals[i].getName(), null));
- }
- }
- }
- // otherwise ask the binary
- if (!hasCDIGlobals) {
- IBinaryObject file = getBinaryFile();
- if (file != null) {
- list.addAll(getCFileGlobals(file));
- }
- }
- return list.toArray(new IGlobalVariableDescriptor[list.size()]);
- }
-
- private List<IGlobalVariableDescriptor> getCFileGlobals(IBinaryObject file) {
- ArrayList<IGlobalVariableDescriptor> list = new ArrayList<IGlobalVariableDescriptor>();
- ISymbol[] symbols = file.getSymbols();
- for (int i = 0; i < symbols.length; ++i) {
- if (symbols[i].getType() == ISymbol.VARIABLE) {
- list.add(CVariableFactory.createGlobalVariableDescriptor(symbols[i]));
- }
- }
- return list;
- }
-
- protected void setModuleManager(CModuleManager mm) {
- fModuleManager = mm;
- }
-
- protected CModuleManager getModuleManager() {
- return fModuleManager;
- }
-
- protected void disposeModuleManager() {
- fModuleManager.dispose();
- fModuleManager = null;
- }
-
- protected void setSignalManager(CSignalManager sm) {
- fSignalManager = sm;
- }
-
- protected CSignalManager getSignalManager() {
- return fSignalManager;
- }
-
- protected void disposeSignalManager() {
- fSignalManager.dispose();
- }
-
- protected void saveRegisterGroups() {
- fRegisterManager.save();
- }
-
- protected void disposeRegisterManager() {
- fRegisterManager.dispose();
- }
-
- protected void saveGlobalVariables() {
- fGlobalVariableManager.save();
- }
-
- protected void saveFormats() {
- fFormatManager.save();
- }
-
- protected void disposeGlobalVariableManager() {
- fGlobalVariableManager.dispose();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IResumeWithoutSignal#canResumeWithoutSignal()
- */
- @Override
- public boolean canResumeWithoutSignal() {
- // Check if the configuration supports this!!!
- return (canResume() && getCurrentStateInfo() instanceof ICDISignalReceived);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IResumeWithoutSignal#resumeWithoutSignal()
- */
- @Override
- public void resumeWithoutSignal() throws DebugException {
- if (!canResume())
- return;
- final CDebugElementState newState = CDebugElementState.RESUMING;
- changeState(newState);
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {
- cdiTarget.resume(false);
- }
- } catch (CDIException e) {
- if (getState() == newState) {
- restoreOldState();
- }
- targetRequestFailed(e.getMessage(), e);
- }
- }
-
- public CRegisterManager getRegisterManager() {
- // Workaround for bug #309212. gdb 7.0 returns "No registers" error
- // at the beginning of the session.
- fRegisterManager.initialize();
- return fRegisterManager;
- }
-
- protected void setRegisterManager(CRegisterManager registerManager) {
- fRegisterManager = registerManager;
- }
-
- public IRegisterGroup[] getRegisterGroups(CStackFrame frame) throws DebugException {
- return getRegisterManager().getRegisterGroups(frame);
- }
-
- protected void disposeSourceManager() {
- ISourceLocator locator = getSourceLocator();
- if (locator instanceof IAdaptable) {
- IResourceChangeListener listener = ((IAdaptable)locator).getAdapter(IResourceChangeListener.class);
- if (listener != null)
- CCorePlugin.getWorkspace().removeResourceChangeListener(listener);
- }
- }
-
- protected void disposeSourceLookupPath() {
- ISourceLocator locator = getLaunch().getSourceLocator();
- if (locator instanceof ISourceLookupDirector) {
- ISourceLookupParticipant[] participants = ((ISourceLookupDirector)locator).getParticipants();
- for (int i = 0; i < participants.length; ++i) {
- if (participants[i] instanceof CSourceLookupParticipant) {
- ((CSourceLookupParticipant)participants[i]).removeSourceLookupChangeListener(this);
- }
- }
- }
- }
-
- protected void saveMemoryBlocks() {
- getMemoryBlockRetrieval().save();
- }
-
- protected void disposeMemoryBlockRetrieval() {
- getMemoryBlockRetrieval().dispose();
- }
-
- protected CBreakpointManager getBreakpointManager() {
- return fBreakpointManager;
- }
-
- protected void setBreakpointManager(CBreakpointManager manager) {
- fBreakpointManager = manager;
- }
-
- protected void disposeBreakpointManager() {
- if (getBreakpointManager() != null)
- getBreakpointManager().dispose();
- }
-
- /* (non-Javadoc)
- * @see java.lang.Object#toString()
- */
- @Override
- public String toString() {
- String result = ""; //$NON-NLS-1$
- try {
- result = getName();
- } catch (DebugException e) {
- }
- return result;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#getDisassembly()
- */
- @Override
- public IDisassembly getDisassembly() throws DebugException {
- return fDisassembly;
- }
-
- public DisassemblyRetrieval getDisassemblyRetrieval() {
- return fDisassemblyRetrieval;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#getSignals()
- */
- @Override
- public ICSignal[] getSignals() throws DebugException {
- CSignalManager sm = getSignalManager();
- if (sm != null) {
- return sm.getSignals();
- }
- return new ICSignal[0];
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#hasSignals()
- */
- @Override
- public boolean hasSignals() throws DebugException {
- CSignalManager sm = getSignalManager();
- if (sm != null) {
- return (sm.getSignals().length > 0);
- }
- return false;
- }
-
- private void createDisassembly() {
- this.fDisassembly = new Disassembly(this);
- this.fDisassemblyRetrieval = new DisassemblyRetrieval(this);
- }
-
- private void disposeDisassembly() {
- if (fDisassembly != null)
- fDisassembly.dispose();
- fDisassembly = null;
- if (fDisassemblyRetrieval != null)
- fDisassemblyRetrieval.dispose();
- fDisassemblyRetrieval = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.IBreakpointTarget#getBreakpointAddress(org.eclipse.cdt.debug.core.model.ICLineBreakpoint)
- */
- @Override
- public IAddress getBreakpointAddress(ICLineBreakpoint breakpoint) throws DebugException {
- return (getBreakpointManager() != null) ? getBreakpointManager().getBreakpointAddress(breakpoint) : getAddressFactory().getZero();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ISteppingModeTarget#enableInstructionStepping(boolean)
- */
- @Override
- public void enableInstructionStepping(boolean enabled) {
- fPreferences.setValue(PREF_INSTRUCTION_STEPPING_MODE, enabled);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ISteppingModeTarget#isInstructionSteppingEnabled()
- */
- @Override
- public boolean isInstructionSteppingEnabled() {
- return fPreferences.getBoolean(PREF_INSTRUCTION_STEPPING_MODE);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ISteppingModeTarget#supportsInstructionStepping()
- */
- @Override
- public boolean supportsInstructionStepping() {
- return getConfiguration().supportsInstructionStepping();
- }
-
- private void initializePreferences() {
- fPreferences = new Preferences();
- fPreferences.setDefault(PREF_INSTRUCTION_STEPPING_MODE, CDebugCorePlugin.getDefault().getPluginPreferences().getBoolean(ICDebugConstants.PREF_INSTRUCTION_STEP_MODE_ON));
- }
-
- private void disposePreferences() {
- if (fPreferences != null) {
- // persist current instruction stepping mode
- CDebugCorePlugin.getDefault().getPluginPreferences().setValue(ICDebugConstants.PREF_INSTRUCTION_STEP_MODE_ON, fPreferences.getBoolean(PREF_INSTRUCTION_STEPPING_MODE));
- CDebugCorePlugin.getDefault().savePluginPreferences();
- }
- fPreferences = null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ITargetProperties#addPropertyChangeListener(org.eclipse.core.runtime.Preferences.IPropertyChangeListener)
- */
- @Override
- public void addPropertyChangeListener(IPropertyChangeListener listener) {
- if (fPreferences != null)
- fPreferences.addPropertyChangeListener(listener);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ITargetProperties#removePropertyChangeListener(org.eclipse.core.runtime.Preferences.IPropertyChangeListener)
- */
- @Override
- public void removePropertyChangeListener(IPropertyChangeListener listener) {
- if (fPreferences != null)
- fPreferences.removePropertyChangeListener(listener);
- }
-
- protected CGlobalVariableManager getGlobalVariableManager() {
- return fGlobalVariableManager;
- }
-
- private void setGlobalVariableManager(CGlobalVariableManager globalVariableManager) {
- fGlobalVariableManager = globalVariableManager;
- }
-
- protected CSettingsManager getFormatManager() {
- return fFormatManager;
- }
-
- private void setFormatManager(CSettingsManager formatManager) {
- fFormatManager = formatManager;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.debug.core.model.ICDebugTarget#isPostMortem()
- */
- @Override
- public boolean isPostMortem() {
- return false;
- }
-
- public IAddressFactory getAddressFactory() {
- if (fAddressFactory == null) {
- // Ask CDI plug-in for the default AddressFactory.
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget instanceof ICDIAddressFactoryManagement) {
- fAddressFactory = ((ICDIAddressFactoryManagement) cdiTarget).getAddressFactory();
- }
- // And if that doesn't work, use the one from the file.
- if (fAddressFactory == null) {
- if (getExecFile() != null && getProject() != null) {
- IBinaryObject file = getBinaryFile();
- if (file != null) {
- fAddressFactory = file.getAddressFactory();
- }
- }
- }
-
- // As a last resort, fallback to 64 bit address factory
- if (fAddressFactory == null) {
- fAddressFactory = new Addr64Factory();
- }
- }
- return fAddressFactory;
- }
-
- private CMemoryBlockRetrievalExtension getMemoryBlockRetrieval() {
- return fMemoryBlockRetrieval;
- }
-
- private void setMemoryBlockRetrieval(CMemoryBlockRetrievalExtension memoryBlockRetrieval) {
- fMemoryBlockRetrieval = memoryBlockRetrieval;
- }
-
- private void changeState(CDebugElementState state) {
- setState(state);
- Iterator<CThread> it = getThreadList().iterator();
- while (it.hasNext()) {
- it.next().setState(state);
- }
- }
-
- protected void restoreOldState() {
- restoreState();
- Iterator<CThread> it = getThreadList().iterator();
- while (it.hasNext()) {
- it.next().restoreState();
- }
- }
-
- private void handleSymbolsLoaded(ICDISharedLibrary library) {
- getModuleManager().symbolsLoaded(library);
- }
-
- public ICGlobalVariable createGlobalVariable(IGlobalVariableDescriptor info) throws DebugException {
- ICDIVariableDescriptor vo = null;
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {
- vo = cdiTarget.getGlobalVariableDescriptors(info.getPath().lastSegment(), null, info.getName());
- }
- } catch (CDIException e) {
- throw new DebugException(new Status(IStatus.ERROR, CDIDebugModel.getPluginIdentifier(), DebugException.TARGET_REQUEST_FAILED, e.getMessage(), null));
- }
- return CVariableFactory.createGlobalVariable(this, info, vo);
- }
-
- @Override
- public void sourceContainersChanged(ISourceLookupDirector director) {
- setSourceLookupPath(director.getSourceContainers());
- }
-
- private void setSourceLookupPath(ISourceContainer[] containers) {
- // LinkedHashSet allows quick lookup and deterministic ordering. We need
- // the former to efficiently prevent infinite recursion
- LinkedHashSet<String> list = new LinkedHashSet<String>(containers.length);
-
- getSourceLookupPath(list, containers);
- try {
- final ICDITarget cdiTarget = getCDITarget();
- if (cdiTarget != null) {