vcsbase: overhaul *Arguments() methods in VCSBaseClient

Refactor how sub VCS clients redefine commands like diff, log, ...
This allows sensible code shrinks in Bazaar and Mercurial plugins

Change-Id: Ifeaf366c5c1c2eee776ce5d6bc748c3872e53f5a
Merge-request: 2201
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/3403
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
This commit is contained in:
cerf
2011-08-23 10:38:44 +00:00
committed by Tobias Hunger
parent 31739dc0f7
commit eebe6681bc
7 changed files with 180 additions and 357 deletions

View File

@@ -68,38 +68,30 @@ public:
void outgoing(const QString &repositoryRoot);
QString vcsGetRepositoryURL(const QString &directory);
void annotate(const QString &workingDir, const QString &file,
const QString revision = QString(), int lineNumber = -1,
const QStringList &extraOptions = QStringList());
void commit(const QString &repositoryRoot, const QStringList &files,
const QString &commitMessageFile,
const QStringList &extraOptions = QStringList());
void diff(const QString &workingDir, const QStringList &files = QStringList(),
const QStringList &extraOptions = QStringList());
void import(const QString &repositoryRoot, const QStringList &files,
const QStringList &extraOptions = QStringList());
void revertAll(const QString &workingDir, const QString &revision = QString(),
const QStringList &extraOptions = QStringList());
void view(const QString &source, const QString &id,
const QStringList &extraOptions = QStringList());
public:
QString findTopLevelForFile(const QFileInfo &file) const;
protected:
QString vcsEditorKind(VCSCommand cmd) const;
QStringList cloneArguments(const QString &srcLocation,
const QString &dstLocation,
const QStringList &extraOptions) const;
QStringList pullArguments(const QString &srcLocation,
const QStringList &extraOptions) const;
QStringList pushArguments(const QString &dstLocation,
const QStringList &extraOptions) const;
QStringList commitArguments(const QStringList &files,
const QString &commitMessageFile,
const QStringList &extraOptions) const;
QStringList importArguments(const QStringList &files) const;
QStringList updateArguments(const QString &revision) const;
QStringList revertArguments(const QString &file, const QString &revision) const;
QStringList revertAllArguments(const QString &revision) const;
QStringList annotateArguments(const QString &file,
const QString &revision, int lineNumber) const;
QStringList diffArguments(const QStringList &files,
const QStringList &extraOptions) const;
QStringList revisionSpec(const QString &revision) const;
VCSBase::VCSBaseEditorParameterWidget *createDiffEditor(const QString &workingDir,
const QStringList &files,
const QStringList &extraOptions);
QStringList logArguments(const QStringList &files,
const QStringList &extraOptions) const;
QStringList statusArguments(const QString &file) const;
QStringList viewArguments(const QString &revision) const;
StatusItem parseStatusLine(const QString &line) const;
};