summaryrefslogtreecommitdiffstats
path: root/common-app-api/src/main/java/org/openecomp/sdc/common/ecomplog/EcompLoggerFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'common-app-api/src/main/java/org/openecomp/sdc/common/ecomplog/EcompLoggerFactory.java')
-rw-r--r--common-app-api/src/main/java/org/openecomp/sdc/common/ecomplog/EcompLoggerFactory.java34
1 files changed, 34 insertions, 0 deletions
diff --git a/common-app-api/src/main/java/org/openecomp/sdc/common/ecomplog/EcompLoggerFactory.java b/common-app-api/src/main/java/org/openecomp/sdc/common/ecomplog/EcompLoggerFactory.java
new file mode 100644
index 0000000000..2ea1280f48
--- /dev/null
+++ b/common-app-api/src/main/java/org/openecomp/sdc/common/ecomplog/EcompLoggerFactory.java
@@ -0,0 +1,34 @@
+package org.openecomp.sdc.common.ecomplog;
+
+/**
+ * Created by dd4296 on 12/26/2017.
+ * this factory helps decouple the classes for Stopwatch and EcompMDCWrapper from
+ * the EcompLogger classes
+ */
+public class EcompLoggerFactory {
+
+ private EcompLoggerFactory() {
+ }
+
+ @SuppressWarnings("unchecked")
+ static public <T, V> V getLogger(Class<T> type) {
+
+ if (type.getName().equals(EcompLoggerAudit.class.getName())) {
+ return (V) new EcompLoggerAudit(new EcompMDCWrapper(new Stopwatch()));
+ }
+
+ if (type.getName().equals(EcompLoggerDebug.class.getName())) {
+ return (V) new EcompLoggerDebug(new EcompMDCWrapper(new Stopwatch()));
+ }
+
+ if (type.getName().equals(EcompLoggerMetric.class.getName())) {
+ return (V) new EcompLoggerMetric(new EcompMDCWrapper(new Stopwatch()));
+ }
+
+ if (type.getName().equals(EcompLoggerError.class.getName())) {
+ return (V) new EcompLoggerError(new EcompMDCWrapper(new Stopwatch()));
+ }
+
+ return null;
+ }
+}