diff options
author | Michael Valenta | 2002-08-26 19:08:34 +0000 |
---|---|---|
committer | Michael Valenta | 2002-08-26 19:08:34 +0000 |
commit | d78bcd4aa76ac617b923099651b516fd2f015ab7 (patch) | |
tree | 6a7817fce57698b83b274f4ae3c2c43c1714247c | |
parent | cc0bb01b0179292077135b645511a7a91a923bd3 (diff) | |
download | eclipse.platform.team-d78bcd4aa76ac617b923099651b516fd2f015ab7.tar.gz eclipse.platform.team-d78bcd4aa76ac617b923099651b516fd2f015ab7.tar.xz eclipse.platform.team-d78bcd4aa76ac617b923099651b516fd2f015ab7.zip |
21134: [CVS Core] ValidRequests command can have E response
4 files changed, 11 insertions, 8 deletions
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Command.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Command.java index 870619d43..951ae3ab7 100644 --- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Command.java +++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Command.java @@ -106,7 +106,7 @@ public abstract class Command extends Request { return OK; } public IStatus errorLine(String line, ICVSFolder commandRoot, IProgressMonitor monitor) { - return new CVSStatus(CVSStatus.ERROR, CVSStatus.ERROR_LINE, line); + return new CVSStatus(CVSStatus.ERROR, CVSStatus.ERROR_LINE, commandRoot, line); } }; diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Request.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Request.java index 23737f1eb..5c3fcc906 100644 --- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Request.java +++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Request.java @@ -177,11 +177,6 @@ public abstract class Request { if (consoleListener != null) consoleListener.messageLineReceived(argument); } } else if (response.equals("E")) { //$NON-NLS-1$ - if (listener == null) { - // we need to report the error properly (bug 20729) - CVSProviderPlugin.log(new CVSStatus(IStatus.ERROR, "Valid requests operation failed: " + argument)); //$NON-NLS-1$ - throw new CVSException(new CVSStatus(IStatus.ERROR, Policy.bind("CVSProvider.exception"))); //$NON-NLS-1$ - } IStatus status = listener.errorLine(argument, session.getLocalRoot(), monitor); if (status != ICommandOutputListener.OK) accumulatedStatus.add(status); if (session.isOutputToConsole()) { diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Session.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Session.java index 8d8a5eb55..19438bf7b 100644 --- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Session.java +++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Session.java @@ -317,7 +317,10 @@ public class Session { } // ask for the set of valid requests - Request.VALID_REQUESTS.execute(this, Policy.subMonitorFor(monitor, 40)); + IStatus status = Request.VALID_REQUESTS.execute(this, Policy.subMonitorFor(monitor, 40)); + if (!status.isOK()) { + throw new CVSException(status); + } // set the root directory on the server for this connection connection.writeLine("Root " + getRepositoryRoot()); //$NON-NLS-1$ diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/ValidRequests.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/ValidRequests.java index e90c9b9fe..57719ccac 100644 --- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/ValidRequests.java +++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/ValidRequests.java @@ -13,14 +13,19 @@ package org.eclipse.team.internal.ccvs.core.client; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IStatus; import org.eclipse.team.internal.ccvs.core.CVSException; +import org.eclipse.team.internal.ccvs.core.CVSStatus; +import org.eclipse.team.internal.ccvs.core.ICVSFolder; +import org.eclipse.team.internal.ccvs.core.client.listeners.ICommandOutputListener; class ValidRequests extends Request { + protected ValidRequests() { } + protected String getRequestId() { return "valid-requests"; //$NON-NLS-1$ } public IStatus execute(Session session, IProgressMonitor monitor) throws CVSException { - return executeRequest(session, null, monitor); + return executeRequest(session, Command.DEFAULT_OUTPUT_LISTENER, monitor); } } |