/**
  * Forwards polices.
- * <p>
- * To create a policy forwarder a class implementing this interface must be created, along with a
+ * 
+ * <p>To create a policy forwarder a class implementing this interface must be created, along with a
  * concrete sub class of PolicyForwarderConfigurationParameterGroup to handle configuration
  * parameters for the policy forwarder.
  */
 
     /**
      * Configure the policy forwarder.
-     * <p>
-     * This method will be invoked immediately after instantiation in order for the policy forwarder
+     * 
+     * <p>This method will be invoked immediately after instantiation in order for the policy forwarder
      * to configure itself.
      * 
      * @param parameterGroupName the name of the parameter group which contains the configuration
 
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getName() {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void setName(final String name) {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public GroupValidationResult validate() {
 
     }
 
     private void validateForwarderConfigurations(final GroupValidationResult validationResult) {
-        for (final Entry<String, PolicyForwarderConfigurationParameterGroup> configurationParameters : policyForwarderConfigurationParameters
-                .entrySet()) {
+        for (final Entry<String, PolicyForwarderConfigurationParameterGroup> configurationParameters : 
+                policyForwarderConfigurationParameters.entrySet()) {
             validationResult.setResult("policyForwarderConfigurationParameters", configurationParameters.getKey(),
                     configurationParameters.getValue().validate());
         }
     }
 
     private void validateDecoderConfigurations(final GroupValidationResult validationResult) {
-        for (final Entry<String, PolicyDecoderConfigurationParameterGroup> configurationParameters : policyDecoderConfigurationParameters
-                .entrySet()) {
+        for (final Entry<String, PolicyDecoderConfigurationParameterGroup> configurationParameters :
+                policyDecoderConfigurationParameters.entrySet()) {
             validationResult.setResult("policyDecoderConfigurationParameters", configurationParameters.getKey(),
                     configurationParameters.getValue().validate());
         }
 
 
 /**
  * Base class of all {@link ParameterGroup} classes for configuration parameters for
- * {@link PolicyForwarder} classes
+ * {@link PolicyForwarder} classes.
  */
 public abstract class PolicyForwarderConfigurationParameterGroup implements ParameterGroup {
 
 
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean start() {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean stop() {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void shutdown() {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean isAlive() {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String toString() {
 
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.google.gson.reflect.TypeToken;
-
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-
 import org.onap.policy.common.logging.flexlogger.FlexLogger;
 import org.onap.policy.common.logging.flexlogger.Logger;
 import org.onap.policy.distribution.reception.decoding.PolicyDecodingException;
 import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
 import org.onap.sdc.toscaparser.api.CapabilityAssignment;
 import org.onap.sdc.toscaparser.api.CapabilityAssignments;
-import org.onap.sdc.toscaparser.api.elements.Metadata;
 import org.onap.sdc.toscaparser.api.NodeTemplate;
 import org.onap.sdc.toscaparser.api.RequirementAssignment;
+import org.onap.sdc.toscaparser.api.elements.Metadata;
 
 /**
  * Extract concerned info from NodeTemplate, currently ONLY HPA Feature.
 
 
 /**
  * This class handles reading, parsing and validating of the paramaters for the
- * {@link PolicyDecoderCsarPdpx}
+ * {@link PolicyDecoderCsarPdpx}.
  */
 public class PolicyDecoderCsarPdpxConfigurationParameterGroup extends PolicyDecoderConfigurationParameterGroup {
 
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public GroupValidationResult validate() {
 
 
 import static java.nio.file.StandardWatchEventKinds.ENTRY_CREATE;
 
-import java.io.IOException;
 import java.io.File;
 import java.nio.file.FileSystems;
 import java.nio.file.Path;
                                     ParameterService.get(parameterGroupName);
             main(handlerParameters.getWatchPath());
         } catch (final PolicyDecodingException ex) {
-            ex.printStackTrace();
+            LOGGER.debug(ex);
         }
     }
 
         running = false;
     }
 
+    /**
+     * Main entry point.
+     * 
+     * @param watchPath Path to watch
+     * @throws PolicyDecodingException Decoding exception
+     */
     @SuppressWarnings("unchecked")
     public void main(String watchPath) throws PolicyDecodingException {
-        try {
-            final WatchService watcher = FileSystems.getDefault().newWatchService();
+        try (final WatchService watcher = FileSystems.getDefault().newWatchService()) {
             final Path dir = Paths.get(watchPath);
 
             dir.register(watcher, ENTRY_CREATE);
                 try {
                     key = watcher.take();
                 } catch (final InterruptedException ex) {
-                    ex.printStackTrace();
+                    LOGGER.debug(ex);
+                    Thread.currentThread().interrupt();
                     return;
                 }
                 for (final WatchEvent<?> event : key.pollEvents()) {
 
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public GroupValidationResult validate() {
      */
     private void validatePathElement(final GroupValidationResult validationResult, final String element,
             final String elementName) {
-        File f = new File(element);
-        if (!(f.exists() && f.isDirectory())) {
+        File file = new File(element);
+        if (!(file.exists() && file.isDirectory())) {
             validationResult.setResult(elementName, ValidationStatus.INVALID,
                     elementName + " must be a valid directory");
         }
 
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public GroupValidationResult validate() {
 
      *
      * @param message The message to dump
      */
-    public ArtifactDownloadException (final String message) {
-        super (message);
+    public ArtifactDownloadException(final String message) {
+        super(message);
        
     }
     
      * @param message The message to dump
      * @param e the exception that caused this exception to be thrown
      */
-    public ArtifactDownloadException (final String message, final Exception e) {
-        super (message, e);
+    public ArtifactDownloadException(final String message, final Exception ex) {
+        super(message, ex);
        
     }
 }
 
      *
      * @param message The message to dump
      */
-    public ArtifactInstallerException (final String message) {
-        super (message);
+    public ArtifactInstallerException(final String message) {
+        super(message);
        
     }
     
      * @param message The message to dump
      * @param e the exception that caused this exception to be thrown
      */
-    public ArtifactInstallerException (final String message, final Exception e) {
-        super (message, e);
+    public ArtifactInstallerException(final String message, final Exception ex) {
+        super(message, ex);
        
     }
 }
 
      *
      * @param message The message to dump
      */
-    public PssdControllerException (final String message) {
-        super (message);
+    public PssdControllerException(final String message) {
+        super(message);
        
     }
     
      * @param message The message to dump
      * @param e the exception that caused this exception to be thrown
      */
-    public PssdControllerException (final String message, final Exception e) {
-        super (message, e);
+    public PssdControllerException(final String message, final Exception ex) {
+        super(message, ex);
        
     }
 }
 
      *
      * @param message The message to dump
      */
-    public PssdParametersException (final String message) {
-        super (message);
+    public PssdParametersException(final String message) {
+        super(message);
        
     }
     
      * @param message The message to dump
      * @param e the exception that caused this exception to be thrown
      */
-    public PssdParametersException (final String message, final Exception e) {
-        super (message, e);
+    public PssdParametersException(final String message, final Exception ex) {
+        super(message, ex);
        
     }
 }
 
                             with minor changes -->
                             <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
                             <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory -->
-                            <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory>
+                            <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
                             <includeResources>true</includeResources>
                             <includeTestSourceDirectory>true</includeTestSourceDirectory>
                             <includeTestResources>true</includeTestResources>
 
     private PluginHandler pluginHandler;
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void initialize(final String parameterGroupName) throws PluginInitializationException {
 
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getName() {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void setName(final String name) {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public GroupValidationResult validate() {
 
 
 /**
  * Base class of all {@link ParameterGroup} classes for configuration parameters for
- * {@link ReceptionHandler} classes
+ * {@link ReceptionHandler} classes.
  */
 public abstract class ReceptionHandlerConfigurationParameterGroup implements ParameterGroup {