diff options
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.java | 34 |
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; + } +} |