blob: ab226fdffa934787f7ba249d8fed8843a2c71a3f [file] [log] [blame]
package org.eclipse.team.internal.ccvs.core.commands;
/*
* (c) Copyright IBM Corp. 2000, 2001.
* All Rights Reserved.
*/
import java.io.PrintStream;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.team.internal.ccvs.core.CVSDiffException;
import org.eclipse.team.internal.ccvs.core.CVSException;
import org.eclipse.team.internal.ccvs.core.connection.CVSServerException;
import org.eclipse.team.internal.ccvs.core.requests.RequestSender;
import org.eclipse.team.internal.ccvs.core.resources.api.IManagedFolder;
import org.eclipse.team.internal.ccvs.core.response.ResponseDispatcher;
class Diff extends AbstractMessageCommand {
/**
* Constructor for Diff.
* @param responseDispatcher
* @param requestSender
*/
public Diff(ResponseDispatcher responseDispathcer, RequestSender requestSender) {
super(responseDispathcer, requestSender);
}
/**
* Overwritten to throw the CVSDiffException if the server returns
* an error, because it just does so when there is a difference between
* the cecked files.
*/
public void execute (
String[] globalOptions,
String[] localOptions,
String[] arguments,
IManagedFolder mRoot,
IProgressMonitor monitor,
PrintStream messageOut)
throws CVSException {
try {
super.execute(globalOptions,localOptions,arguments,mRoot,monitor,messageOut);
} catch (CVSServerException e) {
throw new CVSDiffException();
}
}
/**
* @see ICommand#getName()
*/
public String getName() {
return RequestSender.DIFF;
}
/**
* @see ICommand#getRequestName()
*/
public String getRequestName() {
return RequestSender.DIFF;
}
}