From 763a2328d939c1d400fd1c9595bec5717645914b Mon Sep 17 00:00:00 2001 From: krishnajinka Date: Sun, 5 Aug 2018 18:27:28 +0900 Subject: Fix basic Java issue in pdp drools sys comp Modify pdp drools system component files to fix basic Java warnings from analysis tools. Possibly flagged by Sonar tool as well.Rework based on comments Issue-ID: POLICY-1017 Change-Id: I1f2a5d727d2673cade5f69a07f708e16754c78e4 Signed-off-by: krisjinka --- .../policy/drools/system/PolicyController.java | 21 +- .../drools/system/PolicyControllerFactory.java | 932 ++++++++++----------- .../onap/policy/drools/system/PolicyEngine.java | 147 ++-- .../internal/AggregatedPolicyController.java | 30 +- 4 files changed, 556 insertions(+), 574 deletions(-) (limited to 'policy-management/src/main') diff --git a/policy-management/src/main/java/org/onap/policy/drools/system/PolicyController.java b/policy-management/src/main/java/org/onap/policy/drools/system/PolicyController.java index 9e01634b..dcd4d11a 100644 --- a/policy-management/src/main/java/org/onap/policy/drools/system/PolicyController.java +++ b/policy-management/src/main/java/org/onap/policy/drools/system/PolicyController.java @@ -43,27 +43,27 @@ public interface PolicyController extends Startable, Lockable { /** * Factory that tracks and manages Policy Controllers */ - public static PolicyControllerFactory factory = new IndexedPolicyControllerFactory(); + static PolicyControllerFactory factory = new IndexedPolicyControllerFactory(); /** * name of this Policy Controller */ - public String getName(); + String getName(); /** * Get the topic readers of interest for this controller */ - public List getTopicSources(); + List getTopicSources(); /** * Get the topic readers of interest for this controller */ - public List getTopicSinks(); + List getTopicSinks(); /** * Get the Drools Controller */ - public DroolsController getDrools(); + DroolsController getDrools(); /** * update maven configuration @@ -71,17 +71,18 @@ public interface PolicyController extends Startable, Lockable { * @param newDroolsConfiguration new drools configuration * @return true if the update was successful, false otherwise */ - public boolean updateDrools(DroolsConfiguration newDroolsConfiguration); + boolean updateDrools(DroolsConfiguration newDroolsConfiguration); /** * Get the Properties */ - public Properties getProperties(); + Properties getProperties(); /** * Attempts delivering of an String over communication infrastructure "busType" * - * @param eventBus Communication infrastructure identifier + * @param event Communication infrastructure identifier + * @param busType * @param topic topic * @param event the event object to send * @@ -92,13 +93,13 @@ public interface PolicyController extends Startable, Lockable { * @throws UnsupportedOperationException when the engine cannot deliver due to the functionality * missing (ie. communication infrastructure not supported. */ - public boolean deliver(CommInfrastructure busType, String topic, Object event); + boolean deliver(CommInfrastructure busType, String topic, Object event); /** * halts and permanently releases all resources * * @throws IllegalStateException */ - public void halt(); + void halt(); } diff --git a/policy-management/src/main/java/org/onap/policy/drools/system/PolicyControllerFactory.java b/policy-management/src/main/java/org/onap/policy/drools/system/PolicyControllerFactory.java index c5787dda..e2af0fbc 100644 --- a/policy-management/src/main/java/org/onap/policy/drools/system/PolicyControllerFactory.java +++ b/policy-management/src/main/java/org/onap/policy/drools/system/PolicyControllerFactory.java @@ -39,477 +39,475 @@ import com.fasterxml.jackson.annotation.JsonIgnore; * and retrieval for management interfaces */ public interface PolicyControllerFactory { - /** - * Build a controller from a properties file - * - * @param name the global name of this controller - * @param properties input parameters in form of properties for controller - * initialization. - * - * @return a Policy Controller - * - * @throws IllegalArgumentException invalid values provided in properties - */ - public PolicyController build(String name, Properties properties); - - /** - * patches (updates) a controller from a critical configuration update. - * - * @param name - * @param configController - * - * @return a Policy Controller - */ - public PolicyController patch(String name, DroolsConfiguration configController); - - /** - * rebuilds (updates) a controller from a configuration update. - * - * @param controller - * @param configController - * - * @return a Policy Controller - */ - public PolicyController patch(PolicyController controller, - DroolsConfiguration configController); - - /** - * get PolicyController from DroolsController - * - * @param droolsController - * @return - * @throws IllegalArgumentException - * @throws IllegalStateException - */ - public PolicyController get(DroolsController droolsController); - - /** - * Makes the Policy Controller identified by controllerName not operational, but - * does not delete its associated data - * - * @param controllerName name of the policy controller - * @throws IllegalArgumentException invalid arguments - */ - public void shutdown(String controllerName); - - /** - * Makes the Policy Controller identified by controller not operational, but - * does not delete its associated data - * - * @param controller a Policy Controller - * @throws IllegalArgumentException invalid arguments - */ - public void shutdown(PolicyController controller); - - /** - * Releases all Policy Controllers from operation - */ - public void shutdown(); - - /** - * Destroys this Policy Controller - * - * @param controllerName name of the policy controller - * @throws IllegalArgumentException invalid arguments - */ - public void destroy(String controllerName); - - /** - * Destroys this Policy Controller - * - * @param controller a Policy Controller - * @throws IllegalArgumentException invalid arguments - */ - public void destroy(PolicyController controller); - - /** - * Releases all Policy Controller resources - */ - public void destroy(); - - /** - * gets the Policy Controller identified by its name - * - * @param policyControllerName - * @return - * @throws IllegalArgumentException - * @throws IllegalStateException - */ - public PolicyController get(String policyControllerName); - - /** - * gets the Policy Controller identified by group and artifact ids - * - * @param groupId group id - * @param artifactId artifact id - * @return - * @throws IllegalArgumentException - * @throws IllegalStateException - */ - public PolicyController get(String groupId, String artifactId); - - /** - * get features attached to the Policy Controllers - * @return list of features - */ - public List getFeatureProviders(); - - /** - * get named feature attached to the Policy Controllers - * @return the feature - */ - public PolicyControllerFeatureAPI getFeatureProvider(String featureName); - - /** - * get features attached to the Policy Controllers - * @return list of features - */ - public List getFeatures(); - - /** - * returns the current inventory of Policy Controllers - * - * @return a list of Policy Controllers - */ - public List inventory(); + /** + * Build a controller from a properties file + * + * @param name the global name of this controller + * @param properties input parameters in form of properties for controller + * initialization. + * + * @return a Policy Controller + * + * @throws IllegalArgumentException invalid values provided in properties + */ + PolicyController build(String name, Properties properties); + + /** + * patches (updates) a controller from a critical configuration update. + * + * @param name + * @param configController + * + * @return a Policy Controller + */ + PolicyController patch(String name, DroolsConfiguration configController); + + /** + * rebuilds (updates) a controller from a configuration update. + * + * @param controller + * @param configController + * + * @return a Policy Controller + */ + void patch(PolicyController controller, + DroolsConfiguration configController); + + /** + * get PolicyController from DroolsController + * + * @param droolsController + * @return + * @throws IllegalArgumentException + * @throws IllegalStateException + */ + PolicyController get(DroolsController droolsController); + + /** + * Makes the Policy Controller identified by controllerName not operational, but + * does not delete its associated data + * + * @param controllerName name of the policy controller + * @throws IllegalArgumentException invalid arguments + */ + void shutdown(String controllerName); + + /** + * Makes the Policy Controller identified by controller not operational, but + * does not delete its associated data + * + * @param controller a Policy Controller + * @throws IllegalArgumentException invalid arguments + */ + void shutdown(PolicyController controller); + + /** + * Releases all Policy Controllers from operation + */ + void shutdown(); + + /** + * Destroys this Policy Controller + * + * @param controllerName name of the policy controller + * @throws IllegalArgumentException invalid arguments + */ + void destroy(String controllerName); + + /** + * Destroys this Policy Controller + * + * @param controller a Policy Controller + * @throws IllegalArgumentException invalid arguments + */ + void destroy(PolicyController controller); + + /** + * Releases all Policy Controller resources + */ + void destroy(); + + /** + * gets the Policy Controller identified by its name + * + * @param policyControllerName + * @return + * @throws IllegalArgumentException + * @throws IllegalStateException + */ + PolicyController get(String policyControllerName); + + /** + * gets the Policy Controller identified by group and artifact ids + * + * @param groupId group id + * @param artifactId artifact id + * @return + * @throws IllegalArgumentException + * @throws IllegalStateException + */ + PolicyController get(String groupId, String artifactId); + + /** + * get features attached to the Policy Controllers + * @return list of features + */ + List getFeatureProviders(); + + /** + * get named feature attached to the Policy Controllers + * @return the feature + */ + PolicyControllerFeatureAPI getFeatureProvider(String featureName); + + /** + * get features attached to the Policy Controllers + * @return list of features + */ + List getFeatures(); + + /** + * returns the current inventory of Policy Controllers + * + * @return a list of Policy Controllers + */ + List inventory(); } /** * Factory of Policy Controllers indexed by the name of the Policy Controller */ class IndexedPolicyControllerFactory implements PolicyControllerFactory { - // get an instance of logger - private static Logger logger = LoggerFactory.getLogger(PolicyControllerFactory.class); - - /** - * Policy Controller Name Index - */ - protected HashMap policyControllers = - new HashMap<>(); - - /** - * Group/Artifact Ids Index - */ - protected HashMap coordinates2Controller = - new HashMap<>(); - - /** - * produces key for indexing controller names - * - * @param group group id - * @param artifactId artifact id - * @return index key - */ - protected String toKey(String groupId, String artifactId) { - return groupId + ":" + artifactId; - } - - /** - * {@inheritDoc} - */ - @Override - public synchronized PolicyController build(String name, Properties properties) { - - if (this.policyControllers.containsKey(name)) { - return this.policyControllers.get(name); - } - - /* A PolicyController does not exist */ - - PolicyController controller = - new AggregatedPolicyController(name, properties); - - String coordinates = toKey(controller.getDrools().getGroupId(), - controller.getDrools().getArtifactId()); - - this.policyControllers.put(name, controller); - - - if (controller.getDrools().isBrained()) - this.coordinates2Controller.put(coordinates, controller); - - return controller; - } - - /** - * {@inheritDoc} - */ - @Override - public synchronized PolicyController patch(String name, DroolsConfiguration droolsConfig) { - - if (name == null || name.isEmpty() || !this.policyControllers.containsKey(name)) { - throw makeArgEx(name); - } - - if (droolsConfig == null) - throw new IllegalArgumentException("Invalid Drools Configuration"); - - PolicyController controller = this.get(name); - - if (controller == null) { - logger.warn("A POLICY CONTROLLER of name " + name + - "does not exist for patch operation: " + droolsConfig); - - throw new IllegalArgumentException("Not a valid controller of name " + name); - } - - this.patch(controller, droolsConfig); - - if (logger.isInfoEnabled()) - logger.info("UPDATED drools configuration: " + droolsConfig + " on " + this); - - return controller; - } - - - /** - * {@inheritDoc} - */ - @Override - public PolicyController patch(PolicyController controller, DroolsConfiguration droolsConfig) { - - if (controller == null) - throw new IllegalArgumentException("Not a valid controller: null"); - - if (!controller.updateDrools(droolsConfig)) { - logger.warn("Cannot update drools configuration: " + droolsConfig + " on " + this); - throw new IllegalArgumentException("Cannot update drools configuration Drools Configuration"); - } - - if (logger.isInfoEnabled()) - logger.info("UPDATED drools configuration: " + droolsConfig + " on " + this); - - String coordinates = toKey(controller.getDrools().getGroupId(), - controller.getDrools().getArtifactId()); - - if (controller.getDrools().isBrained()) - this.coordinates2Controller.put(coordinates, controller); - - return controller; - } - - /** - * {@inheritDoc} - */ - @Override - public void shutdown(String controllerName) { - - if (controllerName == null || controllerName.isEmpty()) { - throw makeArgEx(controllerName); - } - - synchronized(this) { - if (!this.policyControllers.containsKey(controllerName)) { - return; - } - - PolicyController controller = this.policyControllers.get(controllerName); - this.shutdown(controller); - } - } - - /** - * {@inheritDoc} - */ - @Override - public void shutdown(PolicyController controller) { - this.unmanage(controller); - controller.shutdown(); - } - - /** - * {@inheritDoc} - */ - @Override - public void shutdown() { - List controllers = this.inventory(); - for (PolicyController controller: controllers) { - controller.shutdown(); - } - - synchronized(this) { - this.policyControllers.clear(); - this.coordinates2Controller.clear(); - } - } - - /** - * unmanage the controller - * - * @param controller - * @return - * @throws IllegalArgumentException - */ - protected void unmanage(PolicyController controller) { - PolicyController tempController = controller; - if (tempController == null) { - throw new IllegalArgumentException("Invalid Controller"); - } - - synchronized(this) { - if (!this.policyControllers.containsKey(tempController.getName())) { - return; - } - tempController = this.policyControllers.remove(tempController.getName()); - - String coordinates = toKey(tempController.getDrools().getGroupId(), - tempController.getDrools().getArtifactId()); - this.coordinates2Controller.remove(coordinates); - } - } - - /** - * {@inheritDoc} - */ - @Override - public void destroy(String controllerName) { - - if (controllerName == null || controllerName.isEmpty()) { - throw makeArgEx(controllerName); - } - - synchronized(this) { - if (!this.policyControllers.containsKey(controllerName)) { - return; - } - - PolicyController controller = this.policyControllers.get(controllerName); - this.destroy(controller); - } - } - - /** - * {@inheritDoc} - */ - @Override - public void destroy(PolicyController controller) { - this.unmanage(controller); - controller.halt(); - } - - /** - * {@inheritDoc} - */ - @Override - public void destroy() { - List controllers = this.inventory(); - for (PolicyController controller: controllers) { - controller.halt(); - } - - synchronized(this) { - this.policyControllers.clear(); - this.coordinates2Controller.clear(); - } - } - - /** - * {@inheritDoc} - */ - @Override - public PolicyController get(String name) { - - if (name == null || name.isEmpty()) { - throw makeArgEx(name); - } - - synchronized(this) { - if (this.policyControllers.containsKey(name)) { - return this.policyControllers.get(name); - } else { - throw makeArgEx(name); - } - } - } - - /** - * {@inheritDoc} - */ - @Override - public PolicyController get(String groupId, String artifactId) { - - if (groupId == null || groupId.isEmpty() || - artifactId == null || artifactId.isEmpty()) { - throw new IllegalArgumentException("Invalid group/artifact ids"); - } - - synchronized(this) { - String key = toKey(groupId,artifactId); - if (this.coordinates2Controller.containsKey(key)) { - return this.coordinates2Controller.get(key); - } else { - throw makeArgEx(key); - } - } - } - - /** - * {@inheritDoc} - */ - @Override - public PolicyController get(DroolsController droolsController) { - - if (droolsController == null) { - throw new IllegalArgumentException("No Drools Controller provided"); - } - - synchronized(this) { - String key = toKey(droolsController.getGroupId(), droolsController.getArtifactId()); - if (this.coordinates2Controller.containsKey(key)) { - return this.coordinates2Controller.get(key); - } else { - logger.error("Drools Controller not associated with Policy Controller " + droolsController + ":" + this); - throw new IllegalStateException("Drools Controller not associated with Policy Controller " + droolsController + ":" + this); - } - } - } - - /** - * {@inheritDoc} - */ - @Override - public List inventory() { - return new ArrayList<>(this.policyControllers.values()); - } - - /** - * {@inheritDoc} - */ - @Override - public List getFeatures() { - List features = new ArrayList<>(); - for (PolicyControllerFeatureAPI feature : PolicyControllerFeatureAPI.providers.getList()) { - features.add(feature.getName()); - } - return features; - } - - /** - * {@inheritDoc} - */ - @JsonIgnore - @Override - public List getFeatureProviders() { - return PolicyControllerFeatureAPI.providers.getList(); - } - - /** - * {@inheritDoc} - */ - @Override - public PolicyControllerFeatureAPI getFeatureProvider(String featureName) { - if (featureName == null || featureName.isEmpty()) - throw new IllegalArgumentException("A feature name must be provided"); - - for (PolicyControllerFeatureAPI feature : PolicyControllerFeatureAPI.providers.getList()) { - if (feature.getName().equals(featureName)) - return feature; - } - - throw new IllegalArgumentException("Invalid Feature Name: " + featureName); - } - - private IllegalArgumentException makeArgEx(String argName) { - return new IllegalArgumentException("Invalid " + argName); - } + // get an instance of logger + private static final Logger logger = LoggerFactory.getLogger(PolicyControllerFactory.class); + + /** + * Policy Controller Name Index + */ + private final HashMap policyControllers = + new HashMap<>(); + + /** + * Group/Artifact Ids Index + */ + private final HashMap coordinates2Controller = + new HashMap<>(); + + /** + * produces key for indexing controller names + * + * @param groupId group id + * @param artifactId artifact id + * @return index key + */ + private String toKey(String groupId, String artifactId) { + return groupId + ":" + artifactId; + } + + /** + * {@inheritDoc} + */ + @Override + public synchronized PolicyController build(String name, Properties properties) { + + if (this.policyControllers.containsKey(name)) { + return this.policyControllers.get(name); + } + + /* A PolicyController does not exist */ + + PolicyController controller = + new AggregatedPolicyController(name, properties); + + String coordinates = toKey(controller.getDrools().getGroupId(), + controller.getDrools().getArtifactId()); + + this.policyControllers.put(name, controller); + + + if (controller.getDrools().isBrained()) + this.coordinates2Controller.put(coordinates, controller); + + return controller; + } + + /** + * {@inheritDoc} + */ + @Override + public synchronized PolicyController patch(String name, DroolsConfiguration droolsConfig) { + + if (name == null || name.isEmpty() || !this.policyControllers.containsKey(name)) { + throw makeArgEx(name); + } + + if (droolsConfig == null) + throw new IllegalArgumentException("Invalid Drools Configuration"); + + PolicyController controller = this.get(name); + + if (controller == null) { + logger.warn("A POLICY CONTROLLER of name " + name + + "does not exist for patch operation: " + droolsConfig); + + throw new IllegalArgumentException("Not a valid controller of name " + name); + } + + this.patch(controller, droolsConfig); + + if (logger.isInfoEnabled()) + logger.info("UPDATED drools configuration: " + droolsConfig + " on " + this); + + return controller; + } + + + /** + * {@inheritDoc} + */ + @Override + public void patch(PolicyController controller, DroolsConfiguration droolsConfig) { + + if (controller == null) + throw new IllegalArgumentException("Not a valid controller: null"); + + if (!controller.updateDrools(droolsConfig)) { + logger.warn("Cannot update drools configuration: " + droolsConfig + " on " + this); + throw new IllegalArgumentException("Cannot update drools configuration Drools Configuration"); + } + + if (logger.isInfoEnabled()) + logger.info("UPDATED drools configuration: " + droolsConfig + " on " + this); + + String coordinates = toKey(controller.getDrools().getGroupId(), + controller.getDrools().getArtifactId()); + + if (controller.getDrools().isBrained()) + this.coordinates2Controller.put(coordinates, controller); + + } + + /** + * {@inheritDoc} + */ + @Override + public void shutdown(String controllerName) { + + if (controllerName == null || controllerName.isEmpty()) { + throw makeArgEx(controllerName); + } + + synchronized(this) { + if (!this.policyControllers.containsKey(controllerName)) { + return; + } + + PolicyController controller = this.policyControllers.get(controllerName); + this.shutdown(controller); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void shutdown(PolicyController controller) { + this.unmanage(controller); + controller.shutdown(); + } + + /** + * {@inheritDoc} + */ + @Override + public void shutdown() { + List controllers = this.inventory(); + for (PolicyController controller: controllers) { + controller.shutdown(); + } + + synchronized(this) { + this.policyControllers.clear(); + this.coordinates2Controller.clear(); + } + } + + /** + * unmanage the controller + * + * @param controller + * @throws IllegalArgumentException + */ + private void unmanage(PolicyController controller) { + PolicyController tempController = controller; + if (tempController == null) { + throw new IllegalArgumentException("Invalid Controller"); + } + + synchronized(this) { + if (!this.policyControllers.containsKey(tempController.getName())) { + return; + } + tempController = this.policyControllers.remove(tempController.getName()); + + String coordinates = toKey(tempController.getDrools().getGroupId(), + tempController.getDrools().getArtifactId()); + this.coordinates2Controller.remove(coordinates); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void destroy(String controllerName) { + + if (controllerName == null || controllerName.isEmpty()) { + throw makeArgEx(controllerName); + } + + synchronized(this) { + if (!this.policyControllers.containsKey(controllerName)) { + return; + } + + PolicyController controller = this.policyControllers.get(controllerName); + this.destroy(controller); + } + } + + /** + * {@inheritDoc} + */ + @Override + public void destroy(PolicyController controller) { + this.unmanage(controller); + controller.halt(); + } + + /** + * {@inheritDoc} + */ + @Override + public void destroy() { + List controllers = this.inventory(); + for (PolicyController controller: controllers) { + controller.halt(); + } + + synchronized(this) { + this.policyControllers.clear(); + this.coordinates2Controller.clear(); + } + } + + /** + * {@inheritDoc} + */ + @Override + public PolicyController get(String name) { + + if (name == null || name.isEmpty()) { + throw makeArgEx(name); + } + + synchronized(this) { + if (this.policyControllers.containsKey(name)) { + return this.policyControllers.get(name); + } else { + throw makeArgEx(name); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + public PolicyController get(String groupId, String artifactId) { + + if (groupId == null || groupId.isEmpty() || + artifactId == null || artifactId.isEmpty()) { + throw new IllegalArgumentException("Invalid group/artifact ids"); + } + + synchronized(this) { + String key = toKey(groupId,artifactId); + if (this.coordinates2Controller.containsKey(key)) { + return this.coordinates2Controller.get(key); + } else { + throw makeArgEx(key); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + public PolicyController get(DroolsController droolsController) { + + if (droolsController == null) { + throw new IllegalArgumentException("No Drools Controller provided"); + } + + synchronized(this) { + String key = toKey(droolsController.getGroupId(), droolsController.getArtifactId()); + if (this.coordinates2Controller.containsKey(key)) { + return this.coordinates2Controller.get(key); + } else { + logger.error("Drools Controller not associated with Policy Controller " + droolsController + ":" + this); + throw new IllegalStateException("Drools Controller not associated with Policy Controller " + droolsController + ":" + this); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + public List inventory() { + return new ArrayList<>(this.policyControllers.values()); + } + + /** + * {@inheritDoc} + */ + @Override + public List getFeatures() { + List features = new ArrayList<>(); + for (PolicyControllerFeatureAPI feature : PolicyControllerFeatureAPI.providers.getList()) { + features.add(feature.getName()); + } + return features; + } + + /** + * {@inheritDoc} + */ + @JsonIgnore + @Override + public List getFeatureProviders() { + return PolicyControllerFeatureAPI.providers.getList(); + } + + /** + * {@inheritDoc} + */ + @Override + public PolicyControllerFeatureAPI getFeatureProvider(String featureName) { + if (featureName == null || featureName.isEmpty()) + throw new IllegalArgumentException("A feature name must be provided"); + + for (PolicyControllerFeatureAPI feature : PolicyControllerFeatureAPI.providers.getList()) { + if (feature.getName().equals(featureName)) + return feature; + } + + throw new IllegalArgumentException("Invalid Feature Name: " + featureName); + } + + private IllegalArgumentException makeArgEx(String argName) { + return new IllegalArgumentException("Invalid " + argName); + } } diff --git a/policy-management/src/main/java/org/onap/policy/drools/system/PolicyEngine.java b/policy-management/src/main/java/org/onap/policy/drools/system/PolicyEngine.java index 4be85022..5b8cb2f0 100644 --- a/policy-management/src/main/java/org/onap/policy/drools/system/PolicyEngine.java +++ b/policy-management/src/main/java/org/onap/policy/drools/system/PolicyEngine.java @@ -71,29 +71,29 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { /** * Policy Engine Manager */ - public static final PolicyEngine manager = new PolicyEngineManager(); + PolicyEngine manager = new PolicyEngineManager(); /** * Default Telemetry Server Port */ - public static final int TELEMETRY_SERVER_DEFAULT_PORT = 9696; + int TELEMETRY_SERVER_DEFAULT_PORT = 9696; /** * Default Telemetry Server Hostname */ - public static final String TELEMETRY_SERVER_DEFAULT_HOST = "localhost"; + String TELEMETRY_SERVER_DEFAULT_HOST = "localhost"; /** * Default Telemetry Server Name */ - public static final String TELEMETRY_SERVER_DEFAULT_NAME = "TELEMETRY"; + String TELEMETRY_SERVER_DEFAULT_NAME = "TELEMETRY"; /** * Boot the engine * * @param cliArgs command line arguments */ - public void boot(String[] cliArgs); + void boot(String[] cliArgs); /** * configure the policy engine according to the given properties @@ -101,7 +101,7 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { * @param properties Policy Engine properties * @throws IllegalArgumentException when invalid or insufficient properties are provided */ - public void configure(Properties properties); + void configure(Properties properties); /** * configure the engine's environment. General lab installation configuration is made available @@ -111,14 +111,14 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { * * @param properties an environment properties */ - public void setEnvironment(Properties properties); + void setEnvironment(Properties properties); /** * gets the engine's environment * * @return */ - public Properties getEnvironment(); + Properties getEnvironment(); /** * gets an environment's value, by 1) first from the engine's environment, and 2) from the OS @@ -127,7 +127,7 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { * @param key environment key * @return environment value or null if absent */ - public String getEnvironmentProperty(String key); + String getEnvironmentProperty(String key); /** * sets an engine's environment property @@ -136,18 +136,18 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { * @param value * @return */ - public String setEnvironmentProperty(String key, String value); + String setEnvironmentProperty(String key, String value); /** * registers a new Policy Controller with the Policy Engine initialized per properties. * * @param properties properties to initialize the Policy Controller - * @throws IllegalArgumentException when invalid or insufficient properties are provided - * @throws IllegalStateException when the engine is in a state where this operation is not - * permitted. * @return the newly instantiated Policy Controller + * @throws IllegalArgumentException when invalid or insufficient properties are provided + * @throws IllegalStateException when the engine is in a state where this operation is not + * permitted. */ - public PolicyController createPolicyController(String name, Properties properties); + PolicyController createPolicyController(String name, Properties properties); /** * updates the Policy Engine with the given configuration @@ -155,9 +155,9 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { * @param configuration the configuration * @return success or failure * @throws IllegalArgumentException if invalid argument provided - * @throws IllegalStateException if the system is in an invalid state + * @throws IllegalStateException if the system is in an invalid state */ - public boolean configure(PdpdConfiguration configuration); + boolean configure(PdpdConfiguration configuration); /** * updates a set of Policy Controllers with configuration information @@ -167,19 +167,18 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { * @throws IllegalArgumentException * @throws IllegalStateException */ - public List updatePolicyControllers(List configuration); + List updatePolicyControllers(List configuration); /** * updates an already existing Policy Controller with configuration information * * @param configuration configuration - * * @return the updated Policy Controller * @throws IllegalArgumentException in the configuration is invalid - * @throws IllegalStateException if the controller is in a bad state - * @throws Exception any other reason + * @throws IllegalStateException if the controller is in a bad state + * @throws Exception any other reason */ - public PolicyController updatePolicyController(ControllerConfiguration configuration); + PolicyController updatePolicyController(ControllerConfiguration configuration); /** * removes the Policy Controller identified by its name from the Policy Engine @@ -187,21 +186,21 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { * @param name name of the Policy Controller * @return the removed Policy Controller */ - public void removePolicyController(String name); + void removePolicyController(String name); /** * removes a Policy Controller from the Policy Engine * * @param controller the Policy Controller to remove from the Policy Engine */ - public void removePolicyController(PolicyController controller); + void removePolicyController(PolicyController controller); /** * returns a list of the available Policy Controllers * * @return list of Policy Controllers */ - public List getPolicyControllers(); + List getPolicyControllers(); /** @@ -209,131 +208,127 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener { * * @return list of controller names */ - public List getPolicyControllerIds(); + List getPolicyControllerIds(); /** * get unmanaged sources * * @return unmanaged sources */ - public List getSources(); + List getSources(); /** * get unmanaged sinks * * @return unmanaged sinks */ - public List getSinks(); + List getSinks(); /** * get unmmanaged http servers list * * @return http servers */ - public List getHttpServers(); + List getHttpServers(); /** * get properties configuration * * @return properties objects */ - public Properties getProperties(); + Properties getProperties(); /** * get features attached to the Policy Engine * * @return list of features */ - public List getFeatureProviders(); + List getFeatureProviders(); /** * get named feature attached to the Policy Engine * * @return the feature */ - public PolicyEngineFeatureAPI getFeatureProvider(String featureName); + PolicyEngineFeatureAPI getFeatureProvider(String featureName); /** * get features attached to the Policy Engine * * @return list of features */ - public List getFeatures(); + List getFeatures(); /** * Attempts the dispatching of an "event" object * * @param topic topic * @param event the event object to send - * * @return true if successful, false if a failure has occurred. * @throws IllegalArgumentException when invalid or insufficient properties are provided - * @throws IllegalStateException when the engine is in a state where this operation is not - * permitted (ie. locked or stopped). + * @throws IllegalStateException when the engine is in a state where this operation is not + * permitted (ie. locked or stopped). */ - public boolean deliver(String topic, Object event); + boolean deliver(String topic, Object event); /** * Attempts the dispatching of an "event" object over communication infrastructure "busType" * * @param topic topic * @param event the event object to send - * * @return true if successful, false if a failure has occurred. - * @throws IllegalArgumentException when invalid or insufficient properties are provided - * @throws IllegalStateException when the engine is in a state where this operation is not - * permitted (ie. locked or stopped). + * @throws IllegalArgumentException when invalid or insufficient properties are provided + * @throws IllegalStateException when the engine is in a state where this operation is not + * permitted (ie. locked or stopped). * @throws UnsupportedOperationException when the engine cannot deliver due to the functionality - * missing (ie. communication infrastructure not supported. + * missing (ie. communication infrastructure not supported. */ - public boolean deliver(String busType, String topic, Object event); + boolean deliver(String busType, String topic, Object event); /** * Attempts the dispatching of an "event" object over communication infrastructure "busType" * * @param topic topic * @param event the event object to send - * * @return true if successful, false if a failure has occurred. - * @throws IllegalArgumentException when invalid or insufficient properties are provided - * @throws IllegalStateException when the engine is in a state where this operation is not - * permitted (ie. locked or stopped). + * @throws IllegalArgumentException when invalid or insufficient properties are provided + * @throws IllegalStateException when the engine is in a state where this operation is not + * permitted (ie. locked or stopped). * @throws UnsupportedOperationException when the engine cannot deliver due to the functionality - * missing (ie. communication infrastructure not supported. + * missing (ie. communication infrastructure not supported. */ - public boolean deliver(CommInfrastructure busType, String topic, Object event); + boolean deliver(CommInfrastructure busType, String topic, Object event); /** * Attempts delivering of an String over communication infrastructure "busType" * * @param topic topic * @param event the event object to send - * * @return true if successful, false if a failure has occurred. - * @throws IllegalArgumentException when invalid or insufficient properties are provided - * @throws IllegalStateException when the engine is in a state where this operation is not - * permitted (ie. locked or stopped). + * @throws IllegalArgumentException when invalid or insufficient properties are provided + * @throws IllegalStateException when the engine is in a state where this operation is not + * permitted (ie. locked or stopped). * @throws UnsupportedOperationException when the engine cannot deliver due to the functionality - * missing (ie. communication infrastructure not supported. + * missing (ie. communication infrastructure not supported. */ - public boolean deliver(CommInfrastructure busType, String topic, String event); + boolean deliver(CommInfrastructure busType, String topic, String event); /** * Invoked when the host goes into the active state. */ - public void activate(); + void activate(); /** * Invoked when the host goes into the standby state. */ - public void deactivate(); + void deactivate(); /** * produces a default telemetry configuration * * @return policy engine configuration */ - public Properties defaultTelemetryConfig(); + Properties defaultTelemetryConfig(); } @@ -357,42 +352,42 @@ class PolicyEngineManager implements PolicyEngine { /** * Is the Policy Engine running? */ - protected volatile boolean alive = false; + private volatile boolean alive = false; /** * Is the engine locked? */ - protected volatile boolean locked = false; + private volatile boolean locked = false; /** * Properties used to initialize the engine */ - protected Properties properties; + private Properties properties; /** * Environment Properties */ - protected final Properties environment = new Properties(); + private final Properties environment = new Properties(); /** * Policy Engine Sources */ - protected List sources = new ArrayList<>(); + private List sources = new ArrayList<>(); /** * Policy Engine Sinks */ - protected List sinks = new ArrayList<>(); + private List sinks = new ArrayList<>(); /** * Policy Engine HTTP Servers */ - protected List httpServers = new ArrayList<>(); + private List httpServers = new ArrayList<>(); /** * gson parser to decode configuration requests */ - protected final Gson decoder = new GsonBuilder().disableHtmlEscaping().create(); + private final Gson decoder = new GsonBuilder().disableHtmlEscaping().create(); @Override @@ -529,8 +524,6 @@ class PolicyEngineManager implements PolicyEngine { e.getMessage(), e); } } - - return; } @Override @@ -1473,7 +1466,7 @@ class PolicyEngineManager implements PolicyEngine { } } - public boolean controllerConfig(PdpdConfiguration config) { + private boolean controllerConfig(PdpdConfiguration config) { /* only this one supported for now */ final List configControllers = config.getControllers(); if (configControllers == null || configControllers.isEmpty()) { @@ -1482,26 +1475,18 @@ class PolicyEngineManager implements PolicyEngine { } final List policyControllers = this.updatePolicyControllers(config.getControllers()); - - boolean success; - - if (policyControllers == null || policyControllers.isEmpty()) { - success = false; - } else if (policyControllers.size() == configControllers.size()) { + boolean success = false; + if (!(policyControllers == null || policyControllers.isEmpty()) + && (policyControllers.size() == configControllers.size())) { success = true; - } else { - success = false; } - return success; } @Override public String toString() { - final StringBuilder builder = new StringBuilder(); - builder.append("PolicyEngineManager [alive=").append(this.alive).append(", locked=").append(this.locked) - .append("]"); - return builder.toString(); + return "PolicyEngineManager [alive=" + this.alive + ", locked=" + this.locked + + "]"; } } diff --git a/policy-management/src/main/java/org/onap/policy/drools/system/internal/AggregatedPolicyController.java b/policy-management/src/main/java/org/onap/policy/drools/system/internal/AggregatedPolicyController.java index 5172fc3d..0b6643f8 100644 --- a/policy-management/src/main/java/org/onap/policy/drools/system/internal/AggregatedPolicyController.java +++ b/policy-management/src/main/java/org/onap/policy/drools/system/internal/AggregatedPolicyController.java @@ -49,50 +49,50 @@ public class AggregatedPolicyController implements PolicyController, TopicListen /** * Logger */ - private static Logger logger = LoggerFactory.getLogger(AggregatedPolicyController.class); + private static final Logger logger = LoggerFactory.getLogger(AggregatedPolicyController.class); /** * identifier for this policy controller */ - protected final String name; + private final String name; /** * Abstracted Event Sources List regardless communication technology */ - protected final List sources; + private final List sources; /** * Abstracted Event Sinks List regardless communication technology */ - protected final List sinks; + private final List sinks; /** * Mapping topics to sinks */ @JsonIgnore - protected final HashMap topic2Sinks = new HashMap<>(); + private final HashMap topic2Sinks = new HashMap<>(); /** * Is this Policy Controller running (alive) ? reflects invocation of start()/stop() only */ - protected volatile boolean alive; + private volatile boolean alive; /** * Is this Policy Controller locked ? reflects if i/o controller related operations and start * are permitted, more specifically: start(), deliver() and onTopicEvent(). It does not affect * the ability to stop the underlying drools infrastructure */ - protected volatile boolean locked; + private volatile boolean locked; /** * Policy Drools Controller */ - protected volatile DroolsController droolsController; + private volatile DroolsController droolsController; /** * Properties used to initialize controller */ - protected final Properties properties; + private final Properties properties; /** * Constructor version mainly used for bootstrapping at initialization time a policy engine @@ -131,7 +131,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen * * @throws IllegalArgumentException if invalid parameters are passed in */ - protected void initDrools(Properties properties) { + private void initDrools(Properties properties) { try { // Register with drools infrastructure this.droolsController = DroolsController.factory.build(properties, sources, sinks); @@ -146,7 +146,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen * * @throws IllegalArgumentException if invalid parameters are passed in */ - protected void initSinks() { + private void initSinks() { this.topic2Sinks.clear(); for (TopicSink sink : sinks) { this.topic2Sinks.put(sink.getTopic(), sink); @@ -474,7 +474,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen if (!this.topic2Sinks.containsKey(topic)) { logger.warn("{}: cannot deliver event because the sink {}:{} is not registered: {}", this, commType, topic, event); - throw new IllegalArgumentException("Unsuported topic " + topic + " for delivery"); + throw new IllegalArgumentException("Unsupported topic " + topic + " for delivery"); } boolean success = this.droolsController.deliver(this.topic2Sinks.get(topic), event); @@ -633,10 +633,8 @@ public class AggregatedPolicyController implements PolicyController, TopicListen @Override public String toString() { - StringBuilder builder = new StringBuilder(); - builder.append("AggregatedPolicyController [name=").append(name).append(", alive=").append(alive) - .append(", locked=").append(locked).append(", droolsController=").append(droolsController).append("]"); - return builder.toString(); + return "AggregatedPolicyController [name=" + name + ", alive=" + alive + + ", locked=" + locked + ", droolsController=" + droolsController + "]"; } } -- cgit 1.2.3-korg