Commit 1 for Create Optimized Sched API 21/83221/1
authorJerry Flood <jflood@att.com>
Mon, 25 Mar 2019 16:16:54 +0000 (12:16 -0400)
committerJerry Flood <jflood@att.com>
Mon, 25 Mar 2019 16:24:53 +0000 (12:24 -0400)
Multiple commits required due to commit size limitation.

Change-Id: I2170e495b9e15bd5008c0a5ab2a2e4502e57e7e6
Issue-ID: OPTFRA-458
Signed-off-by: Jerry Flood <jflood@att.com>
cmso-database/src/main/resources/cmso-dbchangelog/onap-cmso-v1.1-add-uuid.sql
cmso-service/etc/config/optimizer.properties
cmso-service/src/main/java/org/onap/observations/Mdc.java
cmso-service/src/main/java/org/onap/observations/Observation.java
cmso-service/src/main/java/org/onap/observations/ObservationInterface.java
cmso-service/src/main/java/org/onap/observations/ObservationObject.java
cmso-service/src/main/java/org/onap/optf/cmso/JerseyConfiguration.java

index b11ea0a..2f6aafb 100644 (file)
@@ -91,3 +91,5 @@ update SCHEDULE_APPROVALS set approval_types_uuid =
        (select distinct s.uuid from SCHEDULE_APPROVALS t, APPROVAL_TYPES s where t.approval_type_id = s.id);
 
 SET SQL_SAFE_UPDATES = 1;
+
+ALTER TABLE CHANGE_MANAGEMENT_SCHEDULES ADD COLUMN request LONGTEXT NULL DEFAULT NULL;
index db014d6..13021ed 100644 (file)
@@ -29,6 +29,6 @@
 # limitations under the License.\r
 #-------------------------------------------------------------------------------\r
 \r
-cmso.optimizer.url=http://localhost:8080/cmso/v1/loopbacktest/optimizer\r
-cmso.optimizer.callbackurl=http://localhost:8080/cmso/v1/optimizerCallback\r
-\r
+cmso.optimizer.request.url=http://localhost:8080/cmso/v1/loopbacktest/optimize/schedule\r
+cmso.optimizer.status.url=http://localhost:8080/cmso/v1/loopbacktest/optimize/schedule\r
+cmso.optimizer.health.url=http://localhost:8080/cmso/v1/loopbacktest/optimize/schedule/health\r
index b00bed3..b9b30ea 100644 (file)
@@ -1,32 +1,29 @@
 /*
  * Copyright © 2019 AT&T Intellectual Property.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file 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
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file 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.
- * 
- * 
- * 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.
-*/
+ */
+
 package org.onap.observations;
 
 import static com.att.eelf.configuration.Configuration.MDC_BEGIN_TIMESTAMP;
@@ -45,12 +42,12 @@ import static com.att.eelf.configuration.Configuration.MDC_STATUS_CODE;
 import static com.att.eelf.configuration.Configuration.MDC_TARGET_ENTITY;
 import static com.att.eelf.configuration.Configuration.MDC_TARGET_SERVICE_NAME;
 
+import com.att.eelf.utils.Stopwatch;
 import java.net.InetAddress;
 import java.net.URI;
 import java.util.Date;
 import java.util.Map;
 import java.util.UUID;
-
 import javax.servlet.http.HttpServletRequest;
 import javax.ws.rs.client.ClientRequestContext;
 import javax.ws.rs.client.ClientResponseContext;
@@ -58,191 +55,261 @@ import javax.ws.rs.container.ContainerRequestContext;
 import javax.ws.rs.container.ContainerResponseContext;
 import javax.ws.rs.core.MultivaluedMap;
 import javax.ws.rs.core.Response.StatusType;
-
 import org.onap.optf.cmso.filters.MessageHeaders.HeadersEnum;
 import org.quartz.JobExecutionContext;
 import org.slf4j.MDC;
 
-import com.att.eelf.utils.Stopwatch;
-
 /**
- * ECOMP EELF logging MDC fields not defined in the MDC Configuration (i.e.
- * MDC_ALERT_SEVERITY)
+ * ECOMP EELF logging MDC fields not defined in the MDC Configuration (i.e. MDC_ALERT_SEVERITY)
  **/
 public class Mdc {
-       public static final String SERVICE_NAME = "CSS-Scheduler";
-       public enum Enum {
-               // BeginTimestamp,
-               // EndTimeStamp,
-               // RequestId,
-               // ServiceInstanceId,
-               VirtualServerName,
-               // ServiceName,
-               // PartnerName,
-               // StatusCOde,
-               // ResponseCode,
-               // ResponseDescription,
-               // InstanceUUID,
-               // AlertSeverity,
-               // ServerIPAddress,
-               // ElapsedTime,
-               // ServerFQDN,
-               // RemoteHost,
-               ClassName, Unused,
-               // ProcessKey,
-               CustomField1, CustomField2, CustomField3, CustomField4,
-               // TargetVirtualEntity,
-               // TargetEntity,
-               // TargetServiceName,
-               ErrorCode, ErrorDescription, Timer,
-       }
-
-       public static String getCaller(int back)
-       {
-               StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
-               return stackTraceElements[back].getClassName() + "." + stackTraceElements[back].getMethodName();
-       }
-
-       public static void setCaller(int back)
-       {
-               String caller = MDC.get(Enum.ClassName.name());
-               if (caller == null)
-                       MDC.put(Enum.ClassName.name(), getCaller(back));
-       }
-
-       public static void setObservation(ObservationInterface o)
-       {
-               MDC.put(Enum.CustomField4.name(), o.name());
-       }
-
-       public static void clearCaller()
-       {
-               MDC.remove(Enum.ClassName.name());
-       }
-
-       public static void quartzJobBegin(JobExecutionContext context) 
-       {
-               MDC.clear();
-               MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
-               MDC.put(MDC_INSTANCE_UUID, UUID.randomUUID().toString());
-               try{  MDC.put(MDC_SERVER_FQDN, InetAddress.getLocalHost().getHostName()); } catch (Exception e){ MDC.put(MDC_SERVER_FQDN, e.getMessage());}
-               try{  MDC.put(MDC_SERVER_IP_ADDRESS, InetAddress.getLocalHost().getHostAddress()); } catch (Exception e){ MDC.put(MDC_SERVER_FQDN, e.getMessage());}
-               MDC.put(MDC_SERVICE_INSTANCE_ID, "UNKNOWN");
-               MDC.put(MDC_SERVICE_NAME, SERVICE_NAME);
-               MDC.put(Enum.ClassName.name(), getCaller(3));
-       }
-               
-       public static void quartzJobEnd(JobExecutionContext context) 
-       {
-               MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
-               MDC.put(Enum.ClassName.name(), getCaller(3));
-       }
-
-       public static Map<String, String> save() 
-       {
-               Map<String, String> save = MDC.getCopyOfContextMap();
-               return save;
-       }
-
-       public static void restore(Map<String, String> mdcSave) 
-       {
-               MDC.clear();
-               for (String name : mdcSave.keySet())
-                       MDC.put(name, mdcSave.get(name));
-       }
-
-
-
-       public static void setRequestIdIfNotSet(String requestId) {
-               if (MDC.get(MDC_KEY_REQUEST_ID) == null || MDC.get(MDC_KEY_REQUEST_ID).equals(""))
-       {
-                       setRequestId(requestId);
-               }
-       }
-       
-       public static void setRequestId(String requestId) {
-               MDC.put(MDC_KEY_REQUEST_ID, requestId);
-       }
-               
-       public static void metricStart(ClientRequestContext requestContext) {
-               MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
-               MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
-               setPartnerTargetFromUri(requestContext.getUri());
-       }
-
-       public static void metricEnd(ClientResponseContext response) 
-       {
-               
-               Date now = new Date();
-               //MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(now));
-               MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(now));
-               setResponseInfo(response.getStatusInfo());
-               
-       }
-       public static void auditStart(ContainerRequestContext requestContext, HttpServletRequest servletRequest) 
-       {
-               MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
-               MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
-               MDC.put(MDC_REMOTE_HOST, servletRequest.getRemoteHost());
-               MDC.put(Enum.ClassName.name(), getCaller(4));
-               MultivaluedMap<String, String> headers = requestContext.getHeaders();
-               String transactionId = (String) headers.getFirst(HeadersEnum.TransactionID.toString());
-               if (transactionId != null)
-               {
-                       setRequestId(transactionId);
-               }
-               else
-               {
-                       setRequestId(UUID.randomUUID().toString());
-               }
-               
-       }
-
-       public static void auditEnd(ContainerRequestContext requestContext, ContainerResponseContext response)
-       {
-               Date now = new Date();
-               //MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(now));
-               MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(now));
-               MDC.put(Enum.ClassName.name(), getCaller(4));
-               
-               setResponseInfo(response.getStatusInfo());
-               
-       }
-                
-       private static void setResponseInfo(StatusType statusInfo)
-       {
-               Integer status = statusInfo.getStatusCode();
-               String completed = "ERROR";
-               if (status >=200 && status < 300)
-               {
-                       completed = "COMPLETE";
-               }
-               MDC.put(MDC_RESPONSE_CODE, status.toString());
-               MDC.put(MDC_RESPONSE_DESC, statusInfo.getReasonPhrase());
-               MDC.put(MDC_STATUS_CODE, completed);
-       }
-               
-       public static void setEvent(String requestID) {
-               MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
-               MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
-               setRequestId(requestID);
-       }
-
-       private static void setPartnerTargetFromUri(URI uri)
-       {
-               try
-               {
-                       MDC.put(MDC_PARTNER_NAME, uri.getHost());
-                       MDC.put(MDC_TARGET_ENTITY, uri.getScheme() + "://" + uri.getHost() + ":" + uri.getPort());
-                       MDC.put(MDC_TARGET_SERVICE_NAME, uri.getPath());
-               }
-               catch (Exception e)
-               {
-                       MDC.put(MDC_PARTNER_NAME, "UNKNOWN");
-                       MDC.put(MDC_TARGET_ENTITY, "UNKNOWN");
-                       MDC.put(MDC_TARGET_SERVICE_NAME, "UNKNOWN");
-               }
-       }
-
-
-}
\ No newline at end of file
+
+    /** The Constant SERVICE_NAME. */
+    public static final String SERVICE_NAME = "CSS-Scheduler";
+
+    /**
+     * The Enum Enum.
+     */
+    public enum Enum {
+        // BeginTimestamp,
+        // EndTimeStamp,
+        // RequestId,
+        // ServiceInstanceId,
+        VirtualServerName,
+        // ServiceName,
+        // PartnerName,
+        // StatusCOde,
+        // ResponseCode,
+        // ResponseDescription,
+        // InstanceUUID,
+        // AlertSeverity,
+        // ServerIPAddress,
+        // ElapsedTime,
+        // ServerFQDN,
+        // RemoteHost,
+        ClassName, Unused,
+        // ProcessKey,
+        CustomField1, CustomField2, CustomField3, CustomField4,
+        // TargetVirtualEntity,
+        // TargetEntity,
+        // TargetServiceName,
+        ErrorCode, ErrorDescription, Timer,
+    }
+
+    /**
+     * Gets the caller.
+     *
+     * @param back the back
+     * @return the caller
+     */
+    public static String getCaller(int back) {
+        StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
+        return stackTraceElements[back].getClassName() + "." + stackTraceElements[back].getMethodName();
+    }
+
+    /**
+     * Sets the caller.
+     *
+     * @param back the new caller
+     */
+    public static void setCaller(int back) {
+        String caller = MDC.get(Enum.ClassName.name());
+        if (caller == null)
+        {
+            MDC.put(Enum.ClassName.name(), getCaller(back));
+        }
+    }
+
+    /**
+     * Sets the observation.
+     *
+     * @param obs the new observation
+     */
+    public static void setObservation(ObservationInterface obs) {
+        MDC.put(Enum.CustomField4.name(), obs.name());
+    }
+
+    /**
+     * Clear caller.
+     */
+    public static void clearCaller() {
+        MDC.remove(Enum.ClassName.name());
+    }
+
+    /**
+     * Quartz job begin.
+     *
+     * @param context the context
+     */
+    public static void quartzJobBegin(JobExecutionContext context) {
+        MDC.clear();
+        MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
+        MDC.put(MDC_INSTANCE_UUID, UUID.randomUUID().toString());
+        try {
+            MDC.put(MDC_SERVER_FQDN, InetAddress.getLocalHost().getHostName());
+        } catch (Exception e) {
+            MDC.put(MDC_SERVER_FQDN, e.getMessage());
+        }
+        try {
+            MDC.put(MDC_SERVER_IP_ADDRESS, InetAddress.getLocalHost().getHostAddress());
+        } catch (Exception e) {
+            MDC.put(MDC_SERVER_FQDN, e.getMessage());
+        }
+        MDC.put(MDC_SERVICE_INSTANCE_ID, "UNKNOWN");
+        MDC.put(MDC_SERVICE_NAME, SERVICE_NAME);
+        MDC.put(Enum.ClassName.name(), getCaller(3));
+    }
+
+    /**
+     * Quartz job end.
+     *
+     * @param context the context
+     */
+    public static void quartzJobEnd(JobExecutionContext context) {
+        MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
+        MDC.put(Enum.ClassName.name(), getCaller(3));
+    }
+
+    /**
+     * Save.
+     *
+     * @return the map
+     */
+    public static Map<String, String> save() {
+        Map<String, String> save = MDC.getCopyOfContextMap();
+        return save;
+    }
+
+    /**
+     * Restore.
+     *
+     * @param mdcSave the mdc save
+     */
+    public static void restore(Map<String, String> mdcSave) {
+        MDC.clear();
+        for (String name : mdcSave.keySet())
+        {
+            MDC.put(name, mdcSave.get(name));
+        }
+    }
+
+
+
+    /**
+     * Sets the request id if not set.
+     *
+     * @param requestId the new request id if not set
+     */
+    public static void setRequestIdIfNotSet(String requestId) {
+        if (MDC.get(MDC_KEY_REQUEST_ID) == null || MDC.get(MDC_KEY_REQUEST_ID).equals("")) {
+            setRequestId(requestId);
+        }
+    }
+
+    /**
+     * Sets the request id.
+     *
+     * @param requestId the new request id
+     */
+    public static void setRequestId(String requestId) {
+        MDC.put(MDC_KEY_REQUEST_ID, requestId);
+    }
+
+    /**
+     * Metric start.
+     *
+     * @param requestContext the request context
+     */
+    public static void metricStart(ClientRequestContext requestContext) {
+        MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
+        MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
+        setPartnerTargetFromUri(requestContext.getUri());
+    }
+
+    /**
+     * Metric end.
+     *
+     * @param response the response
+     */
+    public static void metricEnd(ClientResponseContext response) {
+
+        Date now = new Date();
+        // MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(now));
+        MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(now));
+        setResponseInfo(response.getStatusInfo());
+
+    }
+
+    /**
+     * Audit start.
+     *
+     * @param requestContext the request context
+     * @param servletRequest the servlet request
+     */
+    public static void auditStart(ContainerRequestContext requestContext, HttpServletRequest servletRequest) {
+        MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
+        MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
+        MDC.put(MDC_REMOTE_HOST, servletRequest.getRemoteHost());
+        MDC.put(Enum.ClassName.name(), getCaller(4));
+        MultivaluedMap<String, String> headers = requestContext.getHeaders();
+        String transactionId = headers.getFirst(HeadersEnum.TransactionID.toString());
+        if (transactionId != null) {
+            setRequestId(transactionId);
+        } else {
+            setRequestId(UUID.randomUUID().toString());
+        }
+
+    }
+
+    /**
+     * Audit end.
+     *
+     * @param requestContext the request context
+     * @param response the response
+     */
+    public static void auditEnd(ContainerRequestContext requestContext, ContainerResponseContext response) {
+        Date now = new Date();
+        // MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(now));
+        MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(now));
+        MDC.put(Enum.ClassName.name(), getCaller(4));
+
+        setResponseInfo(response.getStatusInfo());
+
+    }
+
+    private static void setResponseInfo(StatusType statusInfo) {
+        Integer status = statusInfo.getStatusCode();
+        String completed = "ERROR";
+        if (status >= 200 && status < 300) {
+            completed = "COMPLETE";
+        }
+        MDC.put(MDC_RESPONSE_CODE, status.toString());
+        MDC.put(MDC_RESPONSE_DESC, statusInfo.getReasonPhrase());
+        MDC.put(MDC_STATUS_CODE, completed);
+    }
+
+    /**
+     * Sets the event.
+     *
+     * @param requestId the new event
+     */
+    public static void setEvent(String requestId) {
+        MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
+        MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
+        setRequestId(requestId);
+    }
+
+    private static void setPartnerTargetFromUri(URI uri) {
+        try {
+            MDC.put(MDC_PARTNER_NAME, uri.getHost());
+            MDC.put(MDC_TARGET_ENTITY, uri.getScheme() + "://" + uri.getHost() + ":" + uri.getPort());
+            MDC.put(MDC_TARGET_SERVICE_NAME, uri.getPath());
+        } catch (Exception e) {
+            MDC.put(MDC_PARTNER_NAME, "UNKNOWN");
+            MDC.put(MDC_TARGET_ENTITY, "UNKNOWN");
+            MDC.put(MDC_TARGET_SERVICE_NAME, "UNKNOWN");
+        }
+    }
+
+
+}
index 39bc3ca..3d2d176 100644 (file)
 /*
  * Copyright © 2019 AT&T Intellectual Property.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file 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
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file 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.
- * 
- * 
- * 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.
-*/
+ */
+
 package org.onap.observations;
 
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
 import org.apache.log4j.Level;
 import org.onap.optf.cmso.Application;
 
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
 
+/**
+ * The Class Observation.
+ */
+public class Observation {
+    private static EELFLogger log = EELFManager.getInstance().getLogger(Application.class);
+    private static EELFLogger metrics = EELFManager.getInstance().getMetricsLogger();
+    private static EELFLogger audit = EELFManager.getInstance().getAuditLogger();
+    private static EELFLogger errors = EELFManager.getInstance().getErrorLogger();
+    private static EELFLogger debug = EELFManager.getInstance().getDebugLogger();
+
+    /**
+     * Report.
+     *
+     * @param obs the o
+     * @param execpt the e
+     * @param arguments the arguments
+     */
+    // *************************************************************************************************
+    public static void report(ObservationInterface obs, Exception execpt, String... arguments) {
+        Mdc.setCaller(4);
+        Mdc.setObservation(obs);
+        if (obs.getAudit()) {
+            audit.info(obs, execpt, arguments);
+        }
+        if (obs.getMetric()) {
+            metrics.info(obs, execpt, arguments);
+        }
+        Level lev = obs.getLevel();
+        switch (lev.toInt()) {
+            case Level.WARN_INT:
+                errors.warn(obs, arguments);
+                debug.debug(obs, execpt, arguments);
+                break;
+            case Level.INFO_INT:
+                log.info(obs, execpt, arguments);
+                debug.debug(obs, execpt, arguments);
+                break;
+            case Level.ERROR_INT:
+                errors.error(obs, arguments);
+                debug.debug(obs, execpt, arguments);
+                break;
+            case Level.TRACE_INT:
+                debug.trace(obs, execpt, arguments);
+                break;
+            case Level.DEBUG_INT:
+                debug.debug(obs, execpt, arguments);
+                break;
+            default:
+                log.info(obs, execpt, arguments);
+        }
+        Mdc.clearCaller();
+    }
 
-public class Observation 
-{
-       private static EELFLogger log = EELFManager.getInstance().getLogger(Application.class);
-       private static EELFLogger metrics = EELFManager.getInstance().getMetricsLogger();
-       private static EELFLogger audit = EELFManager.getInstance().getAuditLogger();
-       private static EELFLogger errors = EELFManager.getInstance().getErrorLogger();
-       private static EELFLogger debug = EELFManager.getInstance().getDebugLogger();
-       
-       //*************************************************************************************************
-       public static void report(ObservationInterface o, Exception e, String ...arguments) 
-       {
-               Mdc.setCaller(4);
-               Mdc.setObservation(o);
-               if (o.getAudit())
-               {
-                       audit.info(o, e, arguments);
-               }
-               if (o.getMetric())
-               {
-                       metrics.info(o, e, arguments);
-               }
-               Level l = o.getLevel();
-               switch (l.toInt())
-               {
-               case Level.WARN_INT:
-                       errors.warn(o, arguments);
-                       debug.debug(o, e, arguments);
-                       break;
-               case Level.INFO_INT:
-                       log.info(o, e, arguments);
-                       debug.debug(o, e, arguments);
-                       break;
-               case Level.ERROR_INT:
-                       errors.error(o, arguments);
-                       debug.debug(o, e, arguments);
-                       break;
-               case Level.TRACE_INT:
-                       debug.trace(o, e, arguments);
-                       break;
-               case Level.DEBUG_INT:
-                       debug.debug(o, e, arguments);
-                       break;
-               default:
-                       log.info(o, e, arguments);
-               }
-               Mdc.clearCaller();
-       }
-       
-       public static void report(ObservationInterface o, String ...arguments) 
-       {
-               Mdc.setCaller(4);
-               Mdc.setObservation(o);
-               if (o.getAudit())
-               {
-                       audit.info(o, arguments);
-               }
-               if (o.getMetric())
-               {
-                       metrics.info(o, arguments);
-               }
-               Level l = o.getLevel();
-               switch (l.toInt())
-               {
-               case Level.WARN_INT:
-                       errors.warn(o, arguments);
-                       debug.debug(o, arguments);
-                       break;
-               case Level.INFO_INT:
-                       log.info(o, arguments);
-                       debug.debug(o, arguments);
-                       break;
-               case Level.ERROR_INT:
-                       errors.error(o, arguments);
-                       debug.debug(o, arguments);
-                       break;
-               case Level.TRACE_INT:
-                       debug.debug(o, arguments);
-                       break;
-               case Level.DEBUG_INT:
-                       debug.debug(o, arguments);
-                       break;
-               default:
-                       log.info(o, arguments);
-               }
-               Mdc.clearCaller();
-       }
+    /**
+     * Report.
+     *
+     * @param obs the o
+     * @param arguments the arguments
+     */
+    public static void report(ObservationInterface obs, String... arguments) {
+        Mdc.setCaller(4);
+        Mdc.setObservation(obs);
+        if (obs.getAudit()) {
+            audit.info(obs, arguments);
+        }
+        if (obs.getMetric()) {
+            metrics.info(obs, arguments);
+        }
+        Level levl = obs.getLevel();
+        switch (levl.toInt()) {
+            case Level.WARN_INT:
+                errors.warn(obs, arguments);
+                debug.debug(obs, arguments);
+                break;
+            case Level.INFO_INT:
+                log.info(obs, arguments);
+                debug.debug(obs, arguments);
+                break;
+            case Level.ERROR_INT:
+                errors.error(obs, arguments);
+                debug.debug(obs, arguments);
+                break;
+            case Level.TRACE_INT:
+                debug.debug(obs, arguments);
+                break;
+            case Level.DEBUG_INT:
+                debug.debug(obs, arguments);
+                break;
+            default:
+                log.info(obs, arguments);
+        }
+        Mdc.clearCaller();
+    }
 
 }
index 16305bc..0dce93d 100644 (file)
@@ -1,48 +1,49 @@
 /*
  * Copyright © 2019 AT&T Intellectual Property.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file 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
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file 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.
- * 
- * 
- * 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.
-*/
+ */
+
 package org.onap.observations;
 
+import com.att.eelf.i18n.EELFResolvableErrorEnum;
 import javax.ws.rs.core.Response.Status;
-
 import org.apache.log4j.Level;
 
-import com.att.eelf.i18n.EELFResolvableErrorEnum;
+public interface ObservationInterface extends EELFResolvableErrorEnum {
+    public Enum<?> getValue();
+
+    public Level getLevel();
+
+    public String getMessage();
+
+    public Status getStatus();
+
+    public String getDomain();
+
+    public String name();
+
+    public Boolean getAudit();
 
-public interface ObservationInterface extends EELFResolvableErrorEnum
-{
-       public Enum<?> getValue();
-       public Level getLevel();
-       public String getMessage();
-       public Status getStatus();
-       public String getDomain();
-       public String name();
-       public Boolean getAudit();
-       public Boolean getMetric();
-}
\ No newline at end of file
+    public Boolean getMetric();
+}
index 639db76..17bd939 100644 (file)
 /*
  * Copyright © 2019 AT&T Intellectual Property.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file 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
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file 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.
- * 
- * 
- * 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.
-*/
+ */
+
 package org.onap.observations;
 
+import com.att.eelf.i18n.EELFResolvableErrorEnum;
+import com.att.eelf.i18n.EELFResourceManager;
 import javax.ws.rs.core.Response.Status;
-
 import org.apache.log4j.Level;
 
-import com.att.eelf.i18n.EELFResolvableErrorEnum;
-import com.att.eelf.i18n.EELFResourceManager;
 
+/**
+ * The Class ObservationObject.
+ */
+public class ObservationObject implements ObservationInterface {
+
+    // *************************************************************************************************
+    // Interface class that matches the ObservationInteface pattern
+    // This will be used in case we decide to provide external overrides and we need to instantiate
+    // For now, we'll just use the Enum itself.
+    //
+    //
+    private Enum<?> value = null;
+
+    private Level level = null;;
+    private String message = null;
+    private Status status = null;
+    private String domain = null;
+    private Boolean metric = false;
+    private Boolean audit = false;
+
+    /**
+     * Instantiates a new observation object.
+     *
+     * @param obs the o
+     */
+    public ObservationObject(ObservationInterface obs) {
+        this.value   = obs.getValue();
+        this.level   = obs.getLevel();
+        this.message = obs.getMessage();
+        this.status  = obs.getStatus();
+        this.domain  = obs.getDomain();
+        this.metric  = obs.getMetric();
+        this.audit   = obs.getAudit();
+
+    }
+
+    /**
+     * Gets the value.
+     *
+     * @return the value
+     */
+    @Override
+    public Enum<?> getValue() {
+        return value;
+    }
+
+    /**
+     * Gets the message.
+     *
+     * @return the message
+     */
+    @Override
+    public String getMessage() {
+        return message;
+    }
+
+    /**
+     * Gets the status.
+     *
+     * @return the status
+     */
+    @Override
+    public Status getStatus() {
+        return status;
+    }
+
+    /**
+     * Gets the domain.
+     *
+     * @return the domain
+     */
+    @Override
+    public String getDomain() {
+        return domain;
+    }
+
+    /**
+     * Gets the level.
+     *
+     * @return the level
+     */
+    @Override
+    public Level getLevel() {
+        return level;
+    }
+
+    /**
+     * Name.
+     *
+     * @return the string
+     */
+    @Override
+    public String name() {
+        return value.name();
+    }
+
+    /**
+     * Gets the audit.
+     *
+     * @return the audit
+     */
+    @Override
+    public Boolean getAudit() {
+        return audit;
+    }
+
+    /**
+     * Gets the metric.
+     *
+     * @return the metric
+     */
+    @Override
+    public Boolean getMetric() {
+        return metric;
+    }
+
+    /**
+     * Gets the message.
+     *
+     * @param arguments the arguments
+     * @return the message
+     */
+    public String getMessagef(String... arguments) {
+        return EELFResourceManager.format((EELFResolvableErrorEnum) value, arguments);
+    }
+
+    /**
+     * Sets the value.
+     *
+     * @param value the new value
+     */
+    public void setValue(Enum<?> value) {
+        this.value = value;
+    }
+
+    /**
+     * Sets the level.
+     *
+     * @param level the new level
+     */
+    public void setLevel(Level level) {
+        this.level = level;
+    }
+
+    /**
+     * Sets the message.
+     *
+     * @param message the new message
+     */
+    public void setMessage(String message) {
+        this.message = message;
+    }
 
-public class ObservationObject implements ObservationInterface
-{
-       
-       //*************************************************************************************************
-       // Interface class that matches the ObservationInteface  pattern
-       // This will be used in case we decide to provide external overrides and we need to instantiate
-       // For now, we'll just use the Enum itself.
-       //
-       // 
-       private Enum<?> value = null;
-       private Level level = null;;
-       private String message = null;
-       private Status status = null;
-       private String domain = null;
-       private Boolean metric = false;
-       private Boolean audit = false;
-       public ObservationObject(ObservationInterface o)
-       {
-               this.value = o.getValue();
-               this.level = o.getLevel();
-               this.message = o.getMessage();
-               this.status = o.getStatus();
-               this.domain = o.getDomain();
-               this.metric = o.getMetric();
-               this.audit = o.getAudit();
-               
-       }
-       public Enum<?> getValue() {return value;}
-       @Override
-       public String getMessage() {return message;}
-       @Override
-       public Status getStatus() {return status;}
-       @Override
-       public String getDomain() {return domain;}
-
-       @Override
-       public Level getLevel() {
-               return level;
-       }
-       @Override
-       public String name() {
-               return value.name();
-       }
-       @Override
-       public Boolean getAudit() {
-               return audit;
-       }
-       @Override
-       public Boolean getMetric() {
-               return metric;
-       }
-
-       public String getMessage(String ...arguments) {
-               return EELFResourceManager.format((EELFResolvableErrorEnum)value,  arguments);
-       }
-       public void setValue(Enum<?> value) {
-               this.value = value;
-       }
-       public void setLevel(Level level) {
-               this.level = level;
-       }
-       public void setMessage(String message) {
-               this.message = message;
-       }
-       public void setStatus(Status status) {
-               this.status = status;
-       }
+    /**
+     * Sets the status.
+     *
+     * @param status the new status
+     */
+    public void setStatus(Status status) {
+        this.status = status;
+    }
 
 
 }
index 9189326..46db256 100644 (file)
@@ -40,10 +40,10 @@ import org.glassfish.jersey.logging.LoggingFeature;
 import org.glassfish.jersey.server.ResourceConfig;\r
 import org.glassfish.jersey.servlet.ServletProperties;\r
 import org.onap.optf.cmso.dispatcher.rs.DispatcherServiceImpl;\r
-import org.onap.optf.cmso.filters.CMSOContainerFilters;\r
+import org.onap.optf.cmso.filters.CmsoContainerFilters;\r
 import org.onap.optf.cmso.service.rs.AdminToolImpl;\r
-import org.onap.optf.cmso.service.rs.CMSOOptimizerCallbackImpl;\r
-import org.onap.optf.cmso.service.rs.CMSOServiceImpl;\r
+import org.onap.optf.cmso.service.rs.CmsoOptimizerCallbackImpl;\r
+import org.onap.optf.cmso.service.rs.CmsoServiceImpl;\r
 import org.onap.optf.cmso.service.rs.HealthCheckImpl;\r
 import org.onap.optf.cmso.test.loopback.SchedulerTestLoopbackServiceImpl;\r
 import org.onap.optf.cmso.test.loopback.TicketMgtLoopbackServiceImpl;\r
@@ -75,8 +75,8 @@ public class JerseyConfiguration extends ResourceConfig {
 \r
     @Autowired\r
     public JerseyConfiguration( /* LogRequestFilter lrf */ ) {\r
-        register(CMSOServiceImpl.class);\r
-        register(CMSOOptimizerCallbackImpl.class);\r
+        register(CmsoServiceImpl.class);\r
+        register(CmsoOptimizerCallbackImpl.class);\r
         register(SchedulerTestLoopbackServiceImpl.class);\r
         register(TicketMgtLoopbackServiceImpl.class);\r
         register(HealthCheckImpl.class);\r
@@ -89,7 +89,7 @@ public class JerseyConfiguration extends ResourceConfig {
 \r
         // TODO: Examine which logging features to enable\r
         register(new LoggingFeature(log));\r
-        register(CMSOContainerFilters.class);\r
+        register(CmsoContainerFilters.class);\r
     }\r
 \r
     @Bean\r