Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreutarass2009-08-13 20:23:14 +0000
committereutarass2009-08-13 20:23:14 +0000
commite25bd18816868fe4b72e0062b6082611a4385c59 (patch)
treeea5851302db4dfec629ac3cdf7062f4aeca6a971 /plugins/org.eclipse.tm.tcf.debug/src/org/eclipse/tm/internal/tcf/debug/model/TCFLaunch.java
parent43f8f63b7cc3d446fc3241eb135fa54ac91316e2 (diff)
downloadorg.eclipse.tcf-e25bd18816868fe4b72e0062b6082611a4385c59.tar.gz
org.eclipse.tcf-e25bd18816868fe4b72e0062b6082611a4385c59.tar.xz
org.eclipse.tcf-e25bd18816868fe4b72e0062b6082611a4385c59.zip
Bug 284963: Add a third parameter to the streams service “created” event
Diffstat (limited to 'plugins/org.eclipse.tm.tcf.debug/src/org/eclipse/tm/internal/tcf/debug/model/TCFLaunch.java')
-rw-r--r--plugins/org.eclipse.tm.tcf.debug/src/org/eclipse/tm/internal/tcf/debug/model/TCFLaunch.java11
1 files changed, 6 insertions, 5 deletions
diff --git a/plugins/org.eclipse.tm.tcf.debug/src/org/eclipse/tm/internal/tcf/debug/model/TCFLaunch.java b/plugins/org.eclipse.tm.tcf.debug/src/org/eclipse/tm/internal/tcf/debug/model/TCFLaunch.java
index cbc9141fe..8e4d2eb29 100644
--- a/plugins/org.eclipse.tm.tcf.debug/src/org/eclipse/tm/internal/tcf/debug/model/TCFLaunch.java
+++ b/plugins/org.eclipse.tm.tcf.debug/src/org/eclipse/tm/internal/tcf/debug/model/TCFLaunch.java
@@ -85,16 +85,17 @@ public class TCFLaunch extends Launch {
private final HashMap<String,LinkedList<Runnable>> context_action_queue =
new HashMap<String,LinkedList<Runnable>>();
- private HashSet<String> stream_ids = new HashSet<String>();
+ private HashMap<String,String> stream_ids = new HashMap<String,String>();
private final IStreams.StreamsListener streams_listener = new IStreams.StreamsListener() {
- public void created(String stream_type, String stream_id) {
+ public void created(String stream_type, String stream_id, String context_id) {
+ assert IProcesses.NAME.equals(stream_type);
if (process_start_command == null) {
disconnectStream(stream_id);
}
else {
- stream_ids.add(stream_id);
+ stream_ids.put(stream_id, context_id);
}
}
@@ -400,7 +401,7 @@ public class TCFLaunch extends Launch {
final String inp_id = (String)process.getProperties().get(IProcesses.PROP_STDIN_ID);
final String out_id = (String)process.getProperties().get(IProcesses.PROP_STDOUT_ID);
final String err_id = (String)process.getProperties().get(IProcesses.PROP_STDERR_ID);
- for (final String id : stream_ids.toArray(new String[stream_ids.size()])) {
+ for (final String id : stream_ids.keySet().toArray(new String[stream_ids.size()])) {
if (id.equals(inp_id)) {
process_input_stream_id = id;
}
@@ -528,7 +529,7 @@ public class TCFLaunch extends Launch {
if (channel.getState() == IChannel.STATE_CLOSED) return;
IStreams streams = getService(IStreams.class);
final Set<IToken> cmds = new HashSet<IToken>();
- for (String id : stream_ids) {
+ for (String id : stream_ids.keySet()) {
cmds.add(streams.disconnect(id, new IStreams.DoneDisconnect() {
public void doneDisconnect(IToken token, Exception error) {
cmds.remove(token);

Back to the top