summaryrefslogtreecommitdiffstats
path: root/library/Graphite/Util/IcingadbUtils.php
diff options
context:
space:
mode:
Diffstat (limited to 'library/Graphite/Util/IcingadbUtils.php')
-rw-r--r--library/Graphite/Util/IcingadbUtils.php49
1 files changed, 49 insertions, 0 deletions
diff --git a/library/Graphite/Util/IcingadbUtils.php b/library/Graphite/Util/IcingadbUtils.php
new file mode 100644
index 0000000..43334e5
--- /dev/null
+++ b/library/Graphite/Util/IcingadbUtils.php
@@ -0,0 +1,49 @@
+<?php
+
+/* Icinga Graphite Web | (c) 2022 Icinga GmbH | GPLv2 */
+
+namespace Icinga\Module\Graphite\Util;
+
+use Icinga\Module\Icingadb\Common\Auth;
+use Icinga\Module\Icingadb\Common\Database;
+use Icinga\Module\Icingadb\Common\Macros;
+
+/**
+* Class for initialising icingadb utils
+ */
+class IcingadbUtils
+{
+ use Macros;
+ use Database;
+ use Auth;
+
+ protected static $instance;
+
+ /**
+ * @see getInstance()
+ */
+ private function __construct()
+ {
+ }
+
+ /**
+ * Get the IcingadbUtils instance
+ *
+ * @return IcingadbUtils
+ */
+ public static function getInstance(): IcingadbUtils
+ {
+ if (self::$instance === null) {
+ self::$instance = new self();
+ }
+
+ return static::$instance;
+ }
+
+ /**
+ * Prevent the instance from being cloned (which would create a second instance of it)
+ */
+ private function __clone()
+ {
+ }
+}