summaryrefslogtreecommitdiffstats
path: root/cervisia/cvsservice/cvsservice.h
diff options
context:
space:
mode:
Diffstat (limited to 'cervisia/cvsservice/cvsservice.h')
-rw-r--r--cervisia/cvsservice/cvsservice.h375
1 files changed, 375 insertions, 0 deletions
diff --git a/cervisia/cvsservice/cvsservice.h b/cervisia/cvsservice/cvsservice.h
new file mode 100644
index 00000000..0cc43e66
--- /dev/null
+++ b/cervisia/cvsservice/cvsservice.h
@@ -0,0 +1,375 @@
+/*
+ * Copyright (c) 2002-2004 Christian Loose <christian.loose@kdemail.net>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public License
+ * along with this program; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ */
+
+#ifndef CVSSERVICE_H
+#define CVSSERVICE_H
+
+#include <qstringlist.h>
+#include <dcopref.h>
+#include <dcopobject.h>
+
+class QString;
+
+
+class KDE_EXPORT CvsService : public DCOPObject
+{
+ K_DCOP
+
+public:
+ CvsService();
+ ~CvsService();
+
+k_dcop:
+ /**
+ * Adds new files to an existing project. The files don't actually
+ * appear in the repository until a subsequent commit is performed.
+ *
+ * @param files A list of files that should be added to the repository.
+ * @param isBinary Set to true to treat the files as binary files (-kb)
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef add(const QStringList& files, bool isBinary);
+
+ /**
+ */
+ DCOPRef addWatch(const QStringList& files, int events);
+
+ /**
+ * Shows information on who last modified each line of a file and when.
+ *
+ * @param fileName the name of the file to show annotations for
+ * @param revision show annotations for this revision (number or tag)
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef annotate(const QString& fileName, const QString& revision);
+
+ /**
+ * Checks out a module from the repository into a working copy.
+ *
+ * @param workingDir path to a local working copy directory
+ * @param repository
+ * @param module the name of the module
+ * @param tag
+ * @param pruneDirs remove empty directories from the working copy.
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef checkout(const QString& workingDir, const QString& repository,
+ const QString& module, const QString& tag, bool pruneDirs);
+
+ /**
+ * Checks out a module from the repository into a working copy.
+ *
+ * @param workingDir path to a local working copy directory
+ * @param repository
+ * @param module the name of the module
+ * @param tag
+ * @param pruneDirs remove empty directories from the working copy.
+ * @param alias alternative directory to check out to
+ * @param exportOnly flag to show we want a cvs export rather than a checkout
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ //### KDE4: merge with above checkout() method
+ DCOPRef checkout(const QString& workingDir, const QString& repository,
+ const QString& module, const QString& tag, bool pruneDirs,
+ const QString& alias, bool exportOnly);
+
+ /**
+ * Checks out a module from the repository into a working copy.
+ *
+ * @param workingDir path to a local working copy directory
+ * @param repository
+ * @param module the name of the module
+ * @param tag
+ * @param pruneDirs remove empty directories from the working copy.
+ * @param alias alternative directory to check out to
+ * @param exportOnly flag to show we want a cvs export rather than a checkout
+ * @param recursive check out dirs recursively
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef checkout(const QString& workingDir, const QString& repository,
+ const QString& module, const QString& tag, bool pruneDirs,
+ const QString& alias, bool exportOnly, bool recursive);
+
+ /**
+ *
+ * @param files A list of files with changes that should be committed to
+ * the repository.
+ * @param commitMessage log message describing the changes
+ * @param recursive
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef commit(const QStringList& files, const QString& commitMessage,
+ bool recursive);
+
+ /**
+ * Creates a new root repository.
+ *
+ * @param repository
+ */
+ DCOPRef createRepository(const QString& repository);
+
+ /**
+ */
+ DCOPRef createTag(const QStringList& files, const QString& tag,
+ bool branch, bool force);
+
+ /**
+ */
+ DCOPRef deleteTag(const QStringList& files, const QString& tag,
+ bool branch, bool force);
+
+ /**
+ */
+ DCOPRef downloadCvsIgnoreFile(const QString& repository,
+ const QString& outputFile);
+
+ /**
+ */
+ DCOPRef downloadRevision(const QString& fileName, const QString& revision,
+ const QString& outputFile);
+
+ /**
+ */
+ DCOPRef downloadRevision(const QString& fileName, const QString& revA,
+ const QString& outputFileA, const QString& revB,
+ const QString& outputFileB);
+
+ /**
+ *
+ * @param fileName
+ * @param revA
+ * @param revB
+ * @param diffOptions
+ * @param contextLines
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef diff(const QString& fileName, const QString& revA,
+ const QString& revB, const QString& diffOptions,
+ unsigned contextLines);
+
+ /**
+ *
+ * @param fileName
+ * @param revA
+ * @param revB
+ * @param diffOptions
+ * @param format
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef diff(const QString& fileName, const QString& revA,
+ const QString& revB, const QString& diffOptions,
+ const QString& format);
+
+ /**
+ * @param files
+ */
+ DCOPRef edit(const QStringList& files);
+
+ /**
+ * @param files
+ */
+ DCOPRef editors(const QStringList& files);
+
+ /**
+ * Shows a history of activity (like checkouts, commits, etc) in the
+ * repository for all users and all record types.
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef history();
+
+ /**
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef import(const QString& workingDir, const QString& repository,
+ const QString& module, const QString& ignoreList,
+ const QString& comment, const QString& vendorTag,
+ const QString& releaseTag, bool importAsBinary);
+
+ /**
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ //### KDE4: merge with above import() method
+ DCOPRef import(const QString& workingDir, const QString& repository,
+ const QString& module, const QString& ignoreList,
+ const QString& comment, const QString& vendorTag,
+ const QString& releaseTag, bool importAsBinary,
+ bool useModificationTime);
+
+ /**
+ * @param files
+ */
+ DCOPRef lock(const QStringList& files);
+
+ /**
+ * Shows log messages for a file.
+ *
+ * @param fileName the name of the file to show log messages for
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef log(const QString& fileName);
+
+ /**
+ * @param repository
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef login(const QString& repository);
+
+ /**
+ * @param repository
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef logout(const QString& repository);
+
+ /**
+ */
+ DCOPRef makePatch();
+
+ /**
+ */
+ //### KDE4: merge with above makePatch() method
+ DCOPRef makePatch(const QString& diffOptions, const QString& format);
+
+ /**
+ * @param repository
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef moduleList(const QString& repository);
+
+ /**
+ * Deletes files from the local working copy and schedules them to be
+ * removed from the repository. The files don't actually disappear from
+ * the repository until a subsequent commit is performed.
+ *
+ * @param files A list of files that should be removed from the repository.
+ * @param recursive descend into subdirectories.
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef remove(const QStringList& files, bool recursive);
+
+ /**
+ */
+ DCOPRef removeWatch(const QStringList& files, int events);
+
+ /**
+ */
+ DCOPRef rlog(const QString& repository, const QString& module,
+ bool recursive);
+
+ /**
+ * Shows a summary of what's been done locally, without changing the
+ * working copy. (cvs -n update)
+ *
+ * @param files
+ * @param recursive descend into subdirectories.
+ * @param createDirs
+ * @param pruneDirs
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef simulateUpdate(const QStringList& files, bool recursive,
+ bool createDirs, bool pruneDirs);
+
+ /**
+ * Shows the status of the files in the working copy.
+ *
+ * @param files
+ * @param recursive descend into subdirectories.
+ * @param tagInfo show tag information for the file.
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef status(const QStringList& files, bool recursive, bool tagInfo);
+
+ /**
+ * @param files
+ */
+ DCOPRef unedit(const QStringList& files);
+
+ /**
+ * @param files
+ */
+ DCOPRef unlock(const QStringList& files);
+
+ /**
+ * Merges changes from the repository into the files of the
+ * working copy.
+ *
+ * @param files A list of files that should be updated.
+ * @param recursive descend into subdirectories.
+ * @param createDirs create directories that exist in the repository
+ * but not yet in the working copy.
+ * @param pruneDirs remove empty directories from the working copy.
+ * @param extraOpt
+ *
+ * @return A DCOP reference to the cvs job or in case of failure a
+ * null reference.
+ */
+ DCOPRef update(const QStringList& files, bool recursive, bool createDirs,
+ bool pruneDirs, const QString& extraOpt);
+
+ /**
+ * @param files
+ */
+ DCOPRef watchers(const QStringList& files);
+
+ /**
+ * Quits the DCOP service.
+ */
+ void quit();
+
+private:
+ struct Private;
+ Private* d;
+};
+
+
+#endif