This commit was manufactured by cvs2svn to create tag
'v0_127_plus_watchpoints'.
Sprout from master 2001-07-18 17:27:44 UTC Darin Swanson <darins> '*** empty log message ***'
Delete:
org.eclipse.debug.core/.classpath
org.eclipse.debug.core/.cvsignore
org.eclipse.debug.core/.options
org.eclipse.debug.core/.vcm_meta
org.eclipse.debug.core/build.properties
org.eclipse.debug.core/core/org/eclipse/debug/core/DebugEvent.java
org.eclipse.debug.core/core/org/eclipse/debug/core/DebugException.java
org.eclipse.debug.core/core/org/eclipse/debug/core/DebugPlugin.java
org.eclipse.debug.core/core/org/eclipse/debug/core/IBreakpointListener.java
org.eclipse.debug.core/core/org/eclipse/debug/core/IBreakpointManager.java
org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugConstants.java
org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugEventListener.java
org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugStatusConstants.java
org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunch.java
org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchListener.java
org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchManager.java
org.eclipse.debug.core/core/org/eclipse/debug/core/ILauncher.java
org.eclipse.debug.core/core/org/eclipse/debug/core/IStreamListener.java
org.eclipse.debug.core/core/org/eclipse/debug/core/Launch.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IBreakpointSupport.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDebugElement.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDebugTarget.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDisconnect.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILauncherDelegate.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IProcess.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/ISourceLocator.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStackFrame.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStep.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStreamMonitor.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStreamsProxy.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/ISuspendResume.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/ITerminate.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IThread.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IValue.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IValueModification.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/IVariable.java
org.eclipse.debug.core/core/org/eclipse/debug/core/model/package.html
org.eclipse.debug.core/core/org/eclipse/debug/core/package.html
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/BreakpointManager.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/DebugCoreResources.properties
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/DebugCoreUtils.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/InputStreamMonitor.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchManager.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/Launcher.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/ListenerList.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/OutputStreamMonitor.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/ProcessMonitor.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/RuntimeProcess.java
org.eclipse.debug.core/core/org/eclipse/debug/internal/core/StreamsProxy.java
org.eclipse.debug.core/doc/hglegal.htm
org.eclipse.debug.core/doc/ngibmcpy.gif
org.eclipse.debug.core/doc/org_eclipse_debug_core.html
org.eclipse.debug.core/doc/org_eclipse_debug_core_launchers.html
org.eclipse.debug.core/exportplugin.xml
org.eclipse.debug.core/plugin.jars
org.eclipse.debug.core/plugin.xml
diff --git a/org.eclipse.debug.core/.classpath b/org.eclipse.debug.core/.classpath
deleted file mode 100644
index 6db06ff..0000000
--- a/org.eclipse.debug.core/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="Eclipse Debug Core"/>
- <classpathentry kind="var" path="JRE_LIB" rootpath="src" sourcepath="JRE_SRC"/>
- <classpathentry kind="var" path="WORKSPACE_ROOT/org.apache.xerces/xerces.jar"/>
- <classpathentry kind="var"
- path="WORKSPACE_ROOT/org.eclipse.core.resources/resources.jar" sourcepath="WORKSPACE_ROOT/org.eclipse.core.resources/resourcessrc.zip"/>
- <classpathentry kind="var"
- path="WORKSPACE_ROOT/org.eclipse.core.runtime/runtime.jar" sourcepath="WORKSPACE_ROOT/org.eclipse.core.runtime/runtimesrc.zip"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.debug.core/.cvsignore b/org.eclipse.debug.core/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/org.eclipse.debug.core/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/org.eclipse.debug.core/.options b/org.eclipse.debug.core/.options
deleted file mode 100644
index a3e35f6..0000000
--- a/org.eclipse.debug.core/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.debug.core/debug=true
\ No newline at end of file
diff --git a/org.eclipse.debug.core/.vcm_meta b/org.eclipse.debug.core/.vcm_meta
deleted file mode 100644
index aae2e1b..0000000
--- a/org.eclipse.debug.core/.vcm_meta
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project-description>
- <nature id="org.eclipse.jdt.core.javanature"/>
- <builder name="org.eclipse.jdt.core.javabuilder">
- </builder>
-</project-description>
diff --git a/org.eclipse.debug.core/build.properties b/org.eclipse.debug.core/build.properties
deleted file mode 100644
index 637c89a..0000000
--- a/org.eclipse.debug.core/build.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-bin.includes = .options,\
- plugin.xml,\
- *.jar
-build.includes = .options,\
- plugin.jars,\
- plugin.xml,\
- doc/,\
- build.properties
-build.vaj.Eclipse\ Debug\ Core = Eclipse Debug Core
-source.dtcore.jar = Eclipse Debug Core
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugEvent.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugEvent.java
deleted file mode 100644
index e1537bf..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugEvent.java
+++ /dev/null
@@ -1,203 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import java.util.EventObject;
-
-/**
- * A debug event describes an event in a program being debugged.
- * Debug model implementations are required to generate debug events as
- * specified by this class. Debug events also describe the creation and
- * termiation of system processes.
- * <p>
- * The following list defines the events that are required to
- * be generated for each element type, and when the event should be created.
- * The object that an event is associated
- * with is available from the event's <code>getSource</code> method. Creation
- * events are guaranteed to occur in a top down order - that is, parents are created
- * before children. Termination events are guaranteed to occur in a bottom up order -
- * that is, children before parents. However, termination events are not guaranteed
- * for all elements that are created. That is, terminate events can be coalesced - a
- * terminate event for a parent signals that all children have been terminated.
- * </p>
- * <p>
- * The generic <code>CHANGE</code> event can be fired at any time by any element.
- * Generally, a client of a debug model, such as as a UI, can get sufficient
- * information to update by listening/responding to the other event kinds. However,
- * if a debug model needs to inform clients of a change that is not specified
- * by create/terminate/suspend/resume, the <code>CHANGE</code> event may be used.
- * For example, generally, the only way a thread or any of its children can change
- * state between a suspend and resume operation, is if the thread or owning debug
- * target is termianted. However, if a debug model supports some other operation
- * that would allow a debug element to change state while suspended, the debug model
- * would fire a change event for that element.
- * </p>
- * <ul>
- * <li><code>IDebugTarget</code>
- * <ul>
- * <li><code>CREATE</code> - a debug target has been created and is ready
- * to begin a debug session.</li>
- * <li><code>TERMINATE</code> - a debug target has terminated and the debug
- * session has ended.</li>
- * </ul>
- * </li>
- * <li><code>IThread</code>
- * <ul>
- * <li><code>CREATE</code> - a thread has been created in a debug target.</li>
- * <li><code>TERMINATE</code> - a thread has ended.</li>
- * <li><code>SUSPEND</code> - a thread has suspended. Event detail provides
- * the reason for the suspension, or -1 if unknown:<ul>
- * <li>STEP_END - a request to step has completed</li>
- * <li>BREAKPOINT - a breakpoint has been hit</li>
- * <li>CLIENT_REQUEST - a user request has caused the thread to suspend</li>
- * </ul>
- * </li>
- * <li><code>RESUME</code> - a thread has resumed. Event detail provides
- * the reason for the resume, or -1 if unknown:<ul>
- * <li>STEP_START - a thread is being resumed because of a request to step</li>
- * <li>CLIENT_REQUEST - a thread is being resumed</li>
- * </ul>
- * </li>
- * </ul>
- * </li>
- * <li><code>IStackFrame</code> - no events are specified for stack frames.
- * When a thread is suspended, it has children (stack frames). When a thread resumes,
- * stack frames are unavailable.
- * </li>
- * <li><code>IVariable</code> - no events are specified for variables.
- * When a thread is suspended, stack frames have variables. When a thread resumes,
- * variables are unavailable.
- * </li>
- * <li><code>IValue</code> - no events are specified for values.
- * </li>
- * <li><code>IProcess</code>
- * <ul>
- * <li><code>CREATE</code> - a system process has been created.</li>
- * <li><code>TERMINATE</code> - a system process has terminated.</li>
- * </ul>
- * </li>
- * </ul>
- * <p>
- * Clients may instantiate this class. Clients are not intended to subclass this class.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public final class DebugEvent extends EventObject {
-
- /**
- * Resume event.
- */
- public static final int RESUME= 0x0001;
-
- /**
- * Suspend event.
- */
- public static final int SUSPEND= 0x0002;
-
- /**
- * Create event.
- */
- public static final int CREATE= 0x0004;
-
- /**
- * Terminate event.
- */
- public static final int TERMINATE= 0x0008;
-
- /**
- * Change event.
- */
- public static final int CHANGE= 0x0010;
-
- /**
- * Step start detail. Indicates a thread was resumed by a step action.
- */
- public static final int STEP_START= 0x0001;
-
- /**
- * Step end detail. Indicates a thread was suspended due
- * to the completion of a step action.
- */
- public static final int STEP_END= 0x0002;
-
- /**
- * Breakpoint detail. Indicates a thread was suspended by
- * a breakpoint.
- */
- public static final int BREAKPOINT= 0x0004;
-
- /**
- * Client request detail. Indicates a thread was suspended due
- * to a client request.
- */
- public static final int CLIENT_REQUEST= 0x0008;
-
- /**
- * The kind of event - one of the kind constants defined by
- * this class.
- */
- private int fKind= 0;
-
- /**
- * The detail of the event - one of the detail constants defined by
- * this class.
- */
- private int fDetail= -1;
- /**
- * Constructs a new debug event of the given kind with a detail code of -1.
- *
- * @param eventSource the object that generated the event
- * @param kind the kind of debug envent (one of the
- * constants in <code>IDebugEventConstants</code>)
- */
- public DebugEvent(Object eventSource, int kind) {
- this(eventSource, kind, -1);
- }
-
- /**
- * Constructs a new debug event of the given kind with the given detail.
- *
- * @param eventSource the object that generated the event
- * @param kind the kind of debug envent (one of the
- * kine constants defined by this class)
- * @param detail extra information about the event (one of the
- * detail constants defined by this class), or -1 if
- * unspecified
- */
- public DebugEvent(Object eventSource, int kind, int detail) {
- super(eventSource);
- if ((kind & (RESUME | SUSPEND | CREATE | TERMINATE | CHANGE)) == 0)
- throw new IllegalArgumentException("kind is not one of the allowed constants, see IDebugEventConstants");
- if (detail != -1 && (detail & (STEP_END | STEP_START | BREAKPOINT | CLIENT_REQUEST)) == 0)
- throw new IllegalArgumentException("detail is not one of the allowed constants, see IDebugEventConstants");
- fKind= kind;
- fDetail= detail;
- }
-
- /**
- * Returns a constant describing extra detail about the event - one
- * of the detail constants defined by this class, or -1 if unspecified.
- *
- * @return the detail code
- */
- public int getDetail() {
- return fDetail;
- }
-
- /**
- * Returns this event's kind - one of the kind constants defined by this class.
- */
- public int getKind() {
- return fKind;
- }
-
-}
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugException.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugException.java
deleted file mode 100644
index 23ffe13..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugException.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-
-
-/**
- * A checked exception representing a failure.
- * <p>
- * Clients may instantiate this class. Clients are not intended to subclass this class.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IStatus
- */
-public class DebugException extends CoreException {
-
- /**
- * Constructs a new debug exception with the given status object.
- *
- * @param status the status object to be associated with this exception
- * @see IStatus
- */
- public DebugException(IStatus status) {
- super(status);
- }
-
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugPlugin.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugPlugin.java
deleted file mode 100644
index afc3fe6..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/DebugPlugin.java
+++ /dev/null
@@ -1,225 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.core.*;
-import org.eclipse.core.runtime.*;
-
-/**
- * There is one instance of the debug plugin available from
- * <code>DebugPlugin.getDefault()</code>. The debug plugin provides:
- * <ul>
- * <li>access to the breakpoint manager</li>
- * <li>access to the launch manager</li>
- * <li>access to the registered launcher extensions</li>
- * <li>registration for debug events</li>
- * <li>notification of debug events</li>
- * </ul>
- * <p>
- * Clients may not instantiate or subclass this class.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public class DebugPlugin extends Plugin {
-
- /**
- * The singleton debug plug-in instance.
- */
- private static DebugPlugin fgDebugPlugin= null;
-
- /**
- * The collection of launcher extensions.
- */
- private Launcher[] fLaunchers= new Launcher[0];
-
- /**
- * The singleton breakpoint manager.
- */
- private BreakpointManager fBreakpointManager;
-
- /**
- * The singleton launch manager.
- */
- private LaunchManager fLaunchManager;
-
- /**
- * The collection of debug event listeners.
- */
- private ListenerList fEventListeners= new ListenerList(20);
-
- /**
- * Internal state...<code>true</code> if this plugin is in the
- * process of shutting down.
- */
- private boolean fShuttingDown= false;
-
- /**
- * Returns the singleton instance of the debug plug-in.
- */
- public static DebugPlugin getDefault() {
- return fgDebugPlugin;
- }
-
- /**
- * Constructs the debug plug-in.
- * <p>
- * An instance of this plug-in runtime class is automatically created
- * when the facilities provided by the Resources plug-in are required.
- * <b>Clients must never explicitly instantiate a plug-in runtime class.</b>
- * </p>
- *
- * @param pluginDescriptor the plug-in descriptor for the
- * debug plug-in
- */
- public DebugPlugin(IPluginDescriptor descriptor) {
- super(descriptor);
- fgDebugPlugin= this;
- }
-
- /**
- * Adds the given listener to the collection of registered debug
- * event listeners. Has no effect if an identical listener is already
- * registered.
- *
- * @param listener the listener to add
- */
- public void addDebugEventListener(IDebugEventListener listener) {
- fEventListeners.add(listener);
- }
-
- /**
- * Notifies all registered debug event listeners of the given event.
- *
- * @param event the debug event to fire
- */
- public void fireDebugEvent(DebugEvent event) {
- if (fShuttingDown || event == null)
- return;
-
- Object[] listeners= fEventListeners.getListeners();
- for (int i= 0; i < listeners.length; i++) {
- ((IDebugEventListener) listeners[i]).handleDebugEvent(event);
- }
- }
-
- /**
- * Returns the breakpoint manager.
- *
- * @return the breakpoint manager
- * @see IBreakpointManager
- */
- public IBreakpointManager getBreakpointManager() {
- return fBreakpointManager;
- }
-
- /**
- * Returns a collection of launcher extensions. Launchers represent
- * and provide access to launcher extensions, delaying instantiation of
- * the underlying launcher delegates until required.
- *
- * @return an array of launchers
- * @see org.eclipse.debug.core.model.ILauncherDelegate
- */
- public ILauncher[] getLaunchers() {
- return fLaunchers;
- }
-
- /**
- * Returns the launch manager.
- *
- * @return the launch manager
- * @see ILaunchManager
- */
- public ILaunchManager getLaunchManager() {
- return fLaunchManager;
- }
-
- /**
- * Loads all launcher extensions.
- *
- * @exception CoreException if creation of a launcher extension fails
- */
- protected void loadLaunchers() throws CoreException {
- IPluginDescriptor descriptor= getDescriptor();
- IExtensionPoint extensionPoint= descriptor.getExtensionPoint(IDebugConstants.EXTENSION_POINT_LAUNCHER);
- IConfigurationElement[] infos= extensionPoint.getConfigurationElements();
- fLaunchers= new Launcher[infos.length];
- for (int i= 0; i < infos.length; i++) {
- fLaunchers[i]= new Launcher(infos[i]);
- }
- }
-
- /**
- * Removes the given listener from the collection of registered debug
- * event listeners. Has no effect if an identical listener is not already
- * registered.
- *
- * @param listener the listener to remove
- */
- public void removeDebugEventListener(IDebugEventListener listener) {
- fEventListeners.remove(listener);
- }
-
- /**
- * Shuts down this debug plug-in and discards all plug-in state.
- * <p>
- * This method will be automatically invoked by the platform when
- * the platform is shut down.
- * </p>
- * <b>Clients must never explicitly call this method.</b>
- *
- * @exception CoreException if this plug-in fails to shut down
- */
- public void shutdown() throws CoreException {
- fShuttingDown= true;
- super.shutdown();
- fLaunchManager.shutdown();
- fBreakpointManager.shutdown();
- fgDebugPlugin= null;
- }
-
- /**
- * Starts up the debug plug-in. This involves creating the launch and
- * breakpoint managers, creating proxies to all launcher extensions,
- * and restoring all persisted breakpoints.
- * <p>
- * This method is automatically invoked by the platform
- * the first time any code in this plug-in is executed.
- * </p>
- * <b>Clients must never explicitly call this method.</b>
- *
- * @see Plugin#startup
- * @exception CoreException if this plug-in fails to start up
- */
- public void startup() throws CoreException {
- fLaunchManager= new LaunchManager();
- fBreakpointManager= new BreakpointManager();
- loadLaunchers();
- fBreakpointManager.startup();
- }
-
- /**
- * Creates and returns a new process representing the given
- * <code>java.lang.Process</code>. A streams proxy is created
- * for the I/O streams in the system process.
- *
- * @param process the system process to wrap
- * @param label the label assigned to the process
- * @return the process
- * @see IProcess
- */
- public static IProcess newProcess(Process process, String label) {
- return new RuntimeProcess(process, label);
- }
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/IBreakpointListener.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/IBreakpointListener.java
deleted file mode 100644
index 49629fe..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/IBreakpointListener.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IMarkerDelta;
-
-/**
- * A breakpoint listener is notified of breakpoint additions,
- * removals, and changes. Listeners register and deregister with the
- * breakpoint manager.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IBreakpointManager
- */
-
-public interface IBreakpointListener {
-
- /**
- * Notifies this listener that the given breakpoint has been added.
- *
- * @param breakpoint the added breakpoint
- */
- public void breakpointAdded(IMarker breakpoint);
- /**
- * Notifies this listener that the given breakpoint has been removed.
- * If the given marker has been removed because it has been deleted,
- * the associated marker delta is also provided such that any attributes
- * of the marker can still be accessed.
- *
- * @param breakpoint the removed breakpoint
- * @param delta the associated marker delta, or <code>null</code> when
- * the breakpoint is removed from the breakpoint manager without
- * being deleted
- *
- * @see org.eclipse.core.resources.IMarkerDelta
- */
- public void breakpointRemoved(IMarker breakpoint, IMarkerDelta delta);
-
- /**
- * Notifies this listener that an attribute of the given breakpoint has
- * changed, as described by the delta.
- *
- * @param breakpoint the changed breakpoint
- * @param delta the marker delta that describes the change
- *
- * @see org.eclipse.core.resources.IMarkerDelta
- */
- public void breakpointChanged(IMarker breakpoint, IMarkerDelta delta);
-
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/IBreakpointManager.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/IBreakpointManager.java
deleted file mode 100644
index e9105a3..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/IBreakpointManager.java
+++ /dev/null
@@ -1,255 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * The breakpoint manager manages the collection of breakpoints
- * in the workspace. A breakpoint suspends the execution of a
- * program being debugged. The kinds of breakpoint supported by each
- * debug architecture and the information required to create those
- * breakpoints is dictated by each debug architecture.
- * <p>
- * Breakpoints are implemented by markers. The debug plug-in defines a root
- * breakpoint marker of which all breakpoints should be subtypes. The
- * debug plug-in also defines a common line breakpoint. Convenience methods
- * are defined to configure the attributes of breakpoints defined by
- * the debug plug-in. See <code>configureBreakpoint(IMarker, String, boolean)</code>
- * and <code>configureLineBreakpoint(IMarker, String, boolean, int, int, int)</code>.
- * </p>
- * <p>All breakpoints have:<ul>
- * <li> a model identifier, specifying the identifier of the debug model the breakpoint
- * is intended for</li>
- * <li> a enabled attribute, specifying if the breakpoint is enabled or disabled</li>.
- * </ul>
- * Additionally, all line breakpoints have a line number and/or a character start and
- * end range.
- * </p>
- * <p>
- * Breakpoint creation is a client responsibility. Creation of a breakpoint requires
- * the creation of a marker. It is a client responsibility to determine which
- * resource a breakpoint marker should be associated/persisted with. Breakpoints
- * are only considered active when registered with the breakpoint manager.
- * </p>
- * <p>
- * As launches are registered and deregistered, the breakpoint
- * manager automatically adds and removes debug targets associated with those
- * lauches, as breakpoint listeners.
- * Debug targets (implementors of <code>IBreakpointSupport</code>) are
- * informed of breakpoint additions, removals, and changes if they
- * respond <code>true</code> to <code>supportsBreakpoints()</code>.
- * A debug target is responsible for installing all existing
- * (applicable) breakpoints when created.
- * </p>
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IMarker
- * @see org.eclipse.debug.core.model.IBreakpointSupport
- */
-public interface IBreakpointManager {
-
- /**
- * Configures the given breakpoint's <code>MODEL_IDENTIFIER</code>
- * and <code>ENABLED</code> attributes to the given values.
- * This is a convenience method for
- * <code>IMarker.setAttribute(String, Object)</code> and
- * <code>IMarker.setAttribute(String, boolean)</code>.
- * <code>IMarker.setAttribute(String, int)</code>.
- *
- * @param breakpoint the breakpoint marker to configure
- * @param modelIdentifier the identifier of the debug model plug-in
- * the breakpoint is associated with
- * @param enabled the initial value of the enabled attribute of the
- * breakpoint marker
- *
- * @exception CoreException if setting an attribute fails
- * @see IMarker#setAttribute(String, Object)
- * @see IMarker#setAttribute(String, boolean)
- * @see IMarker#setAttribute(String, int)
- */
- void configureBreakpoint(IMarker breakpoint, String modelIdentifier, boolean enabled) throws CoreException;
-
- /**
- * Configures the given breakpoint's <code>MODEL_IDENTIFIER</code>,
- * <code>ENABLED</code>, <code>LINE_NUMBER</code>, <code>CHAR_START</code>,
- * and <code>CHAR_END</code> attributes to the given values.
- * This is a convenience method for
- * <code>IMarker.setAttribute(String, Object)</code>,
- * <code>IMarker.setAttribute(String, boolean)</code>, and
- * <code>IMarker.setAttribute(String, int)</code>.
- *
- * @param breakpoint the line breakpoint marker to configure
- * @param modelIdentifier the identifier of the debug model plug-in
- * the breakpoint is associated with
- * @param enabled the initial value of the enabled attribute of the
- * breakpoint marker
- * @param lineNumber the line number the breakpoint is associated with, or -1
- * if unknown
- * @param charStart the index in an associated source element, of the first
- * character associated with the breakoint, or -1 if unknown
- * @param charEnd the index in an associated source element, of the last
- * character associated with the breakoint, or -1 if unknown
- *
- * @exception CoreException if setting an attribute fails
- * @see IMarker#setAttribute(String, Object)
- * @see IMarker#setAttribute(String, boolean)
- * @see IMarker#setAttribute(String, int)
- */
- void configureLineBreakpoint(IMarker breakpoint, String modelIdentifier, boolean enabled, int lineNumber, int charStart, int charEnd) throws CoreException;
-
- /**
- * Adds the given breakpoint to the collection of active breakpoints
- * in the workspace and notifies all registered listeners. This has no effect
- * if the given breakpoint is already registered.
- *
- * @param breakpoint the breakpoint to add
- *
- * @exception DebugException if adding fails. Reasons include:<ul>
- * <li>CONFIGURATION_INVALID - the required <code>MODEL_IDENTIFIER</code> attribute
- * is not set on the breakpoint marker.</li>
- * <li>A <code>CoreException</code> occurred while verifying the <code>MODEL_IDENTIFIER</code>
- * attribute.</li>
- * </ul>
- */
- void addBreakpoint(IMarker breakpoint) throws DebugException;
-
- /**
- * Returns a collection of all existing breakpoints.
- * Returns an empty array if no breakpoints exist.
- *
- * @return an array of breakpoint markers
- */
- IMarker[] getBreakpoints();
-
- /**
- * Returns a collection of all breakpoints registered for the
- * given debug model. Answers an empty array if no breakpoints are registered
- * for the given debug model.
- *
- * @param modelIdentifier identifier of a debug model plug-in
- * @return an array of breakpoint markers
- */
- IMarker[] getBreakpoints(String modelIdentifier);
-
- /**
- * Returns the value of the <code>ENABLED</code> attribute of the
- * given breakpoint - <code>true</code> if the breakpoint is enabled,
- * otherwise <code>false</code>. By default, if the attribute has not
- * been set, a breakpoint is considered enabled.
- * Note, this method returns <code>false</code>
- * if an exception occurs while accessing the attribute. This is
- * a convenience method for
- * <code>IMarker.getAttribute(String, boolean)</code>.
- *
- * @param breakpoint the breakpoint
- * @return whether the breakpoint is enabled
- * @see IMarker#getAttribute(String, boolean)
- */
- boolean isEnabled(IMarker breakpoint);
-
- /**
- * Sets the value of the <code>ENABLED</code> attribute of the
- * given breakpoint. This is a convenience method for
- * <code>IMarker.setAttribute(String, boolean)</code>.
- *
- * @exception CoreException if setting the attribute fails
- * @see IMarker#setAttribute(String, boolean)
- */
- void setEnabled(IMarker breakpoint, boolean value) throws CoreException;
-
- /**
- * Returns whether the given breakpoint is currently
- * registered with this breakpoint manager.
- *
- * @return whether the breakpoint is registered
- */
- boolean isRegistered(IMarker marker);
-
- /**
- * Returns the value of the <code>LINE_NUMBER</code> attribute of the
- * given breakpoint or -1 if the attribute is not present or
- * an exception occurs while accessing the attribute. This is a
- * convenience method for <code>IMarker.getAttribute(String, int)</code>.
- *
- * @param breakpoint the breakpoint
- * @return the breakpoint's line number, or -1 if unknown
- */
- int getLineNumber(IMarker breakpoint);
-
- /**
- * Returns the value of the <code>CHAR_START</code> attribute of the
- * given breakpoint or -1 if the attribute is not present, or
- * an exception occurs while accessing the attribute. This is a
- * convenience method for <code>IMarker.getAttribute(String, int)</code>
- *
- * @param breakpoint the breakpoint
- * @return the breakpoint's char start value, or -1 if unknown
- */
- int getCharStart(IMarker breakpoint);
-
- /**
- * Returns the value of the <code>CHAR_END</code> attribute of the
- * given breakpoint or -1 if the attribute is not present or
- * an exception occurs while accessing the attribute.
- * This is a convenience method for <code>IMarker.getAttribute(String, int)</code>.
- *
- * @param breakpoint the breakpoint
- * @return the breakpoint's char end value, or -1 if unknown
- */
- int getCharEnd(IMarker breakpoint);
-
- /**
- * Returns the value of the <code>MODEL_IDENTIFIER</code> attribute of the
- * given breakpoint or <code>null</code> if the attribute is not present or
- * an exception occurs while accessing the attribute. This is a convenience method
- * for <code>IMarker.getAttribute(String, String)</code>.
- *
- * @param breakpoint the breakpoint
- * @return the breakpoint's debug model plug-in identifier, or <code>null</code>
- * if an exception occurs retrieving the attribute
- */
- String getModelIdentifier(IMarker breakpoint);
-
- /**
- * Removes the given breakpoint from the breakpoint manager, and notifies all
- * registered listeners. The marker is deleted if the <code>delete</code> flag is
- * true. Has no effect if the given breakpoint is not currently registered.
- *
- * @param breakpoint the breakpoint to remove
- * @param delete whether the breakpoint marker should be deleted
- * @exception CoreException if an exception occurs while deleting the marker.
- */
- void removeBreakpoint(IMarker breakpoint, boolean delete) throws CoreException;
-
- /**
- * Adds the given listener to the collection of registered breakpoint listeners.
- * Has no effect if an identical listener is already registered.
- *
- * @param listener the listener to add
- */
- void addBreakpointListener(IBreakpointListener listener);
-
- /**
- * Removes the given listener from the collection of registered breakpoint listeners.
- * Has no effect if an identical listener is not already registered.
- *
- * @param listener the listener to remove
- */
- void removeBreakpointListener(IBreakpointListener listener);
-
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugConstants.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugConstants.java
deleted file mode 100644
index 2c1055c..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugConstants.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-/**
- * Defines constants for the debug tools infrastructure plug-in.
- * <p>
- * Constants only; not intended to be implemented.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IDebugConstants {
-
- /**
- * Debug infrastructure plug-in identifier
- * (value <code>"org.eclipse.debug.core"</code>).
- */
- public static final String PLUGIN_ID = "org.eclipse.debug.core";
-
- /**
- * Launcher extension point identifier
- * (value <code>"launchers"</code>).
- */
- public static final String EXTENSION_POINT_LAUNCHER= "launchers";
-
- /**
- * Root breakpoint marker type
- * (value <code>"org.eclipse.debug.core.breakpoint"</code>).
- */
- public static final String BREAKPOINT_MARKER = PLUGIN_ID + ".breakpoint";
-
- /**
- * Line breakpoint marker type.
- * (value <code>"org.eclipse.debug.core.lineBreakpoint"</code>).
- */
- public static final String LINE_BREAKPOINT_MARKER = PLUGIN_ID + ".lineBreakpoint";
-
- /**
- * Debug model identifier breakpoint marker attribute
- * (value <code>"modelIdentifier"</code>).
- * This attribute is a <code>String<code> corresponding to the identifier
- * of a debug model plugin a breakpoint is associated with.
- *
- * @see org.eclipse.core.resources.IMarker#getAttribute(String, String)
- */
- public static final String MODEL_IDENTIFIER = "modelIdentifier";
-
- /**
- * Enabled breakpoint marker attribute (value <code>"enabled"</code>).
- * The attribute is a <code>boolean</code> corresponding to the
- * enabled state of a breakpoint.
- *
- * @see org.eclipse.core.resources.IMarker#getAttribute(String, boolean)
- */
- public final static String ENABLED= "enabled";
-
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugEventListener.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugEventListener.java
deleted file mode 100644
index 3ecd883..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugEventListener.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-/**
- * A debug event listener registers with the debug model manager
- * to receive event notification from all programs being debugged.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see DebugEvent
- */
-public interface IDebugEventListener {
- /**
- * Notifies this listener of the given debug event.
- *
- * @param event the debug event
- */
- public void handleDebugEvent(DebugEvent event);
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugStatusConstants.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugStatusConstants.java
deleted file mode 100644
index b1e21e3..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/IDebugStatusConstants.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-/**
- * Defines status codes relevant to the debug plug-in. When a
- * debug exception is thrown, it contain a status object describing
- * the cause of the exception. The status objects originating from the
- * debug plug-in use the codes defined in this interface.
- * <p>
- * Constants only; not intended to be implemented.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IStatus
- */
-public interface IDebugStatusConstants {
-
- /**
- * Indicates a request made of a debug element has failed
- * on the target side.
- */
- public static final int TARGET_REQUEST_FAILED = 5010;
-
- /**
- * Indicates a request is not supported by the capabilities of a debug element.
- * For example, a request was made to terminate an element that does not
- * support termination.
- */
- public static final int NOT_SUPPORTED = 5011;
-
- /**
- * Indicates that a request made of a debug element or manager has failed
- * on the client side (that is, before the request was sent to the debug target).
- */
- public static final int REQUEST_FAILED = 5012;
-
- /**
- * Indicates an internal error. This is an unexpected state.
- */
- public static final int INTERNAL_ERROR = 5013;
-
- /**
- * Indicates an improperly configured breakpoint. Breakpoints have a minimal
- * set of required attributes as defined by the breakpoint manager.
- *
- * @see IBreakpointManager
- */
- public static final int CONFIGURATION_INVALID = 5014;
-
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunch.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunch.java
deleted file mode 100644
index 8829e5c..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunch.java
+++ /dev/null
@@ -1,78 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.model.*;
-import org.eclipse.core.runtime.IAdaptable;
-
-/**
- * A launch is the result of launching a debug session
- * and/or one or more system processes.
- * <p>
- * This interface is not intended to be implemented by clients. Clients
- * should create instances of this interface by using the implementation
- * provided by the class <code>Launch</code>.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see Launch
- */
-public interface ILaunch extends ITerminate, IAdaptable {
- /**
- * Returns the children of this launch - at least one of a debug target
- * and/or one or more processes.
- *
- * @return an array (element type:<code>IDebugTarget</code> or <code>IProcess</code>)
- */
- Object[] getChildren();
- /**
- * Returns the debug target associated with this launch, or <code>null</code>
- * if no debug target is associated with this launch.
- *
- * @return the debug target associated with this launch, or <code>null</code>
- */
- IDebugTarget getDebugTarget();
- /**
- * Returns the object that was launched. Cannot return <code>null</code>.
- *
- * @return the launched object
- */
- Object getElement();
- /**
- * Returns the launcher that was used to launch. Cannot return <code>null</code>.
- *
- * @return the launcher
- */
- ILauncher getLauncher();
- /**
- * Returns the processes that were launched,
- * or an empty collection if no processes were launched.
- *
- * @return array of processes
- */
- IProcess[] getProcesses();
- /**
- * Returns the source locator to use for locating source elements for
- * the debug target associated with this launch, or <code>null</code>
- * if source mapping is not supported.
- *
- * @return the source locator
- */
- ISourceLocator getSourceLocator();
- /**
- * Returns the mode of this launch - one of the mode constants defined by
- * the launch manager.
- *
- * @return the launch mode
- * @see ILaunchManager
- */
- public String getLaunchMode();
-
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchListener.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchListener.java
deleted file mode 100644
index 3524c79..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchListener.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-/**
- * A launch listener is notified of launches as they
- * are registered and deregistered with the launch manager.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see ILaunch
- */
-public interface ILaunchListener {
- /**
- * Notifies this listener that the specified launch has been deregistered.
- *
- * @param launch the deregistered launch
- */
- void launchDeregistered(ILaunch launch);
- /**
- * Notifies this listener that the specified launch has been registered.
- *
- * @param launch the registered launch
- */
- void launchRegistered(ILaunch launch);
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchManager.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchManager.java
deleted file mode 100644
index fccfc5c..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchManager.java
+++ /dev/null
@@ -1,150 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-
-/**
- * The launch manager manages the set of registered launches, maintaining
- * a collection of active processes and debug targets. Clients interested
- * in launch notification may register with the launch manager.
- * <p>
- * For convenience, a default launcher may be associated with a project.
- * The preference is stored as a persistent property with the project.
- * The debug UI plug-in uses this preference to help determine which
- * launcher to invoke when the the run or debug button is pressed, based on
- * the selection in the workbench. If a launcher cannot be determined,
- * the user is prompted to choose a launcher.
- * </p>
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see ILaunch
- * @see ILaunchListener
- */
-public interface ILaunchManager extends IAdaptable {
- /**
- * A launch in a normal, non-debug mode(value <code>"run"</code>).
- */
- public static final String RUN_MODE= "run";
- /**
- * A launch in a special debug mode (value <code>"debug"</code>).
- */
- public static final String DEBUG_MODE= "debug";
-
- /**
- * Adds the given listener to the collection of registered launch listeners.
- * Has no effect if an identical listener is already registerd.
- *
- * @param listener the listener to register
- */
- void addLaunchListener(ILaunchListener listener);
- /**
- * Deregisters the specified launch and notifies listeners. Has no effect
- * if an identical launch is not already registered.
- *
- * @param launch the launch to deregister
- */
- void deregisterLaunch(ILaunch launch);
- /**
- * Returns the launch the given process is contained in, or <code>null</code>
- * no registered launches contains the process.
- *
- * @param process the process for which to find a launch
- * @return the launch containing the process, or <code>null</code> if none
- */
- ILaunch findLaunch(IProcess process);
- /**
- * Returns the launch the given debug target is contained
- * in, or <code>null</code> no registered launches contain the debug target.
- *
- * @param target the debug target for which to find a launch
- * @return the launch containing the debug target, or <code>null</code> if none
- */
- ILaunch findLaunch(IDebugTarget target);
- /**
- * Returns the collection of debug targets currently registered with this
- * launch manager.
- *
- * @return an array of debug targets
- */
- IDebugTarget[] getDebugTargets();
- /**
- * Returns the default launcher for the given project,
- * or <code>null</code> if no default launcher has been set.
- * The default launcher is stored as a persistent property
- * with a project.
- *
- * @param project the project for which to retrieve a default launcher
- * @return the defualt launcher, or <code>null</code> if none
- * @exception CoreException if an error occurs accessing the
- * persistent property
- */
- ILauncher getDefaultLauncher(IProject project) throws CoreException;
-
- /**
- * Returns the collection of registered launchers that can operate in the
- * specified mode - run or debug.
- *
- * @return an array of launchers
- */
- ILauncher[] getLaunchers(String mode);
-
- /**
- * Returns the collection of registered launchers.
- *
- * @return an array of launchers
- */
- ILauncher[] getLaunchers();
- /**
- * Returns the collection of launches currently registered
- * with this launch manager.
- *
- * @return an array of launches
- */
- ILaunch[] getLaunches();
- /**
- * Returns the collection of processes currently registered with this
- * launch manager.
- *
- * @return an array of processes
- */
- IProcess[] getProcesses();
- /**
- * Registers the specified launch with this launch manager.
- * Has no effect if an identical launch is already registered.
- *
- * @param launch the launch to register
- */
- void registerLaunch(ILaunch launch);
- /**
- * Removes the given listener from the collection of registered launch listeners.
- * Has no effect if an identical listener is not already registerd.
- *
- * @param listener the listener to deregister
- */
- void removeLaunchListener(ILaunchListener listener);
- /**
- * Sets the default launcher for the given project as a persistent property.
- *
- * @param project the project for which to set the preference
- * @param launcher the launcher preference
- * @exception CoreException if an error occurs setting the persistent property
- */
- void setDefaultLauncher(IProject project, ILauncher launcher) throws CoreException;
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILauncher.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/ILauncher.java
deleted file mode 100644
index 1851787..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILauncher.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.model.ILauncherDelegate;
-import org.eclipse.core.runtime.IConfigurationElement;
-import java.util.Set;
-
-/**
- * A launcher is a proxy to a launcher extension (<code>"org.eclipse.debug.core.launchers"</code>).
- * It manages the attributes of a launcher extension, and lazily instantiates the
- * delegate when required.
- * <p>
- * This interface is not intended to be implemented by clients. Clients
- * that define a launcher extension implement the <code>ILauncherDelegate</code>
- * interface.
- * </p>
- * <p>
- * <b>NOTE:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see ILauncherDelegate
- */
-public interface ILauncher {
- /**
- * Returns the result of invoking this underlying launcher extension's launch
- * method. This causes the extension to be instantiated (if not already).
- *
- * @param elements the elements providing context for the launch
- * @param mode the mode in which to launch - run or debug
- * @return whether the launch was successful
- * @see ILauncherDelegate
- */
- boolean launch(Object[] elements, String mode);
-
- /**
- * Returns the modes that the underlying launcher extension
- * supports - run and/or debug. This will not cause the extension to
- * be instantiated.
- *
- * @return a set of <code>String</code> constants - one or both of
- * <code>ILaunchManager.RUN_MODE</code>, <code>ILaunchManager.DEBUG_MODE</code>
- * @see ILaunchManager
- */
- Set getModes();
-
- /**
- * Returns the identifier of the perspective associated with the
- * underlying launcher extension. This attribute determines the layout
- * used by the debug UI plug-in when presenting this launch.
- * This will not cause the extension to be instantiated.
- *
- * @return a perspective identifier, as defined by the
- * <code>"org.eclipse.ui.perspective"</code> extension point
- */
- String getPerspectiveIdentifier();
-
- /**
- * Returns the label defined by the underlying launcher extension.
- * This will not cause the extension to be instantiated.
- *
- * @return a human readable label
- */
- String getLabel();
-
- /**
- * Returns the configuration element associated with the underlying
- * extension. This will not cause the extension to be instantiated.
- *
- * @return the extension's configuration element
- */
- IConfigurationElement getConfigurationElement();
-
- /**
- * Returns the unique identifier of the underlying launcher extension.
- * This will not cause the extension to be instantiated.
- *
- * @return the extension's identifier attribute
- */
- String getIdentifier();
-
- /**
- * Returns the underlying launcher delegate associated with this
- * launcher. This causes the launcher delegate to be instantiated (if
- * not already).
- *
- * @return the underlying launcher extension
- */
- ILauncherDelegate getDelegate();
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/IStreamListener.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/IStreamListener.java
deleted file mode 100644
index 1103243..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/IStreamListener.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.eclipse.debug.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.model.IStreamMonitor;
-
-/**
- * An stream listener is notified of changes
- * to a stream monitor.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IStreamMonitor
- */
-public interface IStreamListener {
- /**
- * Notifies this listener that text has been appended to
- * the given stream monitor.
- *
- * @param text the appended text
- * @paran monitor the stream monitor to which text was appended
- */
- public void streamAppended(String text, IStreamMonitor monitor);
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/Launch.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/Launch.java
deleted file mode 100644
index a253966..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/Launch.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IBreakpointSupport.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IBreakpointSupport.java
deleted file mode 100644
index c685491..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IBreakpointSupport.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.IBreakpointListener;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IMarkerDelta;
-
-/**
- * Breakpoint support defines functionality for
- * debug targets supporting breakpoints. The breakpoint manager
- * automatically adds debug targets as breakpoint listeners,
- * as launches are registered. The breakpoint
- * manager only informs a debug target of breakpoint changes
- * (that is, add/remove/change) if the target returns <code>true</code>
- * from <code>supportsBreakpoint(IMarker)</code>. The breakpoint manager
- * removes debug targets from its listener list as launches
- * are deregistered.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IBreakpointSupport extends IBreakpointListener {
-
- /**
- * Returns whether this target currently supports the given breakpoint.
- * The breakpoint manager calls this method before calling an
- * added/removed/changed method to verify this listener is interested
- * in the given breakpoint.
- * <p>
- * Generally, a debug target is only interested in breakpoints that
- * originated from its debug model, and only if the debug target has
- * not been terminated.
- * </p>
- *
- * @param breakpoint the breakpoint being added/removed/changed
- * @return whether this target is currently interested in the breakpoint
- */
- boolean supportsBreakpoint(IMarker breakpoint);
-
- /**
- * Installs the given breakpoint in this target. The breakpoint should
- * be deferred if it cannot be installed immediately. This method is only
- * called if this listener supports the given breakpoint.
- *
- * @param breakpoint the added breakpoint
- * @see IBreakpointListener
- * @see #supportsBreakpoint(IMarker)
- */
- public void breakpointAdded(IMarker breakpoint);
-
- /**
- * Uninstalls the given breakpoint from this target if currently installed.
- * This method is only called if this listener supports the given breakpoint.
- *
- * @param breakpoint the removed breakpoint
- * @see IBreakpointListener
- * @see #supportsBreakpoint(IMarker)
- */
- public void breakpointRemoved(IMarker breakpoint, IMarkerDelta delta);
-
- /**
- * An attribute of the given breakpoint has changed, as described
- * by the delta. If the breakpoint is applicable to this target
- * the attribute change should be reflected. For example, the enabled
- * state may have changed, and should be updated in the target. This
- * method is only called if this listener supports the given breakpoint.
- *
- * @param breakpoint the changed breakpoint
- * @see IBreakpointListener
- * @see #supportsBreakpoint(IMarker)
- */
- public void breakpointChanged(IMarker breakpoint, IMarkerDelta delta);
-
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDebugElement.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDebugElement.java
deleted file mode 100644
index b3a587b..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDebugElement.java
+++ /dev/null
@@ -1,173 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.ILaunch;
-
-/**
- * A debug element represents an artifact in a program being
- * debugged.
- * <p>
- * Some methods on debug elements require communication
- * with the target program. Such methods may throw a <code>DebugException</code>
- * with a status code of <code>TARGET_REQUEST_FAILED</code>
- * when unable to complete a request due to a failure on the target.
- * Methods that require communication with the target program or require
- * the target to be in a specific state (for example, suspended), are declared
- * as such.
- * </p>
- * <p>
- * Debug elements are language independent. However, language specific
- * features can be made available via the adpater mechanism provided by
- * <code>IAdaptable</code>, or by extending the debug element interfaces.
- * A debug model is responsible for declaring any special adapters
- * its debug elements implement.
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IDebugElement extends IAdaptable {
-
- /**
- * Debug target type.
- *
- * @see IDebugTarget
- */
- public static final int DEBUG_TARGET= 0x0002;
-
- /**
- * Thread type.
- *
- * @see IThread
- */
- public static final int THREAD= 0x0004;
-
- /**
- * Stack frame type.
- *
- * @see IStackFrame
- */
- public static final int STACK_FRAME= 0x0008;
-
- /**
- * Variable type.
- *
- * @see IVariable
- */
- public static final int VARIABLE= 0x0010;
-
- /**
- * Value type.
- *
- * @see IValue
- */
- public static final int VALUE= 0x0012;
-
- /**
- * Returns the children of this debug element, or an empty collection
- * if this element has no children.
- *
- * @return array of debug elements
- * @exception DebugException if unable to retrieve this element's children
- * from the target
- */
- IDebugElement[] getChildren() throws DebugException;
- /**
- * Returns the debug target this element originated from.
- *
- * @return a debug target
- */
- IDebugTarget getDebugTarget();
- /**
- * Returns the type of this element, encoded as an integer - one
- * of the constants defined in this interface.
- *
- * @return debug element type constant
- */
- int getElementType();
- /**
- * Returns the launch this element originated from, or
- * <code>null</code> if this element is not registered with
- * a launch. This is a convenience method for
- * <code>ILaunchManager.findLaunch(getDebugTarget())</code>.
- *
- * @return this element's launch, or <code>null</code> if not registered
- */
- ILaunch getLaunch();
- /**
- * Returns the name of this element. Name format is debug model
- * specific, and should be specified by a debug model.
- *
- * @return this element's name
- * @exception DebugException if unable to retrieve this element's name from
- * the target
- */
- String getName() throws DebugException;
- /**
- * Returns the parent of this debug element, or <code>null</code>
- * if this element has no parent.
- *
- * @return this element's parent, or <code>null</code> if none
- */
- IDebugElement getParent();
- /**
- * Returns the process associated with this debug element,
- * or <code>null</code> if no process is associated with this element.
- * This is a convenience method - it returns the process associated with
- * this element's debug target, if any.
- *
- * @return this element's process, or <code>null</code> if none
- */
- IProcess getProcess();
- /**
- * Returns the source locator that can be used to locate source elements
- * associated with this element or <code>null</code> if source lookup
- * is not supported. This is a convenience method - it
- * returns the source locator associated with this element's launch.
- *
- * @return this element's source locator, or <code>null</code> if none
- */
- ISourceLocator getSourceLocator();
- /**
- * Returns the stack frame containing this element,
- * or <code>null</code> if this element is not contained in a stack frame.
- *
- * @return this element's stack frame, or <code>null</code> if none
- */
- IStackFrame getStackFrame();
- /**
- * Returns the thread containing this element,
- * or <code>null</code> if this element is not contained in a thread.
- *
- * @return this element's thread, or <code>null</code> if none
- */
- IThread getThread();
- /**
- * Returns whether this element has children.
- *
- * @return whether this element has children
- * @exception DebugException if unable to determine if this element has children
- */
- boolean hasChildren() throws DebugException;
- /**
- * Returns the unique identifier of the plug-in
- * this debug element originated from.
- *
- * @return plug-in identifier
- */
- String getModelIdentifier();
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDebugTarget.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDebugTarget.java
deleted file mode 100644
index ad76d44..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDebugTarget.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import java.util.List;
-
-/**
- * A debug target is a debuggable execution context. For example, a debug target
- * may represent a debuggable process or a virtual machine. A debug target is the root
- * of the debug element hierarchy. A debug target has element type <code>DEBUG_TARGET</code>,
- * children of type <code>THREAD</code>, and no parent. Minimally, a debug target supports
- * the following capabilities:
- * <ul>
- * <li>terminate
- * <li>suspend/resume
- * <li>breakpoints
- * <li>diconnect
- * </ul>
- * <p>
- * Generally, launching a debug session results in the creation of a
- * debug target. Launching is a client responsibility, as is debug target
- * creation.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see ITerminate
- * @see ISuspendResume
- * @see IBreakpointSupport
- * @see IDisconnect
- * @see org.eclipse.debug.core.ILaunch
- */
-public interface IDebugTarget extends IDebugElement, ITerminate, ISuspendResume, IBreakpointSupport, IDisconnect {
- /**
- * Returns the system process associated with this debug target
- * or <code>null</code> if no system process is associated with
- * this debug target.
- */
- IProcess getProcess();
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDisconnect.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDisconnect.java
deleted file mode 100644
index 6b0355b..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IDisconnect.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to end a debug session with a target program
- * and allow the target to continue running.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IDebugTarget
- */
-public interface IDisconnect {
- /**
- * Returns whether this element can currently disconnect.
- *
- * @return whether this element can currently disconnect
- */
- boolean canDisconnect();
- /**
- * Disconnects this element from its target. Generally, disconnecting
- * ends a debug session with a debug target, but allows the target
- * program to continue running.
- *
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target
- * <li>NOT_SUPPORTED - The capability is not supported by the target
- * </ul>
- */
- public void disconnect() throws DebugException;
- /**
- * Returns whether this element is disconnected.
- *
- * @return whether this element is disconnected
- */
- public boolean isDisconnected();
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILauncherDelegate.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILauncherDelegate.java
deleted file mode 100644
index c92948a..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILauncherDelegate.java
+++ /dev/null
@@ -1,108 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.ILauncher;
-
-/**
- * A launcher delegate is an implementation of the
- * <code>org.eclipse.debug.core.launchers</code> extension point. The
- * debug plug-in creates a proxy to each launcher extension, and
- * lazily instantiates an extension when required. A launch delegate
- * starts a debug session with a specific debug model, and/or
- * launches one or more system processes, registering the result
- * with the launch manager.
- * <p>
- * A launcher extension is defined in <code>plugin.xml</code>.
- * Following is an example definition of a launcher extension.
- * <pre>
- * <extension point="org.eclipse.debug.core.launchers">
- * <launcher
- * id="com.example.ExampleIdentifier"
- * class="com.example.ExmapleLauncher"
- * modes="run, debug"
- * label="Example Launcher"
- * wizard="com.example.ExampleLaunchWizard"
- * layout="com.example.JavaLayout">
- * </launcher>
- * </extension>
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>id</code> specifies a unique identifier for this launcher.</li>
- * <li><code>class</code> specifies the fully qualified name of the java class
- * that implements this interface.</li>
- * <li><code>modes</code> specifies a comma separated list of the modes this
- * launcher supports - <code>"run"</code> and/or <code>"debug</code>.</li>
- * <li><code>label</code> specifies a human readable label for this launcher
- * extension.</li>
- * <li><code>wizard</code> specifies the fully qualified name of the java class
- * that implements <code>org.eclipse.debug.ui.ILaunchWizard</code>. The debug UI
- * may invoke the wizard to perform a launch, or this launcher extension
- * may present the wizard when asked to launch.</li>
- * <li></code>layout</code> specifies the identifier of a layout that should be
- * used to present the resulting launch.</li>
- * </ul>
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see org.eclipse.debug.core.ILaunch
- * @see org.eclipse.debug.core.Launch
- * @see org.eclipse.debug.core.ILaunchManager
- * @see org.eclipse.debug.core.ILauncher
- */
-public interface ILauncherDelegate {
- /**
- * Notifies this launcher delegate to launch in the given mode,
- * register the resulting launch with the launch manager.
- * Returns <code>true</code> if successful, otherwise <code>false</code>.
- * This typically results in the creation of one or more processes and/or
- * a debug target. The collection of elements provides context for
- * launch. The determination of which or how many objects to launch
- * is launcher dependent. This method blocks until the launch is
- * complete. The given launcher is the owner of this delegate.
- * <p>
- * For example, when the debug UI invokes a launcher, the
- * collection of elements passed in represent the selected elements
- * in the UI, and the mode specified will be run or debug (depending on
- * which launch button was pressed). A launcher will generally examine the
- * element collection to determine what to launch. For example, if the
- * collection contains one launchable program, or one runnable program
- * can be inferred from the collection, the launcher will launch
- * that program. If the collection contains more than one runnable
- * program, or more than one runnable program can be inferred from the
- * collection, the launcher may ask the user to select a program to launch.
- * </p>
- * <p>
- * Launching the program itself usually requires running an external
- * program specific to a debug architecture/debug model, and wrapping the
- * result in a debug target or process that can be registered in a launch object.
- * </p>
- *
- * @param elements an array of objects providing a context for the launch
- * @param mode run or debug (as defined by <code>ILaunchManager.RUN_MODE</code>,
- * <code>ILaunchManager.DEBUG_MODE</code>)
- * @param launcher the proxy to this lazily instantiated extension which needs
- * to be supplied in the resulting launch object
- * @return whether the launch succeeded
- *
- * @see org.eclipse.debug.core.ILaunch
- * @see org.eclipse.debug.core.Launch
- * @see IDebugTarget
- * @see IProcess
- * @see org.eclipse.debug.core.ILaunchManager#registerLaunch
- */
- boolean launch(Object[] elements, String mode, ILauncher launcher);
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IProcess.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IProcess.java
deleted file mode 100644
index ca185d5..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IProcess.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.core.runtime.IAdaptable;
-
-/**
- * A process represents a program running in normal (non-debug) mode.
- * Processes support setting and getting of client defined attributes.
- * This way, clients can annotate a process with any extra information
- * important to them. For example, classpath annotations, or command
- * line arguments used to launch the process may be important to a client.
- * <p>
- * Clients may implement this interface, however, the debug plug-in
- * provides an implementation of this interface for a
- * <code>java.lang.Process</code>.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see org.eclipse.debug.core.DebugPlugin#newProcess(Process, String)
- */
-public interface IProcess extends IAdaptable, ITerminate {
-
- /**
- * Returns a human-readable label for this process.
- *
- * @return a label
- */
- String getLabel();
- /**
- * Returns the <code>ILaunch</code> this element originated from, or
- * <code>null</code> if this element has not yet been registered with
- * an <code>ILaunch</code>. This is a convenience method for
- * <code>ILaunchManager.findLaunch(IProcess)</code>.
- *
- * @return the launch this process is contained in
- */
- ILaunch getLaunch();
- /**
- * Returns a proxy to the standard input, output, and error streams
- * for this process, or <code>null</code> if not supported.
- *
- * @return a streams proxy, or <code>null</code> if not supported
- */
- IStreamsProxy getStreamsProxy();
-
- /**
- * Sets the value of a client defined attribute.
- *
- * @param key the attribute key
- * @param value the attribute value
- */
- void setAttribute(String key, String value);
-
- /**
- * Returns the value of a client defined attribute.
- *
- * @param key the attribute key
- * @return value the attribute value, or <code>null</code> if undefined
- */
- String getAttribute(String key);
-
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ISourceLocator.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ISourceLocator.java
deleted file mode 100644
index ff1bf1e..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ISourceLocator.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.model.IStackFrame;
-
-/**
- * A source locator locates source elements for stack frames. Each
- * debug session launch (optionally) specifies a source locator which is
- * used to locate source for that debug session. If a launch does not
- * provide a source locator, source cannot be displayed.
- * Abstraction of source lookup allows clients to hide implementation
- * details of source location and representation.
- * <p>
- * Generally, an implementor of a debug model will also implement launchers
- * and source locators that work together as a whole. That is, the implementation
- * if a source locator will have knowledge of how to locate a source element
- * for a stack frame. For example, a Java stack frame could define API which
- * specifies a source file name. A Java source locator would use this information
- * to locate the associated file in the workspace.
- * </p>
- * <p>
- * Source is displayed by the debug UI plug-in. The debug UI uses a source locator
- * to resolve an object representing the source for a stack frame, and then uses
- * a debug model presentation to determine the editor and editor input to use to
- * display the actual source in an editor.
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see org.eclipse.debug.core.ILaunch
- * @see IStackFrame
- * @see org.eclipse.debug.ui.IDebugModelPresentation
- */
-public interface ISourceLocator {
-
- /**
- * Returns a source element that corresponds to the given stack frame, or
- * <code>null</code> if a source element could not be located. The object returned
- * by this method will be used by the debug UI plug-in to display source.
- * The debug UI uses the debug model presentation associated
- * with the given stack frame's debug model to translate a source object into an
- * {editor input, editor id} pair in which to display source.
- * <p>
- * For example, a java source locator could return an object representing a
- * compilation unit or class file. The java debug model presentation would
- * then be responsible for providing an editor input and editor id for each
- * compilation unit and class file such that the debug UI could display source.
- * </p>
- *
- * @param stackFrame the stack frame for which to locate source
- * @return an object representing a source element.
- */
- Object getSourceElement(IStackFrame stackFrame);
-
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStackFrame.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStackFrame.java
deleted file mode 100644
index 8714b80..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStackFrame.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * A stack frame represents a stack frame in a suspended thread. A
- * stack frame has element type <code>STACK_FRAME</code>, and a parent
- * of type <code>THREAD</code>. The children of a stack frame are of
- * type <code>VARIABLE</code>, and represent the visible variables in
- * the stack frame. Minimally, a stack frame supports
- * the following capabilities:
- * <ul>
- * <li>suspend/resume (convenience to resume this stack frame's thread)
- * <li>stepping
- * </ul>
- * <p>
- * An implementation may choose to re-use or discard
- * stack frames on iterative thread suspensions. Clients
- * cannot assume that stack frames are identical or equal across
- * iterative thread suspensions and must check for equality on iterative
- * suspensions if they wish to re-use the objects.
- * </p>
- * <p>
- * An implementation that preserves equality
- * across iterative suspensions may display more desirable behavior in
- * some clients. For example, if stack frames are preserved
- * while stepping, a UI client would be able to update the UI incrementally,
- * rather than collapse and redraw the entire list.
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see ISuspendResume
- * @see IStep
- */
-public interface IStackFrame extends IDebugElement, IStep, ISuspendResume {
- /**
- * Returns the line number of the instruction pointer in
- * this stack frame that corresponds to a line in an associated source
- * element, or <code>-1</code> if line number information
- * is unavailable.
- *
- * @return line number of instruction pointer in this stack frame
- * @exception DebugException if unable to retrieve this stack frame's line number
- * from the target
- */
- int getLineNumber() throws DebugException;
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStep.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStep.java
deleted file mode 100644
index e95428e..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStep.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to step into, over, and return
- * from the current statement in a thread.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IStep {
- /**
- * Returns whether this element can currently perform a step into.
- *
- * @return whether this element can currently perform a step into
- */
- boolean canStepInto();
- /**
- * Returns whether this element can currently perform a step over.
- *
- * @return whether this element can currently perform a step over
- */
- boolean canStepOver();
- /**
- * Returns whether this element can currently perform a step return.
- *
- * @return whether this element can currently perform a step return
- */
- boolean canStepReturn();
- /**
- * Returns whether this element is currently stepping.
- * <p>
- * For example, a thread is considered to be stepping
- * after the <code>stepOver</code> call until the step over is completed,
- * a breakpoint is reached, an exception is thrown, or the thread or is
- * terminated.
- * </p>
- *
- * @return whether this element is currently stepping
- */
- public boolean isStepping();
- /**
- * Steps into the current statement, generating <code>RESUME</code>
- * and <code>SUSPEND</code> events for this thread. Can only be called
- * when this thread is suspended. Implementations may choose to implement
- * stepping as blocking or non-blocking.
- *
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target</li>
- * <li>NOT_SUPPORTED - The capability is not supported by the target</li>
- * </ul>
- */
- void stepInto() throws DebugException;
- /**
- * Steps over the current statement, generating <code>RESUME</code>
- * and <code>SUSPEND</code> events for this thread. Can only be called
- * when this thread is suspended. Implementations may choose to implement
- * stepping as blocking or non-blocking.
- *
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target</li>
- * <li>NOT_SUPPORTED - The capability is not supported by the target</li>
- * </ul>
- */
- void stepOver() throws DebugException;
- /**
- * Steps to the next return statement in the current scope,
- * generating <code>RESUME</code> and <code>SUSPEND</code> events for
- * this thread. Can only be called when this thread is suspended.
- * Implementations may choose to implement stepping as blocking or non-blocking.
- *
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target</li>
- * <li>NOT_SUPPORTED - The capability is not supported by the target</li>
- * </ul>
- */
- void stepReturn() throws DebugException;
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStreamMonitor.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStreamMonitor.java
deleted file mode 100644
index e4f76bd..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStreamMonitor.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.IStreamListener;
-
-/**
- * A stream monitor manages the contents of a stream a process
- * is writing to, and notifies registered listeners of changes in
- * the stream.
- * <p>
- * Clients may implement this interface. Generally, a client that
- * provides an implementation of the <code>IStreamsProxy</code>
- * interface must also provide an implementation of this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IStreamsProxy
- */
-public interface IStreamMonitor {
- /**
- * Adds the given listener to the registered listeners.
- * Has no effect if an identical listener is already registered.
- *
- * @param the listener to add
- */
- public void addListener(IStreamListener listener);
- /**
- * Returns the current contents of the stream. An empty
- * String is returned if the stream is empty.
- *
- * @return the stream contents as a <code>String</code>
- */
- public String getContents();
- /**
- * Removes the given listener from the registered listeners.
- * Has no effect if the listener is not already registered.
- *
- * @param the listener to remove
- */
- public void removeListener(IStreamListener listener);
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStreamsProxy.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStreamsProxy.java
deleted file mode 100644
index 151ff7e..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IStreamsProxy.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import java.io.IOException;
-
-/**
- * A streams proxy acts as proxy between the streams of an
- * process and interested clients. This abstraction allows
- * implementations of <code>IProcess</code> to handle I/O related
- * to the standard input, output, and error streams associated
- * with a process.
- * <p>
- * Clients implementing the <code>IProcess</code> interface must also
- * provide an implementation of this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IProcess
- * @see org.eclipse.debug.core.DebugPlugin#newProcess(Process, String)
- */
-public interface IStreamsProxy {
- /**
- * Returns a monitor for the error stream of this proxy's process,
- * or <code>null</code> if not supported.
- * The monitor is connected to the error stream of the
- * associated process.
- *
- * @return an input stream monitor, or <code>null</code> if none
- */
- public IStreamMonitor getErrorStreamMonitor();
- /**
- * Returns a monitor for the output stream of this proxy's process,
- * or <code>null</code> if not supported.
- * The monitor is connected to the output stream of the
- * associated process.
- *
- * @return an input stream monitor, or <code>null</code> if none
- */
- public IStreamMonitor getOutputStreamMonitor();
- /**
- * Writes the given text to the output stream connected to the
- * standard input stream of a this proxy's process.
- *
- * @exception IOException when an error occurs writing to the
- * underlying <code>OutputStream</code>.
- *
- */
- public void write(String input) throws IOException;
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ISuspendResume.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ISuspendResume.java
deleted file mode 100644
index 359171e..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ISuspendResume.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to suspend and resume a thread
- * or debug target.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface ISuspendResume {
- /**
- * Returns whether this element can currently be resumed.
- *
- * @return whether this element can currently be resumed
- */
- public boolean canResume();
- /**
- * Returns whether this element can currently be suspended.
- *
- * @return whether this element can currently be suspended
- */
- public boolean canSuspend();
- /**
- * Returns whether this element is currently suspened.
- *
- * @return whether this element is currently suspened
- */
- public boolean isSuspended();
- /**
- * Causes this element to resume its execution. Has no effect
- * on an element that is not suspended. This call is non-blocking.
- *
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target
- * <li>NOT_SUPPORTED - The capability is not supported by the target
- * </ul>
- */
- public void resume() throws DebugException;
- /**
- * Causes this element to suspend its execution.
- * Has no effect on an already suspened element.
- * Implementations may be blocking or non-blocking.
- *
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target
- * <li>NOT_SUPPORTED - The capability is not supported by the target
- * </ul>
- */
- public void suspend() throws DebugException;
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ITerminate.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ITerminate.java
deleted file mode 100644
index 17dcbed..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ITerminate.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to terminate an execution
- * context - for example, a thread, debug target or process.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface ITerminate {
- /**
- * Returns whether this element can be terminated.
- *
- * @return whether this element can be terminated
- */
- boolean canTerminate();
- /**
- * Returns whether this element is terminated.
- *
- * @return whether this element is terminated
- */
- public boolean isTerminated();
- /**
- * Causes this element to terminate. Implementations may be
- * blocking or non-blocking.
- *
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target
- * <li>NOT_SUPPORTED - The capability is not supported by the target
- * </ul>
- */
- public void terminate() throws DebugException;
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IThread.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IThread.java
deleted file mode 100644
index 75d7755..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IThread.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * A thread represents a thread of execution in a debug target. A
- * thread has element type <code>THREAD</code>, and a parent
- * of type <code>DEBUG_TARGET</code>. The children of a thread are of
- * type <code>STACK_FRAME</code>. A thread only has children when
- * suspended, and children are returned in top-down order.
- * Minimally, a thread supports the following capabilities:
- * <ul>
- * <li>suspend/resume
- * <li>stepping
- * <li>termiante
- * </ul>
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see ISuspendResume
- * @see IStep
- * @see ITerminate
- * @see IStackFrame
- */
-
-public interface IThread extends IDebugElement, ISuspendResume, IStep, ITerminate {
- /**
- * Returns the priority of this thread. The meaning of this
- * number is operating-system dependent.
- *
- * @return thread priority
- * @exception DebugException if unable to retrieve this thread's priority from
- * the target
- */
- int getPriority() throws DebugException;
- /**
- * Returns the top stack frame or <code>null</code> if there is
- * currently no top stack frame.
- *
- * @return the top stack frame, or <code>null</code> if none
- * @exception DebugException if unable to retrieve this thread's top stack frame
- * from the target
- */
- IStackFrame getTopStackFrame() throws DebugException;
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IValue.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IValue.java
deleted file mode 100644
index 9e81b6d..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IValue.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * A value represents the value of a variable.
- * A value does not have a parent - instead it has an associated variable.
- * A value representing a complex data structure has
- * children of type <code>VARIABLE</code>.
- * <p>
- * An implementation may choose to re-use or discard
- * values on iterative thread suspensions. Clients
- * cannot assume that values are identical or equal across
- * iterative thread suspensions and must check for equality on iterative
- * suspensions if they wish to re-use the objects.
- * </p>
- * <p>
- * An implementation that preserves equality
- * across iterative suspensions may display more desirable behavior in
- * some clients. For example, if variables are preserved
- * while stepping, a UI client would be able to update the UI incrementally,
- * rather than collapse and redraw the entire list or tree.
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IVariable
- */
-
-
-public interface IValue extends IDebugElement {
-
- /**
- * Returns a description of the type of data this value contains
- * or references.
- *
- * @return reference type
- * @exception DebugException if unable to retrieve this value's reference type
- * name from the target
- */
- String getReferenceTypeName() throws DebugException;
-
- /**
- * Returns this value as a <code>String</code>.
- *
- * @return value
- * @exception DebugException if unable to retrieve this value's value description
- * from the target
- */
- String getValueString() throws DebugException;
-
- /**
- * Returns the name of this element. Implementations of <code>IValue</code>
- * return <code>null</code>. Values do not have names.
- *
- * @return <code>null</code>
- */
- String getName();
-
- /**
- * Returns the variable this value is bound to, or <code>null</code>
- * if this value is not bound to a variable.
- *
- * @return a variable, or <code>null</code> if none
- */
- IVariable getVariable();
-
- /**
- * Returns the parent of this element. Implementations of <code>IVariable</code>
- * return <code>null</code>. Values do not have parents.
- *
- * @return <code>null</code>
- */
- IDebugElement getParent();
-
- /**
- * Returns whether this value is currently allocated.
- * <p>
- * For example, if this value represents
- * an object that has been garbage collected, <code>false</code> would
- * be returned.
- * </p>
- * @return whether this value is currently allocated
- * @exception DebugException if unable to determine if this value is currently
- * allocated on the target
- */
- boolean isAllocated() throws DebugException;
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IValueModification.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IValueModification.java
deleted file mode 100644
index e3f4229..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IValueModification.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * Provides the ability to modify the value of a variable in
- * the target.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IVariable
- */
-public interface IValueModification {
-
- /**
- * Attempts to set the value of this variable to the
- * value of the given expression.
- *
- * @param expression an expression to generate a new value
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target
- * <li>NOT_SUPPORTED - The capability is not supported by the target
- * </ul>
- */
- public void setValue(String expression) throws DebugException;
-
- /**
- * Returns whether this varaible supports value modification.
- *
- * @return whether this varaible supports value modification
- */
- public boolean supportsValueModification();
-
- /**
- * Returns whether the given expression is valid to be used in
- * setting a new value for this variable.
- *
- * @param expression an expression to generate a new value
- * @return whether the expression is acceptable
- * @exception DebugException on failure. Reasons include:<ul>
- * <li>TARGET_REQUEST_FAILED - The request failed in the target
- * <li>NOT_SUPPORTED - The capability is not supported by the target
- * </ul>
- */
- public boolean verifyValue(String expression) throws DebugException;
-
-}
-
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IVariable.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IVariable.java
deleted file mode 100644
index 513c178..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/IVariable.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package org.eclipse.debug.core.model;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugException;
-
-/**
- * A variable represents a visible variable in a stack frame,
- * or the child of a value. A variable has a type of <code>VARIABLE</code>.
- * A variable's parent may be of type
- * <code>STACK_FRAME</code> or <code>VALUE</code>.
- * Each variable has a value which may in turn
- * have children. A variable itself does not have children.
- * A variable may support value modification.
- * <p>
- * An implementation may choose to re-use or discard
- * variables on iterative thread suspensions. Clients
- * cannot assume that variables are identical or equal across
- * iterative thread suspensions and must check for equality on iterative
- * suspensions if they wish to re-use the objects.
- * </p>
- * <p>
- * An implementation that preserves equality
- * across iterative suspensions may display more desirable behavior in
- * some clients. For example, if variables are preserved
- * while stepping, a UI client would be able to update the UI incrementally,
- * rather than collapse and redraw the entire list or tree.
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @see IValue
- * @see IStackFrame
- * @see IValueModification
- */
-public interface IVariable extends IDebugElement, IValueModification {
- /**
- * Returns the children of this elemnet. Implementations of
- * <code>IVariable</code> return an empty collection.
- *
- * @return an empty collection
- * @see IDebugElement
- * @exception DebugException if an unable to retrieve children from
- * the target
- */
- IDebugElement[] getChildren() throws DebugException;
-
- /**
- * Returns the value of this variable.
- *
- * @return variable value
- * @exception DebugException if unable to retrieve this variable's value
- * from the target
- */
- IValue getValue() throws DebugException;
-
- /**
- * Returns a description of the type of data this variable is
- * declared to reference. Note that the type of a variable
- * and the type of its value are not always the same.
- *
- * @return declared type of variable
- * @exception DebugException if unable to retrieve this variables reference type
- * name from the target
- */
- String getReferenceTypeName() throws DebugException;
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/package.html b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/package.html
deleted file mode 100644
index 59c1b7b..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/package.html
+++ /dev/null
@@ -1,57 +0,0 @@
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
-<title>Eclipse Debug Tools</title>
-</head>
-
-<body bgcolor="#FFFFFF">
-
-<h3>The Debug Model</h3>
-
-<p><strong>Note:</strong> this package is part of an interim API that is still under
-development and expected to change significantly before reaching stability. It is being
-made available at this early stage to soloicit feedback from pioneering adopters on the
-understanding that any code that uses this API will almost certainly be broken
-(repeatedly) as the API evolves.</p>
-
-<p>A language independent "debug model" is represented by the set of interfaces
-defined in <font face="Courier">org.eclipse.debug.core.model</font>. A client implements a debug
-model by providing an implementation of these interfaces in a plug-in. (There is no
-explicit extension point that represents a debug model). Each debug architecture will have
-its own way of initiating a debug session. Generally, each debug model will provide one or
-more launchers capable of initiating a debug session. A "launcher" is an
-extension point defined by the debug plug-in. A launcher is responsible for starting a
-debug session, and registering the result with the debug plug-in. Launching is a client
-responsibility.</p>
-
-<p>The common elements defined by the debug plug-in are:
-
-<ul>
- <li>Debug Target - a debug target represents a debuggable program - for example, a virtual
- machine or a process.</li>
- <li>Thread - a debug target may contain one or more threads</li>
- <li>Stack Frame - a thread that is suspended may contain one or more stack frames</li>
- <li>Variable - a stack frame may contain variables</li>
- <li>Value - each variable has a value, and a value may contain more variables (to represent
- complex data structures and objects)</li>
- <li>Process - a program running in normal (non-debug) mode</li>
-</ul>
-
-<h4>Rendering & Presentation</h4>
-
-<p>Debug model elements and breakpoints are displayed in the workbench. To support
-configurable and extensible presentation, the debug UI plug-in defines the <font
-face="Courier">debugModelPresentations</font> extension point. Extensions of this kind
-register for a specific debug model. It is intended that an implementation of a debug
-model will also provide an implementation of a debug model presentation. The presentation
-provides:
-
-<ul>
- <li>an image for a debug element or breakpoint</li>
- <li>a label for a debug element or breakpoint</li>
- <li>an editor input that should be used to display the debug element or breakpoint</li>
-</ul>
-</body>
-</html>
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/package.html b/org.eclipse.debug.core/core/org/eclipse/debug/core/package.html
deleted file mode 100644
index 8147687..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/package.html
+++ /dev/null
@@ -1,176 +0,0 @@
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
-<title>Eclipse Debug Tools</title>
-</head>
-
-<body bgcolor="#FFFFFF">
-
-<p>Provides support for launching programs and defines interfaces for a debug model to
-support an extensible set debug architectures.</p>
-
-<h2>Package Specification</h2>
-
-<p><strong>Note</strong>: this package is part of an interim API that is still under
-development and expected to change significantly before reaching stability. It is being
-made available at this early stage to soloicit feedback from pioneering adopters on the
-understanding that any code that uses this API will almost certainly be broken
-(repeatedly) as the API evolves.</p>
-
-<p>Eclipse Debug Tools provides classes and interfaces to support the launching,
-registration, and manipulation of debuggable and non-debuggable programs. An extensible
-set of debug architectures and languages are supported by the definition of a "debug
-model" - a set of interfaces representing common artifacts in debuggable programs.
-The debug plug-in itself does not provide any implementations of a debug model. It is
-intended that third parties providing an integrated set of development tools for a
-specific language will also implement a debug model for that language, using an underlying
-debug architecture of their choice. For example, Java Tooling provides an implementation
-of a debug model based on the standard Java Debug Interface (JDI).</p>
-
-<h4>The Debug Model</h4>
-
-<p>The "debug model" is represented by the set of interfaces defined in <font
-face="Courier">org.eclipse.debug.core.model</font>. A client implements a debug model by
-providing an implementation of these interfaces in a plug-in. (There is no explicit
-extension point that represents a debug model). Each debug architecture will have its own
-way of initiating a debug session. Generally, each debug model will provide one or more
-launchers capable of initiating a debug session. A "launcher" is an extension
-point defined by the debug plug-in. A launcher is responsible for starting a debug
-session, and registering the result with the debug plug-in. Launching is a client
-responsibility.</p>
-
-<p>The common elements defined by the debug plug-in are:
-
-<ul>
- <li>Debug Target - a debug target represents a debuggable program - for example, a virtual
- machine or a process.</li>
- <li>Thread - a debug target may contain one or more threads</li>
- <li>Stack Frame - a thread that is suspended may contain one or more stack frames</li>
- <li>Variable - a stack frame may contain variables</li>
- <li>Value - each variable has a value, and a value may contain more variables (to represent
- complex data structures and objects)</li>
-</ul>
-
-<h5>Rendering & Presentation</h5>
-
-<p>Debug model elements and breakpoints are displayed in the workbench. To support
-configurable and extensible presentation, the<font face="Courier"> debugModelPresentations</font>
-extension point is used. Extensions may be registered for a specific debug model. It is
-intended that an implementation of a debug model will also provide an implementation of a
-debug model presentation. The presentation provides:
-
-<ul>
- <li>an image for a debug element or breakpoint</li>
- <li>a label for a debug element or breakpoint</li>
- <li>an editor input that should be used to display the debug element or breakpoint</li>
-</ul>
-
-<h4>Breakpoints</h4>
-
-<p>Breakpoints are used to suspend the execution of a program being debugged. There are
-many kinds of breakpoints - line breakpoints, conditional line breakpoints, hit count
-breakpoints, exception breakpoints, etc. The kinds of breakpoints supported by each debug
-architecture (for example, JDI), and the information required to create those breakpoints
-is dictated by each debug architecture. Thus, Eclipse Debug Tools supports an extensible
-set of breakpoint types.</p>
-
-<p>Eclipse Debug Tools provides a breakpoint manager that maintains the collection of all
-known breakpoints. Clients add and remove breakpoints via this manager. Breakpoints are
-represented by markers in the workspace, providing persistence and an extensible set of
-breakpoint attributes. Eclipse Debug Tools defines the root breakpoint marker and the
-common line breakpoint marker, as well as the attributes for these markers. Breakpoint
-creation is a client responsibility - that is, choosing which resource to associate a
-breakpoint with.</p>
-
-<p>The breakpoint definitions in plug-in <font face="Courier New">org.eclipse.debug.core</font>
-are as follows: </p>
-<font SIZE="2">
-
-<p><font face="Courier"><extension id="breakpoint"
-point="org.eclipse.core.resources.markers"><br>
- <super type="org.eclipse.core.resources.marker"/><br>
- <persisted value="true"/></font></font><br>
-<font face="Courier" SIZE="2"> <attribute
-name="modelIdentifier"/><br>
- <attribute name="enabled"/><br>
-</extension></font></p>
-
-<p><font face="Courier" SIZE="2"><extension id="lineBreakpoint"
-point="org.eclipse.core.resources.markers"><br>
- <super type="org.eclipse.debug.core.breakpoint"/><br>
- <super type="org.eclipse.core.resources.textmarker"/><br>
- <persisted value="true"/><br>
-</extension></font></p>
-
-<h5>Breakpoint Creation</h5>
-
-<p>The breakpoint lifecycle begins with breakpoint creation. The location in which a
-breakpoint may be placed, and the attributes that its debug target requires to install the
-breakpoint is specific to each debug model. For this reason, breakpoint creation is a
-client responsibility. Generically, the breakpoint creation scenario involves the
-following steps:
-
-<ol>
- <li>Creation of a (subtype of the) breakpoint marker. This requires that a marker be created
- with all appropriate attributes. For convenience, the breakpoint manager has API for
- configuring default values for required attributes on markers.</li>
- <li>Registration of the breakpoint marker with the breakpoint manager. A breakpoint is not
- considered active until it is registered with the breakpoint manager.</li>
-</ol>
-
-<p>Note that verifying the location of the breakpoint is valid is also a client
-responsibility.</p>
-
-<h5>Persistence</h5>
-
-<p>Breakpoints are persisted via the standard marker mechanism. Breakpoints defined with
-the <font face="Courier New">persisted</font> attribute as <font face="Courier New">false</font>
-will not be persisted. Breakpoints are restored at workspace startup time by the
-breakpoint manager - that is, all persisted markers which are a subtype of the root
-breakpoint marker are added to the breakpoint manager. To allow for selective persistence
-of breakpoints, the root breakpoint marker defines a "persisted" attribute. If
-this value is set to false, the breakpoint will not be persisted.</p>
-
-<h5>Change Notification</h5>
-
-<p>As breakpoint markers are modified (created, removed, and attribute values are
-changed), resource deltas are created by the platform. The breakpoint manager translates
-pertinent resource deltas into breakpoint change notifications (breakpoint
-added/removed/changed messages). Interested listeners may register with the breakpoint
-manager. The breakpoint manager only fires change notifications for registered
-breakpoints. This simplifies breakpoint processing for clients, as resource delta
-traversal and analysis is not required. Thus clients have two options - listening to
-resource deltas from the platform, or listening to change notification from the breakpoint
-manager. However, clients should be careful to note that breakpoints marker deltas should
-only be considered as breakpoint changes if a breakpoint is currently active (registered
-with the breakpoint manager).</p>
-
-<h5>Deletion</h5>
-
-<p>Removing a breakpoint from the breakpoint manager signals the end of the breakpoint
-lifecycle. A breakpoint may be removed with the method <font face="Courier">org.eclipse.debug.core.IBreakpointManager.removeBreakpoint(IMarker)</font>,
-or by deleting the underlying marker (in the later case, the breakpoint manager notices a
-breakpoint has been deleted, and automatically removes it).</p>
-
-<h5>Extensibility</h5>
-
-<p>Clients can define new kinds of breakpoints with the appropriate plug-in XML and
-subtyping any of the defined breakpoint markers. For example, a client may define an
-exception breakpoint as a subtype of the root breakpoint, or a client might define a
-conditional breakpoint as a subtype of the line breakpoint. The breakpoint manager does
-not define generic breakpoints of these types since the attributes required are debug
-model dependent.</p>
-
-<h5>Target Notification</h5>
-
-<p>Debug targets are notified of breakpoints via the <font face="Courier New">IBreakpointListener</font>
-mechanism. The breakpoint manager only notifies debug targets of breakpoints
-added/changed/removed, after a target has been created. Since breakpoints are often in
-existence before a debug target is launched, a debug target is responsible for querying
-the breakpoint manager for breakpoints in existence when it is created - see <font
-face="Courier">org.eclipse.debug.core.IBreakpointManager.getBreakpoints(String)</font>,
-which provides a list of active breakpoints for a specific debug model.</p>
-</body>
-</html>
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/BreakpointManager.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/BreakpointManager.java
deleted file mode 100644
index 7f848da..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/BreakpointManager.java
+++ /dev/null
@@ -1,486 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.debug.core.*;
-import org.eclipse.debug.core.model.IBreakpointSupport;
-import org.eclipse.debug.core.model.IDebugTarget;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.Vector;
-
-/**
- * The breakpoint manager manages all registered breakpoints
- * for the debug plugin. It is instantiated by the debug plugin.
- *
- * @see IBreakpointManager
- */
-public class BreakpointManager implements IBreakpointManager, IResourceChangeListener, ILaunchListener {
-
- private final static String PREFIX= "breakpoint_manager.";
- private final static String ERROR= PREFIX + "error.";
- private final static String OLD_MARKER= ERROR + "old_marker";
- private final static String ADAPTER= ERROR + "adapter";
- private final static String LABEL_PROPERTY= ERROR + "label_property";
- private final static String EXTENSION= ERROR + "extension";
- private final static String ASSOCIATED_RESOURCE= ERROR + "associated_resource";
- private final static String REQUIRED_ATTRIBUTES= ERROR + "required_attributes";
- private final static String LINE_NUMBER= ERROR + "line_number";
- private final static String CREATION_FAILED= ERROR + "creation_failed";
- private final static String UNSUPPORTED_EXTENSION= ERROR + "unsupported_extension";
- private final static String INSTALLATION_FAILED= ERROR + "installation_failed";
- private final static String REMOVE_FAILED= ERROR + "remove_failed";
- private final static String ENABLE= ERROR + "enable";
- private final static String HIT_COUNT= ERROR + "hit_count";
- private final static String TARGET= ERROR + "target";
-
- /**
- * Constants for breakpoint add/remove/change updates
- */
- private final static int ADDED = 0;
- private final static int REMOVED = 1;
- private final static int CHANGED = 2;
-
- /**
- * A collection of breakpoint registered with this manager.
- *
- */
- protected Vector fBreakpoints;
-
- /**
- * Collection of breakpoint listeners.
- */
- protected ListenerList fBreakpointListeners= new ListenerList(6);
-
- /**
- * Singleton resource delta visitor
- */
- protected static BreakpointManagerVisitor fgVisitor;
-
- /**
- * The set of attributes used to configure a breakpoint
- */
- protected static final String[] fgBreakpointAttributes= new String[]{IDebugConstants.MODEL_IDENTIFIER, IDebugConstants.ENABLED};
-
- /**
- * The set of attributes used to configure a line breakpoint
- */
- protected static final String[] fgLineBreakpointAttributes= new String[]{IDebugConstants.MODEL_IDENTIFIER, IDebugConstants.ENABLED, IMarker.LINE_NUMBER, IMarker.CHAR_START, IMarker.CHAR_END};
-
- /**
- * Constructs a new breakpoint manager.
- */
- public BreakpointManager() {
- fBreakpoints= new Vector(15);
- }
-
- /**
- * Registers this manager as a resource change listener and launch
- * listener. Loads the list of breakpoints from the breakpoint markers in the
- * workspace. This method should only be called on initial startup of
- * the debug plugin.
- *
- * @exception CoreException if an error occurrs retreiving breakpoint markers
- */
- public void startup() throws CoreException {
- getWorkspace().addResourceChangeListener(this);
- getLaunchManager().addLaunchListener(this);
- IMarker[] breakpoints= null;
- IWorkspaceRoot root= getWorkspace().getRoot();
- breakpoints= root.findMarkers(IDebugConstants.BREAKPOINT_MARKER, true, IResource.DEPTH_INFINITE);
-
- for (int i = 0; i < breakpoints.length; i++) {
- IMarker marker= breakpoints[i];
- try {
- addBreakpoint(marker);
- } catch (DebugException e) {
- logError(e);
- }
- }
- }
-
- /**
- * Removes this manager as a resource change listener
- */
- public void shutdown() {
- getWorkspace().removeResourceChangeListener(this);
- getLaunchManager().removeLaunchListener(this);
- }
-
-
- /**
- * Convenience method to get the launch manager.
- */
- protected ILaunchManager getLaunchManager() {
- return DebugPlugin.getDefault().getLaunchManager();
- }
-
- /**
- * Convenience method to get the workspace
- */
- protected IWorkspace getWorkspace() {
- return ResourcesPlugin.getWorkspace();
- }
-
- /**
- * @see IBreakpointManager
- */
- public IMarker[] getBreakpoints() {
- IMarker[] temp= new IMarker[fBreakpoints.size()];
- fBreakpoints.copyInto(temp);
- return temp;
- }
-
- /**
- * @see IBreakpointManager
- */
- public IMarker[] getBreakpoints(String modelIdentifier) {
- Vector temp= new Vector(fBreakpoints.size());
- if (!fBreakpoints.isEmpty()) {
- Iterator bps= fBreakpoints.iterator();
- while (bps.hasNext()) {
- IMarker bp= (IMarker) bps.next();
- String id= getModelIdentifier(bp);
- if (id != null && id.equals(modelIdentifier)) {
- temp.add(bp);
- }
- }
- }
- IMarker[] m= new IMarker[temp.size()];
- temp.copyInto(m);
- return m;
- }
-
- /**
- * @see IBreakpointManager
- */
- public int getLineNumber(IMarker breakpoint) {
- return breakpoint.getAttribute(IMarker.LINE_NUMBER, -1);
- }
-
- /**
- * @see IBreakpointManager
- */
- public int getCharStart(IMarker breakpoint) {
- return breakpoint.getAttribute(IMarker.CHAR_START, -1);
- }
-
- /**
- * @see IBreakpointManager
- */
- public int getCharEnd(IMarker breakpoint) {
- return breakpoint.getAttribute(IMarker.CHAR_END, -1);
- }
-
- /**
- * Returns the model identifier for the given breakpoint.
- */
- public String getModelIdentifier(IMarker breakpoint) {
- return (String) breakpoint.getAttribute(IDebugConstants.MODEL_IDENTIFIER, (String)null);
- }
-
- /**
- * @see IBreakpointManager
- */
- public boolean isEnabled(IMarker marker) {
- return marker.getAttribute(IDebugConstants.ENABLED, true);
- }
-
- /**
- * @see IBreakpointManager
- */
- public boolean isRegistered(IMarker marker) {
- return fBreakpoints.contains(marker);
- }
-
- /**
- * @see IBreakpointManager
- */
- public void removeBreakpoint(IMarker breakpoint, boolean delete) throws CoreException {
- if (fBreakpoints.remove(breakpoint)) {
- fireUpdate(breakpoint, null, REMOVED);
- if (delete) {
- breakpoint.delete();
- }
- }
- }
-
- /**
- * @see IBreakpointManager
- */
- public void addBreakpoint(IMarker breakpoint) throws DebugException {
- if (!fBreakpoints.contains(breakpoint)) {
- verifyBreakpoint(breakpoint);
- fBreakpoints.add(breakpoint);
- fireUpdate(breakpoint, null, ADDED);
- }
- }
-
- /**
- * Verifies that the breakpoint marker has the minimal required attributes,
- * and throws a debug exception if not.
- */
- protected void verifyBreakpoint(IMarker breakpoint) throws DebugException {
- try {
- String id= (String) breakpoint.getAttribute(IDebugConstants.MODEL_IDENTIFIER);
- if (id == null) {
- throw new DebugException(new Status(IStatus.ERROR, DebugPlugin.getDefault().getDescriptor().getUniqueIdentifier(),
- IDebugStatusConstants.CONFIGURATION_INVALID, DebugCoreUtils.getResourceString(REQUIRED_ATTRIBUTES), null));
- }
- } catch (CoreException e) {
- throw new DebugException(e.getStatus());
- }
- }
-
- /**
- * A resource has changed. Traverses the delta for breakpoint changes.
- */
- public void resourceChanged(IResourceChangeEvent event) {
- IResourceDelta delta= event.getDelta();
- if (delta != null) {
- try {
- if (fgVisitor == null) {
- fgVisitor= new BreakpointManagerVisitor();
- }
- delta.accept(fgVisitor);
- } catch (CoreException ce) {
- logError(ce);
- }
- }
- }
-
- /**
- * A project has been opened or closed. Updates the breakpoints for
- * that project
- */
- protected void handleProjectResourceOpenStateChange(IResource project) {
- if (!project.isAccessible()) {
- //closed
- Enumeration breakpoints= fBreakpoints.elements();
- while (breakpoints.hasMoreElements()) {
- IMarker breakpoint= (IMarker) breakpoints.nextElement();
- IResource breakpointResource= breakpoint.getResource();
- if (project.getFullPath().isPrefixOf(breakpointResource.getFullPath())) {
- try {
- removeBreakpoint(breakpoint, false);
- } catch (CoreException e) {
- logError(e);
- }
- }
- }
- return;
- } else {
- IMarker[] breakpoints= null;
- try {
- breakpoints= project.findMarkers(IDebugConstants.BREAKPOINT_MARKER, true, IResource.DEPTH_INFINITE);
- } catch (CoreException e) {
- logError(e);
- return;
- }
- if (breakpoints != null) {
- for (int i= 0; i < breakpoints.length; i++) {
- try {
- addBreakpoint(breakpoints[i]);
- } catch (DebugException e) {
- logError(e);
- }
- }
- }
- }
- }
-
- /**
- * @see IBreakpointManager.
- */
- public void setEnabled(IMarker marker, boolean enabled) throws CoreException {
- marker.setAttribute(IDebugConstants.ENABLED, enabled);
- }
-
- /**
- * Logs errors
- */
- protected void logError(Exception e) {
- DebugCoreUtils.logError(e);
- }
-
- /**
- * Visitor for handling resource deltas
- */
- class BreakpointManagerVisitor implements IResourceDeltaVisitor {
- /**
- * @see IResourceDeltaVisitor
- */
- public boolean visit(IResourceDelta delta) {
- if (0 != (delta.getFlags() & IResourceDelta.OPEN)) {
- handleProjectResourceOpenStateChange(delta.getResource());
- return true;
- }
- IMarkerDelta[] markerDeltas= delta.getMarkerDeltas();
- for (int i= 0; i < markerDeltas.length; i++) {
- IMarkerDelta markerDelta= markerDeltas[i];
- if (markerDelta.isSubtypeOf(IDebugConstants.BREAKPOINT_MARKER)) {
- switch (markerDelta.getKind()) {
- case IResourceDelta.ADDED :
- handleAddBreakpoint(delta, markerDelta.getMarker(), markerDelta);
- break;
- case IResourceDelta.REMOVED :
- handleRemoveBreakpoint(markerDelta.getMarker(), markerDelta);
- break;
- case IResourceDelta.CHANGED :
- handleChangeBreakpoint(markerDelta.getMarker(), markerDelta);
- break;
- }
- }
- }
-
- return true;
- }
-
- /**
- * Wrapper for handling adds
- */
- protected void handleAddBreakpoint(IResourceDelta rDelta, final IMarker marker, IMarkerDelta mDelta) {
- if (0 != (rDelta.getFlags() & IResourceDelta.MOVED_FROM)) {
- // this breakpoint has actually been moved - removed from the Breakpoint manager and deleted
- final IWorkspace workspace= getWorkspace();
- final IWorkspaceRunnable wRunnable= new IWorkspaceRunnable() {
- public void run(IProgressMonitor monitor) {
- try {
- marker.delete();
- } catch (CoreException ce) {
- logError(ce);
- }
- }
- };
- Runnable runnable= new Runnable() {
- public void run() {
- try {
- workspace.run(wRunnable, null);
- } catch (CoreException ce) {
- logError(ce);
- }
- }
- };
- new Thread(runnable).start();
- } else {
- // do nothing - we do not add until explicitly added
- }
- }
-
- /**
- * Wrapper for handling removes
- */
- protected void handleRemoveBreakpoint(IMarker marker, IMarkerDelta delta) {
- if (isRegistered(marker)) {
- fBreakpoints.remove(marker);
- fireUpdate(marker, delta, REMOVED);
- }
- }
-
- /**
- * Wrapper for handling changes
- */
- protected void handleChangeBreakpoint(IMarker marker, IMarkerDelta delta) {
- if (isRegistered(marker)) {
- fireUpdate(marker, delta, CHANGED);
- }
- }
- }
-
- /**
- * @see IBreakpointManager
- */
- public void addBreakpointListener(IBreakpointListener listener) {
- fBreakpointListeners.add(listener);
- }
-
- /**
- * @see IBreakpointManager
- */
- public void removeBreakpointListener(IBreakpointListener listener) {
- fBreakpointListeners.remove(listener);
- }
-
- /**
- * Notifies listeners of the add/remove/change
- */
- protected void fireUpdate(IMarker marker, IMarkerDelta delta, int update) {
- Object[] copiedListeners= fBreakpointListeners.getListeners();
- for (int i= 0; i < copiedListeners.length; i++) {
- IBreakpointListener listener = (IBreakpointListener)copiedListeners[i];
- if (supportsBreakpoint(listener, marker)) {
- switch (update) {
- case ADDED:
- listener.breakpointAdded(marker);
- break;
- case REMOVED:
- listener.breakpointRemoved(marker, delta);
- break;
- case CHANGED:
- listener.breakpointChanged(marker, delta);
- break;
- }
-
- }
- }
- }
-
- /**
- * Returns whether the given listener supports breakpoints. If
- * the listener is a debug target, we check if the specific
- * breakpoint is supported by the target.
- */
- protected boolean supportsBreakpoint(IBreakpointListener listener, IMarker breakpoint) {
- if (listener instanceof IBreakpointSupport) {
- return ((IBreakpointSupport)listener).supportsBreakpoint(breakpoint);
- } else {
- return true;
- }
- }
-
- /**
- * @see IBreakpointManager
- */
- public void configureBreakpoint(IMarker breakpoint, String modelIdentifier, boolean enabled) throws CoreException {
- breakpoint.setAttributes(fgBreakpointAttributes, new Object[]{modelIdentifier, new Boolean(enabled)});
- }
-
- /**
- * @see IBreakpointManager
- */
- public void configureLineBreakpoint(IMarker breakpoint, String modelIdentifier, boolean enabled, int lineNumber, int charStart, int charEnd) throws CoreException {
- Object[] values= new Object[]{modelIdentifier, new Boolean(enabled), new Integer(lineNumber), new Integer(charStart), new Integer(charEnd)};
- breakpoint.setAttributes(fgLineBreakpointAttributes, values);
- }
-
- /**
- * Adds any debug targets as listeners
- *
- * @see ILaunchListener
- */
- public void launchRegistered(ILaunch launch) {
- IDebugTarget dt= launch.getDebugTarget();
- if (dt != null) {
- addBreakpointListener(dt);
- }
- }
-
- /**
- * Removes the debug target associated with
- * this launch as a breakpoint listener.
- *
- * @see ILaunchListener
- */
- public void launchDeregistered(ILaunch launch) {
- IDebugTarget dt= launch.getDebugTarget();
- if (dt != null) {
- removeBreakpointListener(dt);
- }
- }
-}
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/DebugCoreResources.properties b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/DebugCoreResources.properties
deleted file mode 100644
index e4a28cc..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/DebugCoreResources.properties
+++ /dev/null
@@ -1,69 +0,0 @@
-##############################################################
-# (c) Copyright IBM Corp. 2000, 2001.
-# All Rights Reserved.
-##############################################################
-
-##############################################################
-# BreakpointManager
-##############################################################
-breakpoint_manager.error.adapter=IDesktopElement adapter required to set a breakpoint.
-breakpoint_manager.error.label_property=Label property required to set a breakpoint.
-breakpoint_manager.error.extension=File extension required to set a breakpoint.
-breakpoint_manager.error.associated_resource=Breakpoint creator did not specify associated resource.
-breakpoint_manager.error.required_attributes= Breakpoint creator did not configure required attributes.
-breakpoint_manager.error.line_number=Breakpoint already exists at line number {0}.
-breakpoint_manager.error.creation_failed=Breakpoint creation failed.
-breakpoint_manager.error.unsupported_extension=Unsupported file extension {0}.
-breakpoint_manager.error.installation_failed=Breakpoint installation failed - attempt to re-install breakpoint.
-breakpoint_manager.error.remove_failed=Breakpoint remove failed.
-breakpoint_manager.error.enable=Attempt to enable breakpoint that does not exist.
-breakpoint_manager.error.hitcount=Attempt to set hit count on a breakpoint that does not exist.
-breakpoint_manager.error.target=Debug target breakpoint set failed.
-
-##############################################################
-# ExceptionManager
-##############################################################
-exception_manager.error.state=Illegal value for exception state.
-exception_manager.error.duplicate=Failed to create exception - it already exists.
-exception_manager.error.persisting=Error persisting exceptions.
-exception_manager.error.restoring=Error restoring exceptions.
-
-##############################################################
-# InputStreamMonitor
-##############################################################
-input_stream_monitor.label=Input Stream Monitor
-
-##############################################################
-# OutputStreamMonitor
-##############################################################
-output_stream_monitor.label=Output Stream Monitor
-
-##############################################################
-# Launch
-##############################################################
-launch.terminate_failed=Terminate failed
-
-##############################################################
-# LaunchManager
-##############################################################
-launch_manager.error.termination=Unable to terminate launch.
-
-##############################################################
-# ProcessMonitor
-##############################################################
-process_monitor.label=Process Monitor
-
-##############################################################
-# RuntimeProcess
-##############################################################
-runtime_process.error.terminate_failed=Terminate failed.
-
-##############################################################
-# SourceLocation
-##############################################################
-source_location.undetermined=undetermined
-
-##############################################################
-# TargetException
-##############################################################
-target_exception.error.state=Illegal value for exception state
\ No newline at end of file
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/DebugCoreUtils.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/DebugCoreUtils.java
deleted file mode 100644
index 33ec37c..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/DebugCoreUtils.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.DebugPlugin;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-/**
- * Utility methods for the debug core plugin.
- */
-public class DebugCoreUtils {
-
- private static ResourceBundle fgResourceBundle;
-
- /**
- * Utility method
- */
- public static String getResourceString(String key) {
- if (fgResourceBundle == null) {
- fgResourceBundle= getResourceBundle();
- }
- if (fgResourceBundle != null) {
- return fgResourceBundle.getString(key);
- } else {
- return "!" + key + "!";
- }
- }
-
- /**
- * Returns the resource bundle used by the core debug plugin.
- */
- public static ResourceBundle getResourceBundle() {
- try {
- return ResourceBundle.getBundle("org.eclipse.debug.internal.core.DebugCoreResources");
- } catch (MissingResourceException e) {
- logError(e);
- }
- return null;
- }
-
- /**
- * Convenience method to log internal errors
- */
- public static void logError(Exception e) {
- if (DebugPlugin.getDefault().isDebugging()) {
- // this message is intentionally not internationalized, as an exception may
- // be due to the resource bundle itself
- System.out.println("Internal error logged from debug core: ");
- e.printStackTrace();
- System.out.println();
- }
- }
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/InputStreamMonitor.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/InputStreamMonitor.java
deleted file mode 100644
index 46e4586..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/InputStreamMonitor.java
+++ /dev/null
@@ -1,159 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.IStreamListener;
-import org.eclipse.debug.core.model.IStreamMonitor;
-import java.io.IOException;
-import java.io.InputStream;
-
-/**
- * Monitors an input stream (connected to the output stream of
- * a system process). An notifies listeners of additions to the
- * stream.
- *
- * @see IStreamMonitor
- */
-public class InputStreamMonitor implements IStreamMonitor {
-
- private final static String PREFIX= "input_stream_monitor.";
- private final static String LABEL= PREFIX + "label";
-
- /**
- * The input stream being monitored.
- */
- protected InputStream fStream;
-
- /**
- * A collection of listeners
- */
- protected ListenerList fListeners= new ListenerList(1);
-
- /**
- * The local copy of the stream contents
- */
- protected StringBuffer fContents;
-
- /**
- * The thread which reads from the stream
- */
- protected Thread fThread;
-
- /**
- * The size of the read buffer
- */
- protected static final int BUFFER_SIZE= 8192;
-
- /**
- * The number of milliseconds to pause
- * between reads.
- */
- protected static final long DELAY= 50L;
- /**
- * Creates an input stream monitor on the
- * given input stream.
- */
- public InputStreamMonitor(InputStream stream) {
- fStream= stream;
- fContents= new StringBuffer();
- }
-
- /**
- * @see IStreamMonitor
- */
- public void addListener(IStreamListener listener) {
- fListeners.add(listener);
- }
-
- /**
- * Causes the monitor to close all
- * communications between it and the
- * underlying stream.
- */
- public void close() {
- if (fThread != null) {
- Thread thread= fThread;
- fThread= null;
- try {
- thread.join();
- } catch (InterruptedException ie) {
- }
- }
- }
-
- /**
- * Notifies the listeners that text has
- * been appended to the stream.
- */
- public void fireStreamAppended(String text) {
- if (text == null)
- return;
- Object[] copiedListeners= fListeners.getListeners();
- for (int i= 0; i < copiedListeners.length; i++) {
- ((IStreamListener) copiedListeners[i]).streamAppended(text, this);
- }
- }
-
- /**
- * @see IStreamMonitor
- */
- public String getContents() {
- return fContents.toString();
- }
-
- /**
- * Continually reads from the stream.
- * <p>
- * This method, along with the <code>startReading</code>
- * method is used to allow <code>InputStreamMonitor</code>
- * to implement <code>Runnable</code> without publicly
- * exposing a <code>run</code> method.
- */
- private void read() {
- byte[] bytes= new byte[BUFFER_SIZE];
- while (true) {
- try {
- if (fStream.available() == 0) {
- if (fThread == null)
- break;
- } else {
- int read= fStream.read(bytes);
- if (read > 0) {
- String text= new String(bytes, 0, read);
- fContents.append(text);
- fireStreamAppended(text);
- }
- }
- } catch (IOException ioe) {
- }
- try {
- Thread.sleep(DELAY);
- } catch (InterruptedException ie) {
- }
- }
- }
-
- /**
- * @see IStreamMonitor
- */
- public void removeListener(IStreamListener listener) {
- fListeners.remove(listener);
- }
-
- /**
- * Starts a <code>Thread</code> which reads the stream.
- */
- public void startMonitoring() {
- if (fThread == null) {
- fThread= new Thread(new Runnable() {
- public void run() {
- read();
- }
- }, DebugCoreUtils.getResourceString(LABEL));
- fThread.start();
- }
- }
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchManager.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchManager.java
deleted file mode 100644
index 2fa0a6f..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchManager.java
+++ /dev/null
@@ -1,243 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.*;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.*;
-import java.util.*;
-
-/**
- * Manages registered launches.
- *
- * @see ILaunchManager
- */
-public class LaunchManager extends PlatformObject implements ILaunchManager {
-
- private final static String PREFIX= "launch_manager.";
- private final static String ERROR= PREFIX + "error.";
- private final static String TERMINATION= ERROR + "termination";
-
- /**
- * Constant for use as local name part of <code>QualifiedName</code>
- * for persisting the default launcher.
- */
- private static final String DEFAULT_LAUNCHER= "launcher";
-
- /**
- * Types of notifications
- */
- private static final int REGISTERED = 0;
- private static final int DEREGISTERED = 1;
-
- /**
- * Collection of launches
- */
- protected Vector fLaunches= new Vector(10);
-
- /**
- * Collection of listeners
- */
- protected ListenerList fListeners= new ListenerList(5);
-
- /**
- * @see ILaunchManager
- */
- public void addLaunchListener(ILaunchListener listener) {
- fListeners.add(listener);
- }
-
- /**
- * @see ILaunchManager
- */
- public void deregisterLaunch(ILaunch launch) {
- if (launch == null) {
- return;
- }
- fLaunches.remove(launch);
- fireUpdate(launch, DEREGISTERED);
- }
-
- /**
- * @see ILaunchManager
- */
- public ILaunch findLaunch(IProcess process) {
- Iterator list= fLaunches.iterator();
- while (list.hasNext()) {
- ILaunch l= (ILaunch) list.next();
- IProcess[] ps= l.getProcesses();
- for (int i= 0; i < ps.length; i++) {
- if (ps[i].equals(process)) {
- return l;
- }
- }
- }
- return null;
- }
-
- /**
- * @see ILaunchManager
- */
- public ILaunch findLaunch(IDebugTarget target) {
- Iterator list= fLaunches.iterator();
- while (list.hasNext()) {
- ILaunch l= (ILaunch) list.next();
- if (target.equals(l.getDebugTarget())) {
- return l;
- }
- }
- return null;
- }
-
- /**
- * Fires notification to the listeners that a launch has been (de)registered.
- */
- public void fireUpdate(ILaunch launch, int update) {
- Object[] copiedListeners= fListeners.getListeners();
- for (int i= 0; i < copiedListeners.length; i++) {
- ILaunchListener listener = (ILaunchListener)copiedListeners[i];
- switch (update) {
- case REGISTERED:
- listener.launchRegistered(launch);
- break;
- case DEREGISTERED:
- listener.launchDeregistered(launch);
- break;
- }
- }
- }
-
- /**
- * @see ILaunchManager
- */
- public IDebugTarget[] getDebugTargets() {
- List targets= new ArrayList(fLaunches.size());
- if (fLaunches.size() > 0) {
- Iterator e= fLaunches.iterator();
- while (e.hasNext()) {
- IDebugTarget target= ((ILaunch) e.next()).getDebugTarget();
- if (target != null)
- targets.add(target);
- }
- }
- return (IDebugTarget[])targets.toArray(new IDebugTarget[targets.size()]);
- }
-
- /**
- * @see ILaunchManager
- */
- public ILauncher getDefaultLauncher(IProject project) throws CoreException {
- ILauncher launcher= null;
- if ((project != null) && project.isOpen()) {
- String launcherID = project.getPersistentProperty(new QualifiedName(IDebugConstants.PLUGIN_ID, DEFAULT_LAUNCHER));
- if (launcherID != null) {
- launcher= getLauncher(launcherID);
- }
- }
- return launcher;
- }
-
- /**
- * Returns the launcher with the given id, or <code>null</code>.
- */
- public ILauncher getLauncher(String id) {
- ILauncher[] launchers= getLaunchers();
- for (int i= 0; i < launchers.length; i++) {
- if (launchers[i].getIdentifier().equals(id)) {
- return launchers[i];
- }
- }
- return null;
- }
-
- /**
- * @see ILaunchManager
- */
- public ILauncher[] getLaunchers() {
- return DebugPlugin.getDefault().getLaunchers();
- }
-
- /**
- * @see ILaunchManager
- */
- public ILauncher[] getLaunchers(String mode) {
- ILauncher[] launchers = getLaunchers();
- ArrayList list = new ArrayList();
- for (int i = 0; i < launchers.length; i++) {
- if (launchers[i].getModes().contains(mode)) {
- list.add(launchers[i]);
- }
- }
- return (ILauncher[])list.toArray(new ILauncher[list.size()]);
- }
-
- /**
- * @see ILaunchManager
- */
- public ILaunch[] getLaunches() {
- return (ILaunch[])fLaunches.toArray(new ILaunch[fLaunches.size()]);
- }
-
- /**
- * @see ILaunchManager
- */
- public IProcess[] getProcesses() {
- List allProcesses= new ArrayList(fLaunches.size());
- if (fLaunches.size() > 0) {
- Iterator e= fLaunches.iterator();
- while (e.hasNext()) {
- IProcess[] processes= ((ILaunch) e.next()).getProcesses();
- for (int i= 0; i < processes.length; i++) {
- allProcesses.add(processes[i]);
- }
- }
- }
- return (IProcess[])allProcesses.toArray(new IProcess[allProcesses.size()]);
- }
-
- /**
- * @see ILaunchManager
- */
- public void registerLaunch(ILaunch launch) {
- fLaunches.add(launch);
- fireUpdate(launch, REGISTERED);
- }
-
- /**
- * @see ILaunchManager
- */
- public void removeLaunchListener(ILaunchListener listener) {
- fListeners.remove(listener);
- }
-
- /**
- * @see ILaunchManager
- */
- public void setDefaultLauncher(IProject resource, ILauncher launcher) throws CoreException {
- String id = null;
- if (launcher != null) {
- id = launcher.getIdentifier();
- }
- resource.setPersistentProperty(new QualifiedName(IDebugConstants.PLUGIN_ID, DEFAULT_LAUNCHER), id);
- }
-
- /**
- * Terminates/Disconnects any active debug targets/processes.
- */
- public void shutdown() {
- ILaunch[] launches = getLaunches();
- for (int i= 0; i < launches.length; i++) {
- ILaunch launch= launches[i];
- try {
- launch.terminate();
- } catch (DebugException e) {
- DebugCoreUtils.logError(e);
- }
- }
- }
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/Launcher.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/Launcher.java
deleted file mode 100644
index bbc5e07..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/Launcher.java
+++ /dev/null
@@ -1,112 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.ILauncher;
-import org.eclipse.debug.core.model.ILauncherDelegate;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import java.util.HashSet;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-/**
- * A handle to a launcher extension that instantiates the actual
- * extension lazily.
- */
-public class Launcher implements ILauncher {
-
- /**
- * The configuration element that defines this launcher handle
- */
- protected IConfigurationElement fConfigElement = null;
-
- /**
- * The underlying launcher, which is <code>null</code> until the
- * it needs to be instantiated.
- */
- protected ILauncherDelegate fDelegate = null;
-
- /**
- * Cache of the modes this launcher supports
- */
- protected Set fModes;
-
- /**
- * Constructs a handle for a launcher extension.
- */
- public Launcher(IConfigurationElement element) {
- fConfigElement = element;
- }
-
- /**
- * @see ILauncher
- */
- public String getIdentifier() {
- return fConfigElement.getAttribute("id");
- }
-
- /**
- * Returns the set of modes specified in the configuration data.
- * The set contains "mode" constants defined in <code>ILaunchManager</code>
- */
- public Set getModes() {
- if (fModes == null) {
- String modes= fConfigElement.getAttribute("modes");
- if (modes == null) {
- return null;
- }
- StringTokenizer tokenizer= new StringTokenizer(modes, ",");
- fModes = new HashSet(tokenizer.countTokens());
- while (tokenizer.hasMoreTokens()) {
- fModes.add(tokenizer.nextToken().trim());
- }
- }
- return fModes;
- }
-
- /**
- * Returns the label specified in the configuration data.
- */
- public String getLabel() {
- return fConfigElement.getAttribute("label");
- }
-
- /**
- * @see ILauncher
- */
- public String getPerspectiveIdentifier() {
- return fConfigElement.getAttribute("perspective");
- }
-
- /**
- * Returns the launcher for this handle, instantiating it if required.
- */
- public ILauncherDelegate getDelegate() {
- if (fDelegate == null) {
- try {
- fDelegate = (ILauncherDelegate)fConfigElement.createExecutableExtension("class");
- } catch (CoreException e) {
- //status logged in the #createExecutableExtension code
- }
- }
- return fDelegate;
- }
-
- /**
- * @see ILauncher
- */
- public boolean launch(Object[] elements, String mode) {
- return getDelegate().launch(elements, mode, this);
- }
-
- /**
- * Returns the configuration element for this extension
- */
- public IConfigurationElement getConfigurationElement() {
- return fConfigElement;
- }
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/ListenerList.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/ListenerList.java
deleted file mode 100644
index 8688726..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/ListenerList.java
+++ /dev/null
@@ -1,141 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-/**
- * Local version of org.eclipse.jface.util.ListenerList
- */
-public class ListenerList {
- /**
- * The initial capacity of the list. Always >= 1.
- */
- private int fCapacity;
-
- /**
- * The current number of listeners.
- * Maintains invariant: 0 <= fSize <= listeners.length.
- */
- private int fSize;
-
- /**
- * The list of listeners. Initially <code>null</code> but initialized
- * to an array of size capacity the first time a listener is added.
- * Maintains invariant: listeners != null IFF fSize != 0
- */
- private Object[] fListeners= null;
-
- /**
- * The empty array singleton instance, returned by getListeners()
- * when size == 0.
- */
- private static final Object[] EmptyArray= new Object[0];
- /**
- * Creates a listener list with an initial capacity of 3.
- */
- public ListenerList() {
- this(3);
- }
-
- /**
- * Creates a listener list with the given initial capacity.
- *
- * @param capacity the number of listeners which this list can initially accept
- * without growing its internal representation; must be at least 1
- */
- public ListenerList(int capacity) {
- if (capacity < 1) {
- throw new IllegalArgumentException();
- }
- fCapacity= capacity;
- }
-
- /**
- * Adds a listener to the list.
- * Has no effect if an identical listener is already registered.
- *
- * @param listener a listener
- */
- public synchronized void add(Object listener) {
- if (listener == null) {
- throw new IllegalArgumentException();
- }
- if (fSize == 0) {
- fListeners= new Object[fCapacity];
- } else {
- // check for duplicates using identity
- for (int i= 0; i < fSize; ++i) {
- if (fListeners[i] == listener) {
- return;
- }
- }
- // grow array if necessary
- if (fSize == fListeners.length) {
- System.arraycopy(fListeners, 0, fListeners= new Object[fSize * 2 + 1], 0, fSize);
- }
- }
- fListeners[fSize++]= listener;
- }
-
- /**
- * Returns an array containing all the registered listeners.
- * The resulting array is unaffected by subsequent adds or removes.
- * If there are no listeners registered, the result is an empty array
- * singleton instance (no garbage is created).
- * Use this method when notifying listeners, so that any modifications
- * to the listener list during the notification will have no effect on the
- * notification itself.
- */
- public synchronized Object[] getListeners() {
- if (fSize == 0)
- return EmptyArray;
- Object[] result= new Object[fSize];
- System.arraycopy(fListeners, 0, result, 0, fSize);
- return result;
- }
-
- /**
- * Returns <code>true</code> if there are no registered listeners,
- * <code>false</code> otherwise.
- */
- public boolean isEmpty() {
- return fSize == 0;
- }
-
- /**
- * Removes a listener from the list.
- * Has no effect if an identical listener was not already registered.
- *
- * @param listener a listener
- */
- public synchronized void remove(Object listener) {
- if (listener == null) {
- throw new IllegalArgumentException();
- }
-
- for (int i= 0; i < fSize; ++i) {
- if (fListeners[i] == listener) {
- if (fSize == 1) {
- fListeners= null;
- fSize= 0;
- } else {
- System.arraycopy(fListeners, i + 1, fListeners, i, --fSize - i);
- fListeners[fSize]= null;
- }
- return;
- }
- }
- }
-
- /**
- * Returns the number of registered listeners
- *
- * @return the number of registered listeners
- */
- public int size() {
- return fSize;
- }
-}
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/OutputStreamMonitor.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/OutputStreamMonitor.java
deleted file mode 100644
index b05b010..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/OutputStreamMonitor.java
+++ /dev/null
@@ -1,102 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-/**
- * Writes to an output stream, queueing output if the
- * output stream is blocked.
- */
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.util.Vector;
-
-public class OutputStreamMonitor {
-
- private final static String PREFIX= "output_stream_monitor.";
- private final static String LABEL= PREFIX + "label";
-
- protected OutputStream fStream;
- protected Vector fQueue;
- protected Thread fThread;
- protected Object fLock;
-
- /**
- * Creates an output stream monitor on the
- * given output stream.
- */
- public OutputStreamMonitor(OutputStream stream) {
- fStream= stream;
- fQueue= new Vector();
- fLock= new Object();
- }
-
- /**
- * Appends the given text to the stream, or
- * queues the text to be written at a later time
- * if the stream is blocked.
- */
- public void write(String text) {
- synchronized(fLock) {
- fQueue.add(text);
- fLock.notifyAll();
- }
- }
-
- /**
- * Starts a <code>Thread</code> which writes the stream.
- */
- public void startMonitoring() {
- if (fThread == null) {
- fThread= new Thread(new Runnable() {
- public void run() {
- write();
- }
- }, DebugCoreUtils.getResourceString(LABEL));
- fThread.start();
- }
- }
-
- /**
- * Causes the monitor to close all
- * communications between it and the
- * underlying stream.
- */
- public void close() {
- if (fThread != null) {
- Thread thread= fThread;
- fThread= null;
- thread.interrupt();
- }
- }
-
- protected void write() {
- while (fThread != null) {
- writeNext();
- }
- }
-
- protected void writeNext() {
- while (!fQueue.isEmpty()) {
- String text = (String)fQueue.firstElement();
- fQueue.removeElementAt(0);
- try {
- if (fStream != null) {
- fStream.write(text.getBytes());
- fStream.flush();
- }
- } catch (IOException e) {
- }
- }
- try {
- synchronized(fLock) {
- fLock.wait();
- }
- } catch (InterruptedException e) {
- }
- }
-}
-
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/ProcessMonitor.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/ProcessMonitor.java
deleted file mode 100644
index e329171..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/ProcessMonitor.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.*;
-
-/**
- * Monitors a system process, wiating for it to terminate, and
- * then notifies the associated runtime process.
- */
-
-public class ProcessMonitor {
-
- private final static String PREFIX= "process_monitor.";
- private final static String LABEL= PREFIX + "label";
- /**
- * The <code>IProcess</code> being monitored.
- */
- protected RuntimeProcess fProcess;
- /**
- * The <code>java.lang.Process</code> being monitored.
- */
- protected Process fOSProcess;
- /**
- * The <code>Thread</code> which is monitoring the process.
- */
- protected Thread fThread;
- /**
- * Creates a new process monitor and starts monitoring the process
- * for termination.
- */
- public ProcessMonitor(RuntimeProcess process) {
- fProcess= process;
- fOSProcess= process.getSystemProcess();
- startMonitoring();
- }
-
- /**
- * Monitors the process for termination
- */
- private void monitorProcess() {
- while (fOSProcess != null) {
- try {
- fOSProcess.waitFor();
- fOSProcess= null;
- fProcess.terminated();
- } catch (InterruptedException ie) {
- }
- }
- }
-
- /**
- * Starts monitoring the process to determine
- * if it has terminated.
- */
- private void startMonitoring() {
- if (fThread == null) {
- fThread= new Thread(new Runnable() {
- public void run() {
- monitorProcess();
- }
- }, DebugCoreUtils.getResourceString(LABEL));
- fThread.start();
- }
- }
-
- protected void stopMonitoring() {
- fOSProcess = null;
- fThread.interrupt();
- fProcess.terminated();
- }
-}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/RuntimeProcess.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/RuntimeProcess.java
deleted file mode 100644
index ce49108..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/RuntimeProcess.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/StreamsProxy.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/StreamsProxy.java
deleted file mode 100644
index 81f827f..0000000
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/StreamsProxy.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package org.eclipse.debug.internal.core;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.debug.core.model.IStreamMonitor;
-import org.eclipse.debug.core.model.IStreamsProxy;
-import java.io.IOException;
-
-/**
- * @see IStreamsProxy
- */
-public class StreamsProxy implements IStreamsProxy {
- /**
- * The monitor for the input stream (connected to standard out of the process)
- */
- protected InputStreamMonitor fInputMonitor;
- /**
- * The monitor for the error stream.
- */
- protected InputStreamMonitor fErrorMonitor;
- /**
- * The monitor for the output stream (connected to standard in of the process).
- */
- protected OutputStreamMonitor fOutputMonitor;
- /**
- * Records the open/closed state of communications with
- * the underlying streams.
- */
- protected boolean fClosed= false;
- /**
- * Creates a <code>StreamsProxy</code> on the streams
- * of the given <code>IProcess</code>.
- */
- public StreamsProxy(RuntimeProcess process) {
- if (process != null) {
- fInputMonitor= new InputStreamMonitor(process.getInputStream());
- fErrorMonitor= new InputStreamMonitor(process.getErrorStream());
- fOutputMonitor= new OutputStreamMonitor(process.getOutputStream());
- fInputMonitor.startMonitoring();
- fErrorMonitor.startMonitoring();
- fOutputMonitor.startMonitoring();
- }
- }
-
- /**
- * Causes the proxy to close all
- * communications between it and the
- * underlying streams.
- */
- public void close() {
- fClosed= true;
- fInputMonitor.close();
- fErrorMonitor.close();
- fOutputMonitor.close();
- }
-
- /**
- * @see IStreamsProxy
- */
- public IStreamMonitor getErrorStreamMonitor() {
- return fErrorMonitor;
- }
-
- /**
- * @see IStreamsProxy
- */
- public IStreamMonitor getOutputStreamMonitor() {
- return fInputMonitor;
- }
-
- /**
- * @see IStreamsProxy
- */
- public void write(String input) throws IOException {
- if (!fClosed) {
- fOutputMonitor.write(input);
- } else {
- throw new IOException();
- }
- }
-
-}
diff --git a/org.eclipse.debug.core/doc/hglegal.htm b/org.eclipse.debug.core/doc/hglegal.htm
deleted file mode 100644
index b071dbd..0000000
--- a/org.eclipse.debug.core/doc/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <meta name="GENERATOR" content="Mozilla/4.73 [en] (Win98; U) [Netscape]">
- <title>Legal Notices</title>
-</head>
-<body>
-
-<h3>
-<a NAME="Notices"></a>Notices</h3>
-(c) Copyright IBM Corp. 2000, 2001. All Rights Reserved.
-</body>
-</html>
diff --git a/org.eclipse.debug.core/doc/ngibmcpy.gif b/org.eclipse.debug.core/doc/ngibmcpy.gif
deleted file mode 100644
index 360f8e9..0000000
--- a/org.eclipse.debug.core/doc/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.core/doc/org_eclipse_debug_core.html b/org.eclipse.debug.core/doc/org_eclipse_debug_core.html
deleted file mode 100644
index eec9824..0000000
--- a/org.eclipse.debug.core/doc/org_eclipse_debug_core.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
-<title>README Debug User Interface Extension Points</title>
-</head>
-
-<body link="#0000FF" vlink="#800080">
-
-<h1 align="center">Eclipse Debug Tools Infrastructure</h1>
-
-<p>The debug tools infrastructure plug-in, <font face="Courier">org.eclipse.debug.core</font>,
-defines a model for language independent debugging. A set of common debug artifacts and
-actions are defined by interfaces, for which specific debug architectures may provide
-implementations. For example, some common artifacts are threads, stack frames, and
-variables; some common actions are terminate, suspend, step, and resume. A debug
-architecture, such as JDI (Java Debug Interface), can provide an implementation of the
-artifacts and actions. The debug plug-in also defines and provides an implementation of
-managers to support breakpoints and launching.<br>
-</p>
-
-<hr>
-
-<h1>Extension Points</h1>
-
-<p>The following extension points are used to support and extend the debug infrastructure:
-
-<ul>
- <li><a href="org_eclipse_debug_core_launchers.html">org.eclipse.debug.core.launchers</a></li>
-</ul>
-
-<p><a href="hglegal.htm"><img src="ngibmcpy.gif" alt="Copyright IBM Corporation 2000"
-border="0" width="195" height="12"></a></p>
-</body>
-</html>
diff --git a/org.eclipse.debug.core/doc/org_eclipse_debug_core_launchers.html b/org.eclipse.debug.core/doc/org_eclipse_debug_core_launchers.html
deleted file mode 100644
index 2efde17..0000000
--- a/org.eclipse.debug.core/doc/org_eclipse_debug_core_launchers.html
+++ /dev/null
@@ -1,95 +0,0 @@
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
-<title>README Launcher Extension Points</title>
-</head>
-
-<body link="#0000FF" vlink="#800080">
-
-<h1 align="center">Launcher</h1>
-
-<p><b><i>Identifier: </i></b>org.eclipse.debug.core.launchers </p>
-
-<p><b><i>Description: </i></b>This extension point allows tools to contribute launchers. A
-launcher is responsible for initiating a debug session or running a program and
-registering the result with the launch manager.</p>
-
-<p><b><i>Configuration Markup:</i></b> </p>
-
-<pre><tt> <!ATTLIST launcher</tt>
- id CDATA #REQUIRED<tt>
- class CDATA #REQUIRED</tt>
-<tt> modes CDATA #REQUIRED
-</tt> label CDATA #REQUIRED
- wizard CDATA #IMPLIED
- public CDATA #IMPLIED
- description CDATA #IMPLIED
- <tt>perspective CDATA #IMPLIED
- ></tt> </pre>
-
-<ul>
- <li><strong>id </strong>– a unique identifier that can be used to reference this
- launcher.</li>
- <li><b>class</b> – fully qualified name of the class that implements <font
- face="Courier New">org.eclipse.debug.core.ILauncherDelegate</font>.</li>
- <li><b>modes</b> – A comma separated list of modes this launcher supports. The two
- supported modes are "run" and "debug" - as defined in <font
- face="Courier New">org.eclipse.debug.core.ILaunchManager.</font>A launcher may be capable
- of launching in one or both modes.</li>
- <li><strong>label </strong>– a label to use for the launcher. This attribute is used by
- the debug UI.</li>
- <li><strong>wizard </strong>– fully qualified name of the class that implements <font
- face="Courier New">org.eclipse.debug.ui.ILaunchWizard</font>. This attribute is used by
- the debug UI. A launcher may contribute a wizard that allows users to configure and launch
- specific attributes.</li>
- <li><strong>public</strong> – whether a launcher is publically visible in the debug UI.
- If "true", the launcher will be available from the debug UI - the
- launcher will appear as a choice for a default launcher, launches created by this launcher
- will appear in the launch history, and the launcher will be available from the drop-down
- run/debug toolbar actions.</li>
- <li><strong>description</strong> – a description of the launcher. Currently only
- used if the <em>wizard</em> attribute is specified.</li>
- <li><strong>perspective</strong> – the identifier of the perspective that will be
- switched to on a successful launch. Default value is the identifier for the debug
- perspective. This attribute is used by the debug UI.</li>
-</ul>
-
-<p><b><i>Examples:</i></b> </p>
-
-<p>The following is an example of a launcher extension point: </p>
-
-<pre><tt> <extension</tt>
-<tt> point = "org.eclipse.debug.core.launchers"></tt>
-<tt> <launcher</tt>
- id = "com.example.ExampleLauncher"
-<tt> class = "com.example.launchers.ExampleLauncher"</tt>
-<tt> modes = "run, debug"
- label = "Example Launcher"
- wizard = "com.example.launchers.ui.ExampleLaunchWizard"
- public = "true"
- description = "Launches example programs"
- perspective= "com.example.JavaPerspective"></tt>
-<tt> </launcher></tt>
-<tt> </extension></tt> </pre>
-
-<p>In the example above, the specified launcher supports both run and debug modes.
-Following a successful launch, the debug UI will change to the Java perspective. When the
-debug UI presents the user with a list of launchers to choose from, "Example
-Launcher" will appear as one of the choices with the "Launches example
-programs" as the description, and the wizard specified by <font face="Courier New">com.example.launchers.ui.ExampleLaunchWizard</font>
-will be used to configure any launch specific details.</p>
-
-<p><b><i>API Information: </i></b>Value of the attribute <b>class</b> must be a fully
-qualified class name of a Java class that implements the interface <font size="2"
-face="Courier New">org.eclipse.debug.core.ILauncher</font>Delegate. Value of the attribute
-<strong>wizard</strong> must be a fully qualified class name of a Java class that
-implements <font size="2" face="Courier New">org.eclipse.debug.ui.ILaunchWizard</font>.<br>
-<br>
-</p>
-
-<p><a href="hglegal.htm"><img src="ngibmcpy.gif" alt="Copyright IBM Corporation 2000"
-border="0" width="195" height="12"></a></p>
-</body>
-</html>
diff --git a/org.eclipse.debug.core/exportplugin.xml b/org.eclipse.debug.core/exportplugin.xml
deleted file mode 100644
index fa55089..0000000
--- a/org.eclipse.debug.core/exportplugin.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<!-- Export a jar of .class files for the org.eclipse.debug.core Eclipse plugin
- along with other important plugin files to the "plugin-export" subdirectory
- of the target Eclipse installation -->
-<project name="org.eclipse.debug.core" default="export" basedir=".">
-
- <!-- Set the timestamp and important properties -->
- <target name="init">
- <tstamp/>
- <property name="destdir" value="../../plugin-export" />
- <property name="dest" value="${destdir}/org.eclipse.debug.core" />
- </target>
-
- <!-- Create the jar of .class files, and copy other important files to export dir -->
- <target name="export" depends="init">
- <mkdir dir="${destdir}" />
- <delete dir="${dest}" />
- <mkdir dir="${dest}" />
- <jar
- jarfile="${dest}/dtcore.jar"
- basedir="bin"
- />
- <copy file="plugin.xml" todir="${dest}"/>
- <copy file="plugin.jars" todir="${dest}"/>
- <copy file=".classpath" todir="${dest}"/>
- <copy file=".options" todir="${dest}"/>
- </target>
-
-</project>
diff --git a/org.eclipse.debug.core/plugin.jars b/org.eclipse.debug.core/plugin.jars
deleted file mode 100644
index e50828d..0000000
--- a/org.eclipse.debug.core/plugin.jars
+++ /dev/null
@@ -1 +0,0 @@
-dtcore.jar=Eclipse Debug Core
\ No newline at end of file
diff --git a/org.eclipse.debug.core/plugin.xml b/org.eclipse.debug.core/plugin.xml
deleted file mode 100644
index 612cf2f..0000000
--- a/org.eclipse.debug.core/plugin.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- File written by PDE 1.0 -->
-<plugin
- id="org.eclipse.debug.core"
- name="DebugTools"
- version="0.9"
- provider-name="Object Technology International, Inc."
- class="org.eclipse.debug.core.DebugPlugin">
-<!-- Required plugins -->
-<requires>
- <import plugin="org.apache.xerces"/>
- <import plugin="org.eclipse.core.resources"/>
-</requires>
-
-<!-- Runtime -->
-<runtime>
- <library name="dtcore.jar">
- <export name="*"/>
- </library>
-</runtime>
-
-<!-- Extension points -->
-<extension-point id="launchers" name="Launcher"/>
-
-<!-- Extensions -->
-<extension
- id="breakpoint"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.core.resources.marker">
- </super>
- <persistent
- value="true">
- </persistent>
- <attribute
- name="modelIdentifier">
- </attribute>
- <attribute
- name="enabled">
- </attribute>
-</extension>
-<extension
- id="lineBreakpoint"
- point="org.eclipse.core.resources.markers">
- <super
- type="org.eclipse.debug.core.breakpoint">
- </super>
- <super
- type="org.eclipse.core.resources.textmarker">
- </super>
- <persistent
- value="true">
- </persistent>
-</extension>
-</plugin>