summaryrefslogtreecommitdiffstats
path: root/vcs/cvsservice/bufferedstringreader.h
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commit114a878c64ce6f8223cfd22d76a20eb16d177e5e (patch)
treeacaf47eb0fa12142d3896416a69e74cbf5a72242 /vcs/cvsservice/bufferedstringreader.h
downloadtdevelop-114a878c64ce6f8223cfd22d76a20eb16d177e5e.tar.gz
tdevelop-114a878c64ce6f8223cfd22d76a20eb16d177e5e.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdevelop@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'vcs/cvsservice/bufferedstringreader.h')
-rw-r--r--vcs/cvsservice/bufferedstringreader.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/vcs/cvsservice/bufferedstringreader.h b/vcs/cvsservice/bufferedstringreader.h
new file mode 100644
index 00000000..1f96c0d1
--- /dev/null
+++ b/vcs/cvsservice/bufferedstringreader.h
@@ -0,0 +1,44 @@
+/***************************************************************************
+ * Copyright (C) 2003 by Mario Scalas *
+ * mario.scalas@libero.it *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef BUFFEREDSTRINGREADER_H
+#define BUFFEREDSTRINGREADER_H
+
+#include <qstringlist.h>
+
+class CvsServicePart;
+class KConfig;
+class KDevProject;
+
+/* This class helps when we have to collect a string list from a text
+ * stream, just as many cvs commands do. The problem is that the these commands
+ * does not provide strings as we need: often a sent string is received
+ * broken in two pieces and so we need a way to rebuild it. This class provide an
+ * abstraction for avoiding this.
+ * @author Mario Scalas <mario.scalas@libero.it>
+*/
+class BufferedStringReader
+{
+public:
+ BufferedStringReader();
+ virtual ~BufferedStringReader();
+
+ /**
+ * Add the specified characters to current buffered ones and grab
+ * as many '\n'-terminated strings as found.
+ * @param otherChars additional chars to be added to the buffer
+ */
+ QStringList process( const QString &otherChars );
+private:
+ QString m_stringBuffer;
+};
+
+#endif // BUFFEREDSTRINGREADER_H