/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * Modifications Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * 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;
private static final Logger LOGGER = LoggerFactory.getLogger(PdpSimulatorMain.class);
private PdpSimulatorActivator activator;
- private PdpSimulatorParameterGroup parameterGroup;
+ @Getter
+ private PdpSimulatorParameterGroup parameters;
/**
* Instantiates the PdpSimulator.
}
// 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);
}
// 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 {
LOGGER.info("Started PdpSimulator service");
}
- /**
- * Get the parameters specified in JSON.
- *
- * @return parameterGroup the parameters
- */
- public PdpSimulatorParameterGroup getParameters() {
- return parameterGroup;
- }
-
/**
* Shut down Execution.
*/
public void shutdown() throws PdpSimulatorException {
// clear the parameterGroup variable
- parameterGroup = null;
+ parameters = null;
// clear the pdp simulator activator
if (activator != null && activator.isAlive()) {
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);
}
}