JUnits for coverage
[portal.git] / ecomp-portal-BE-common / src / main / java / org / onap / portalapp / portal / logging / logic / AuxDiscriminator.java
diff --git a/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/logging/logic/AuxDiscriminator.java b/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/logging/logic/AuxDiscriminator.java
new file mode 100644 (file)
index 0000000..d3add13
--- /dev/null
@@ -0,0 +1,74 @@
+/*-
+ * ============LICENSE_START==========================================
+ * ONAP Portal
+ * ===================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ *
+ * Unless otherwise specified, all software contained herein is licensed
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this software except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *             http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Unless otherwise specified, all documentation contained herein is licensed
+ * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
+ * you may not use this documentation except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *             https://creativecommons.org/licenses/by/4.0/
+ *
+ * Unless required by applicable law or agreed to in writing, documentation
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * ============LICENSE_END============================================
+ *
+ * 
+ */
+package org.onap.portalapp.portal.logging.logic;
+
+import java.util.Map;
+
+import org.onap.portalsdk.core.util.SystemProperties;
+
+import ch.qos.logback.classic.sift.MDCBasedDiscriminator;
+import ch.qos.logback.classic.spi.ILoggingEvent;
+
+public class AuxDiscriminator extends MDCBasedDiscriminator {
+       
+       final String MUSIC = "music";
+       final String HEALTHMONITOR = "HealthMonitor";
+       
+       @Override
+       public String getDiscriminatingValue(ILoggingEvent event) {
+               
+                       String message = event.getMessage();
+               if (message != null && message.matches("org.onap.music.*")) {
+                   return getDefaultValue() + "-" + MUSIC;
+               }
+               
+               Map<String, String> mdcMap = event.getMDCPropertyMap();
+               if (mdcMap == null) {
+                   return getDefaultValue();
+               }
+               String mdcValue = mdcMap.get(SystemProperties.MDC_CLASS_NAME);
+               if (mdcValue != null && mdcValue.endsWith(HEALTHMONITOR)) {
+                   return getDefaultValue() + "-" + HEALTHMONITOR;
+               }
+               
+               
+               return getDefaultValue();
+       }
+
+
+}