summaryrefslogtreecommitdiffstats
path: root/logger/QsLogDest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'logger/QsLogDest.cpp')
-rw-r--r--logger/QsLogDest.cpp104
1 files changed, 0 insertions, 104 deletions
diff --git a/logger/QsLogDest.cpp b/logger/QsLogDest.cpp
deleted file mode 100644
index 4a47060e..00000000
--- a/logger/QsLogDest.cpp
+++ /dev/null
@@ -1,104 +0,0 @@
-// Copyright (c) 2010, Razvan Petru
-// All rights reserved.
-
-// Redistribution and use in source and binary forms, with or without modification,
-// are permitted provided that the following conditions are met:
-
-// * Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above copyright notice, this
-// list of conditions and the following disclaimer in the documentation and/or other
-// materials provided with the distribution.
-// * The name of the contributors may not be used to endorse or promote products
-// derived from this software without specific prior written permission.
-
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-// IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-// OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
-// OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#include "QsLogDest.h"
-#include "QsDebugOutput.h"
-#include "QsLog.h"
-#include <QFile>
-#include <QTextStream>
-#include <QString>
-
-namespace QsLogging
-{
-
-Destination::~Destination()
-{
- Logger::instance().removeDestination(this);
- QsDebugOutput::output("Removed logger destination.");
-}
-
-//! file message sink
-class FileDestination : public Destination
-{
-public:
- FileDestination(const QString &filePath);
- virtual void write(const QString &message);
-
-private:
- QFile mFile;
- QTextStream mOutputStream;
-};
-
-FileDestination::FileDestination(const QString &filePath)
-{
- mFile.setFileName(filePath);
- mFile.open(QFile::WriteOnly | QFile::Text |
- QFile::Truncate); // fixme: should throw on failure
- mOutputStream.setDevice(&mFile);
-}
-
-void FileDestination::write(const QString &message)
-{
- mOutputStream << message << endl;
- mOutputStream.flush();
-}
-
-//! debugger sink
-class DebugOutputDestination : public Destination
-{
-public:
- virtual void write(const QString &message);
-};
-
-void DebugOutputDestination::write(const QString &message)
-{
- QsDebugOutput::output(message);
-}
-
-class QDebugDestination : public Destination
-{
-public:
- virtual void write(const QString &message)
- {
- qDebug() << message;
- };
-};
-
-DestinationPtr DestinationFactory::MakeFileDestination(const QString &filePath)
-{
- return DestinationPtr(new FileDestination(filePath));
-}
-
-DestinationPtr DestinationFactory::MakeDebugOutputDestination()
-{
- return DestinationPtr(new DebugOutputDestination);
-}
-
-DestinationPtr DestinationFactory::MakeQDebugDestination()
-{
- return DestinationPtr(new QDebugDestination);
-}
-
-} // end namespace