Java 17 Upgrade
[policy/models.git] / models-sim / policy-models-sim-pdp / src / main / java / org / onap / policy / models / sim / pdp / PdpSimulatorMain.java
index f5892d5..88d1b26 100644 (file)
@@ -1,6 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
- *  Copyright (C) 2019 Nordix Foundation.
+ *  Copyright (C) 2019-2021, 2023 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 package org.onap.policy.models.sim.pdp;
 
-import java.io.FileInputStream;
 import java.util.Arrays;
-import java.util.Properties;
-
-
+import lombok.Getter;
+import org.onap.policy.common.utils.cmd.CommandLineException;
 import org.onap.policy.common.utils.services.Registry;
 import org.onap.policy.models.sim.pdp.exception.PdpSimulatorException;
+import org.onap.policy.models.sim.pdp.exception.PdpSimulatorRunTimeException;
 import org.onap.policy.models.sim.pdp.parameters.PdpSimulatorParameterGroup;
 import org.onap.policy.models.sim.pdp.parameters.PdpSimulatorParameterHandler;
 import org.slf4j.Logger;
@@ -44,7 +44,8 @@ public class PdpSimulatorMain {
     private static final Logger LOGGER = LoggerFactory.getLogger(PdpSimulatorMain.class);
 
     private PdpSimulatorActivator activator;
-    private PdpSimulatorParameterGroup parameterGroup;
+    @Getter
+    private PdpSimulatorParameterGroup parameters;
 
     /**
      * Instantiates the PdpSimulator.
@@ -52,10 +53,12 @@ public class PdpSimulatorMain {
      * @param args the command line arguments
      */
     public PdpSimulatorMain(final String[] args) {
-        LOGGER.info("In PdpSimulator with parameters ", Arrays.toString(args));
+        if (LOGGER.isInfoEnabled()) {
+            LOGGER.info("In PdpSimulator with parameters {}", Arrays.toString(args));
+        }
 
         // Check the arguments
-        final PdpSimulatorCommandLineArguments arguments = new PdpSimulatorCommandLineArguments();
+        final var arguments = new PdpSimulatorCommandLineArguments();
         try {
             // The arguments return a string if there is a message to print and we should exit
             final String argumentMessage = arguments.parse(args);
@@ -65,33 +68,21 @@ public class PdpSimulatorMain {
             }
             // Validate that the arguments are sane
             arguments.validate();
-        } catch (final PdpSimulatorException e) {
+        } catch (final PdpSimulatorRunTimeException | CommandLineException e) {
             LOGGER.error(PDP_SIMULATOR_FAIL_MSG, e);
             return;
         }
 
         // Read the parameters
         try {
-            parameterGroup = new PdpSimulatorParameterHandler().getParameters(arguments);
-        } catch (final Exception e) {
-            LOGGER.error(PDP_SIMULATOR_FAIL_MSG, e);
-            return;
-        }
-
-        // Read the properties
-        final Properties topicProperties = new Properties();
-        try {
-            final String propFile = arguments.getFullPropertyFilePath();
-            try (FileInputStream stream = new FileInputStream(propFile)) {
-                topicProperties.load(stream);
-            }
+            parameters = new PdpSimulatorParameterHandler().getParameters(arguments);
         } catch (final Exception e) {
             LOGGER.error(PDP_SIMULATOR_FAIL_MSG, e);
             return;
         }
 
         // create the activator
-        activator = new PdpSimulatorActivator(parameterGroup, topicProperties);
+        activator = new PdpSimulatorActivator(parameters);
         Registry.register(PdpSimulatorConstants.REG_PDP_SIMULATOR_ACTIVATOR, activator);
         // Start the activator
         try {
@@ -108,15 +99,6 @@ public class PdpSimulatorMain {
         LOGGER.info("Started PdpSimulator service");
     }
 
-    /**
-     * Get the parameters specified in JSON.
-     *
-     * @return parameterGroup the parameters
-     */
-    public PdpSimulatorParameterGroup getParameters() {
-        return parameterGroup;
-    }
-
 
     /**
      * Shut down Execution.
@@ -125,7 +107,7 @@ public class PdpSimulatorMain {
      */
     public void shutdown() throws PdpSimulatorException {
         // clear the parameterGroup variable
-        parameterGroup = null;
+        parameters = null;
 
         // clear the pdp simulator activator
         if (activator != null && activator.isAlive()) {
@@ -150,18 +132,22 @@ public class PdpSimulatorMain {
                     activator.terminate();
                 }
             } catch (final PdpSimulatorException e) {
-                LOGGER.warn("error occured during shut down of the pdp simulator service", e);
+                LOGGER.warn("error occurred during shut down of the pdp simulator service", e);
             }
         }
     }
 
     /**
-     * The main method.
+     * The main method. Arguments are validated in the constructor thus adding the NOSONAR.
      *
      * @param args the arguments
      *
      */
-    public static void main(final String[] args) {
+    public static void main(final String[] args) { // NOSONAR
+        /*
+         * The arguments are validated by the constructor, thus sonar is disabled.
+         */
+
         new PdpSimulatorMain(args);
     }
 }