summaryrefslogtreecommitdiffstats
path: root/rbutil/rbutilqt/base/serverinfo.h
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/rbutilqt/base/serverinfo.h')
-rw-r--r--rbutil/rbutilqt/base/serverinfo.h67
1 files changed, 67 insertions, 0 deletions
diff --git a/rbutil/rbutilqt/base/serverinfo.h b/rbutil/rbutilqt/base/serverinfo.h
new file mode 100644
index 0000000000..742ea277ff
--- /dev/null
+++ b/rbutil/rbutilqt/base/serverinfo.h
@@ -0,0 +1,67 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ *
+ * Copyright (C) 2010 by Dominik Wenger
+ * $Id$
+ *
+ * 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.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+
+#ifndef SERVERINFO_H
+#define SERVERINFO_H
+
+#include <QtCore>
+
+class ServerInfo : public QObject
+{
+ Q_OBJECT
+ public:
+
+ //! All Server infos
+ enum ServerInfos {
+ CurReleaseVersion,
+ CurStatus,
+ DailyRevision,
+ DailyDate,
+ BleedingRevision,
+ BleedingDate,
+ };
+
+ //! read in buildinfo file
+ static void readBuildInfo(QString file);
+ //! read in bleeding info file
+ static void readBleedingInfo(QString file);
+ //! get a value from server info
+ static QVariant value(enum ServerInfos setting);
+ //! get a value from server info for a named platform.
+ static QVariant platformValue(QString platform, enum ServerInfos setting);
+
+ private:
+ //! set a server info to all platforms where configurename matches
+ static void setAllConfigPlatformValue(QString configplatform,ServerInfos info, QVariant value);
+ //! set a server info value
+ static void setValue(enum ServerInfos setting , QVariant value);
+ //! set a value for a server info for a named platform.
+ static void setPlatformValue(QString platform, enum ServerInfos setting, QVariant value);
+ //! you shouldnt call this, its a fully static class
+ ServerInfo() {}
+
+ //! map of server infos
+ static QMap<QString, QVariant> serverInfos;
+
+};
+
+#endif
+