Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreutarass2011-07-25 20:14:28 +0000
committereutarass2011-07-25 20:14:28 +0000
commit8806cbf4fe9189178f44f116e582dee6fbe07db6 (patch)
treeed152f976abaeea4ac467cc19bb50da848217e7c
parent2ab84a97157c60891e5697dab8fdc0288af6fc83 (diff)
downloadorg.eclipse.tcf-8806cbf4fe9189178f44f116e582dee6fbe07db6.tar.gz
org.eclipse.tcf-8806cbf4fe9189178f44f116e582dee6fbe07db6.tar.xz
org.eclipse.tcf-8806cbf4fe9189178f44f116e582dee6fbe07db6.zip
Bug 346802 - misleading exception message for incorrect Service name.
-rw-r--r--plugins/org.eclipse.tm.tcf.core/src/org/eclipse/tm/tcf/core/AbstractChannel.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/plugins/org.eclipse.tm.tcf.core/src/org/eclipse/tm/tcf/core/AbstractChannel.java b/plugins/org.eclipse.tm.tcf.core/src/org/eclipse/tm/tcf/core/AbstractChannel.java
index 7b87fdf38..a99ad5177 100644
--- a/plugins/org.eclipse.tm.tcf.core/src/org/eclipse/tm/tcf/core/AbstractChannel.java
+++ b/plugins/org.eclipse.tm.tcf.core/src/org/eclipse/tm/tcf/core/AbstractChannel.java
@@ -866,13 +866,14 @@ public abstract class AbstractChannel implements IChannel {
}
}
try {
+ Message cmd = null;
Token token = null;
switch (msg.type) {
case 'P':
case 'R':
case 'N':
String token_id = msg.token.getID();
- Message cmd = msg.type == 'P' ? out_tokens.get(token_id) : out_tokens.remove(token_id);
+ cmd = msg.type == 'P' ? out_tokens.get(token_id) : out_tokens.remove(token_id);
if (cmd == null) throw new Exception("Invalid token received: " + token_id);
token = cmd.token;
break;
@@ -905,8 +906,16 @@ public abstract class AbstractChannel implements IChannel {
sendCongestionLevel();
break;
case 'N':
- token.getListener().terminated(token, new ErrorReport(
- "Command is not recognized", IErrorReport.TCF_ERROR_INV_COMMAND));
+ {
+ String s = null;
+ if (remote_service_by_name.get(cmd.service) == null) {
+ s = "No such service: " + cmd.service;
+ }
+ else {
+ s = "Command is not recognized: " + cmd.service + "." + cmd.name;
+ }
+ token.getListener().terminated(token, new ErrorReport(s, IErrorReport.TCF_ERROR_INV_COMMAND));
+ }
break;
case 'E':
boolean hello = msg.service.equals(ILocator.NAME) && msg.name.equals("Hello");

Back to the top