Set drools-pdp checkstyle config 71/69471/11
authorPamela Dragosh <pdragosh@research.att.com>
Fri, 28 Sep 2018 08:58:26 +0000 (04:58 -0400)
committerPamela Dragosh <pdragosh@research.att.com>
Mon, 1 Oct 2018 14:28:44 +0000 (10:28 -0400)
Fixed last remaining checkstyle issues along with
setting the pom.xml to the correct path setting.

Fixed forbidden summary fragments, not allowed
to prepend summary with "This method returns"

Issue-ID: POLICY-1153
Change-Id: I267842080494132a7b5507731e14f027a3f6fe44
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
68 files changed:
api-active-standby-management/checkstyle-suppressions.xml [new file with mode: 0644]
api-active-standby-management/pom.xml
api-active-standby-management/src/main/java/org/onap/policy/drools/activestandby/ActiveStandbyFeatureAPI.java
api-state-management/checkstyle-suppressions.xml [new file with mode: 0644]
api-state-management/pom.xml
api-state-management/src/main/java/org/onap/policy/drools/statemanagement/StateManagementFeatureAPI.java
feature-active-standby-management/checkstyle-suppressions.xml [new file with mode: 0644]
feature-active-standby-management/pom.xml
feature-active-standby-management/src/main/java/org/onap/policy/drools/activestandby/ActiveStandbyFeature.java
feature-active-standby-management/src/main/java/org/onap/policy/drools/activestandby/DroolsPdpEntity.java
feature-active-standby-management/src/main/java/org/onap/policy/drools/activestandby/DroolsPdpsElectionHandler.java
feature-active-standby-management/src/main/java/org/onap/policy/drools/activestandby/PMStandbyStateChangeNotifier.java
feature-distributed-locking/src/main/java/org/onap/policy/distributed/locking/DistributedLockingFeature.java
feature-distributed-locking/src/test/java/org/onap/policy/distributed/locking/TargetLockTest.java
feature-healthcheck/checkstyle-suppressions.xml [new file with mode: 0644]
feature-healthcheck/pom.xml
feature-healthcheck/src/main/java/org/onap/policy/drools/healthcheck/AafHealthCheckFilter.java
feature-healthcheck/src/main/java/org/onap/policy/drools/healthcheck/HealthCheck.java
feature-healthcheck/src/main/java/org/onap/policy/drools/healthcheck/RestHealthCheck.java
feature-healthcheck/src/test/java/org/onap/policy/drools/healthcheck/TestAafHealthCheckFilter.java
feature-pooling-dmaap/src/main/java/org/onap/policy/drools/pooling/PoolingManager.java
feature-pooling-dmaap/src/main/java/org/onap/policy/drools/pooling/message/Forward.java
feature-session-persistence/src/main/java/org/onap/policy/drools/persistence/JpaDroolsSessionConnector.java
feature-session-persistence/src/main/java/org/onap/policy/drools/persistence/PersistenceFeature.java
feature-session-persistence/src/test/java/org/onap/policy/drools/persistence/EntityMgrTransTest.java
feature-state-management/checkstyle-suppressions.xml [new file with mode: 0644]
feature-state-management/pom.xml
feature-state-management/src/main/java/org/onap/policy/drools/statemanagement/DroolsPDPIntegrityMonitor.java
feature-state-management/src/main/java/org/onap/policy/drools/statemanagement/IntegrityMonitorRestManager.java
feature-state-management/src/main/java/org/onap/policy/drools/statemanagement/StateManagementFeature.java
feature-test-transaction/checkstyle-suppressions.xml [new file with mode: 0644]
feature-test-transaction/pom.xml
feature-test-transaction/src/main/java/org/onap/policy/drools/testtransaction/TestTransaction.java
policy-core/checkstyle-suppressions.xml [new file with mode: 0644]
policy-core/pom.xml
policy-core/src/main/java/org/onap/policy/drools/core/PolicyContainer.java
policy-core/src/main/java/org/onap/policy/drools/core/PolicySession.java
policy-core/src/main/java/org/onap/policy/drools/core/lock/PolicyResourceLockFeatureApi.java [moved from policy-core/src/main/java/org/onap/policy/drools/core/lock/PolicyResourceLockFeatureAPI.java with 97% similarity]
policy-core/src/main/java/org/onap/policy/drools/core/lock/PolicyResourceLockManager.java
policy-core/src/test/java/org/onap/policy/drools/core/lock/PolicyResourceLockFeatureApiTest.java [moved from policy-core/src/test/java/org/onap/policy/drools/core/lock/PolicyResourceLockFeatureAPITest.java with 94% similarity]
policy-core/src/test/java/org/onap/policy/drools/core/lock/PolicyResourceLockManagerTest.java
policy-management/checkstyle-suppressions.xml [new file with mode: 0644]
policy-management/pom.xml
policy-management/src/main/java/org/onap/policy/drools/controller/internal/NullDroolsController.java
policy-management/src/main/java/org/onap/policy/drools/features/PolicyEngineFeatureAPI.java
policy-management/src/main/java/org/onap/policy/drools/persistence/FileSystemPersistence.java
policy-management/src/main/java/org/onap/policy/drools/protocol/coders/EventProtocolCoder.java
policy-management/src/main/java/org/onap/policy/drools/protocol/coders/JsonProtocolFilter.java
policy-management/src/main/java/org/onap/policy/drools/protocol/coders/ProtocolCoderToolset.java
policy-management/src/main/java/org/onap/policy/drools/protocol/coders/TopicCoderFilterConfiguration.java
policy-management/src/main/java/org/onap/policy/drools/protocol/configuration/ControllerConfiguration.java
policy-management/src/main/java/org/onap/policy/drools/protocol/configuration/DroolsConfiguration.java
policy-management/src/main/java/org/onap/policy/drools/protocol/configuration/PdpdConfiguration.java
policy-management/src/main/java/org/onap/policy/drools/server/restful/RestManager.java
policy-management/src/main/java/org/onap/policy/drools/server/restful/aaf/AafBase.java
policy-management/src/main/java/org/onap/policy/drools/server/restful/aaf/AafTelemetryAuthFilter.java
policy-management/src/main/java/org/onap/policy/drools/system/Main.java
policy-management/src/main/java/org/onap/policy/drools/system/PolicyController.java
policy-management/src/main/java/org/onap/policy/drools/system/PolicyControllerFactory.java
policy-management/src/main/java/org/onap/policy/drools/system/PolicyEngine.java
policy-management/src/main/java/org/onap/policy/drools/system/internal/AggregatedPolicyController.java
policy-management/src/test/java/org/onap/policy/drools/server/restful/test/RestManagerTest.java
policy-management/src/test/java/org/onap/policy/drools/server/restful/test/TestAafTelemetryAuthFilter.java
policy-utils/checkstyle-suppressions.xml [new file with mode: 0644]
policy-utils/pom.xml
policy-utils/src/main/java/org/onap/policy/drools/utils/ReflectionUtil.java
policy-utils/src/main/java/org/onap/policy/drools/utils/logging/MDCTransaction.java
pom.xml

diff --git a/api-active-standby-management/checkstyle-suppressions.xml b/api-active-standby-management/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..b6fa7ef
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="AbbreviationAsWordInName"
+    files="ActiveStandbyFeatureAPI.java"
+    lines="1-9999"/>
+</suppressions>
index eec22ee..665ef77 100644 (file)
       <scope>provided</scope>
     </dependency>
   </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>onap-java-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>process-sources</phase>
+                        <configuration>
+                            <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                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}</sourceDirectory>
+                            <includeResources>true</includeResources>
+                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            <includeTestResources>true</includeTestResources>
+                            <excludes>
+                            </excludes>
+                            <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                            <consoleOutput>true</consoleOutput>
+                            <failsOnViolation>true</failsOnViolation>
+                            <violationSeverity>warning</violationSeverity>
+                        </configuration>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.onap.oparent</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${oparent.version}</version>
+                        <scope>compile</scope>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
 </project>
index ef02c61..ac1f1ce 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START=======================================================
  * api-active-standby-management
  * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 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.
@@ -24,40 +24,38 @@ import org.onap.policy.drools.utils.OrderedService;
 import org.onap.policy.drools.utils.OrderedServiceImpl;
 
 /**
- * This interface provides a way to invoke optional features at various
- * points in the code. At appropriate points in the
- * application, the code iterates through this list, invoking these optional
- * methods.
+ * This interface provides a way to invoke optional features at various points in the code. At
+ * appropriate points in the application, the code iterates through this list, invoking these
+ * optional methods.
  */
-public interface ActiveStandbyFeatureAPI extends OrderedService
-{
-       /**
-        * 'FeatureAPI.impl.getList()' returns an ordered list of objects
-        * implementing the 'FeatureAPI' interface.
-        */
-       public static OrderedServiceImpl<ActiveStandbyFeatureAPI> impl =
-                                       new OrderedServiceImpl<>(ActiveStandbyFeatureAPI.class);
+public interface ActiveStandbyFeatureAPI extends OrderedService {
+    /**
+     * 'FeatureAPI.impl.getList()' returns an ordered list of objects implementing the 'FeatureAPI'
+     * interface.
+     */
+    public static OrderedServiceImpl<ActiveStandbyFeatureAPI> impl =
+            new OrderedServiceImpl<>(ActiveStandbyFeatureAPI.class);
 
-       /**
-        * This method returns the resourceName (PDP ID) for the Drools-PDP that is
-        * currently designated as active.
-        
-        * @return String (resourceName)
-        */
-       public String getPdpdNowActive();
+    /**
+     * Returns the resourceName (PDP ID) for the Drools-PDP that is
+     * currently designated as active.
+     * 
+     * @return String (resourceName)
+     */
+    public String getPdpdNowActive();
 
-       /**
-        * This method returns the resourceName (PDP ID) for the Drools-PDP that was
-        * previously designated as active.
-        * 
-        * @return String (resourceName)
-        */
-       public String getPdpdLastActive();
-
-       /**
-        * This method returns the resourceName associated with this instance of the feature 
-        * @return String (resourceName)
-        */
-       public String getResourceName();
+    /**
+     * Returns the resourceName (PDP ID) for the Drools-PDP that is
+     * previously designated as active.
+     * 
+     * @return String (resourceName)
+     */
+    public String getPdpdLastActive();
 
+    /**
+     * Returns the resourceName associated with this instance of the feature.
+     *  
+     * @return String (resourceName)
+     */
+    public String getResourceName();
 }
diff --git a/api-state-management/checkstyle-suppressions.xml b/api-state-management/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..f208c3a
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="AbbreviationAsWordInName"
+    files="StateManagementFeatureAPI.java"
+    lines="1-9999"/>
+</suppressions>
index 564e5d9..9e2965b 100644 (file)
           <swagger.version>1.5.0</swagger.version>
   </properties>
 
-  <build>
-    <plugins>
-               <!-- none -->
-    </plugins>
-  </build>
 
   <dependencies>
     <dependency>
       <version>${project.version}</version>
     </dependency>
    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>onap-java-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>process-sources</phase>
+                        <configuration>
+                            <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                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}</sourceDirectory>
+                            <includeResources>true</includeResources>
+                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            <includeTestResources>true</includeTestResources>
+                            <excludes>
+                            </excludes>
+                            <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                            <consoleOutput>true</consoleOutput>
+                            <failsOnViolation>true</failsOnViolation>
+                            <violationSeverity>warning</violationSeverity>
+                        </configuration>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.onap.oparent</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${oparent.version}</version>
+                        <scope>compile</scope>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
 </project>
index 3afd0c7..be229ef 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START=======================================================
  * policy-core
  * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 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.
@@ -82,7 +82,7 @@ public interface StateManagementFeatureAPI extends OrderedService, Lockable {
      * fail if any module has set the value ALLNOTWELL, stopping the forward progress counter and
      * eventually causing the operational state to become disabled.
      * 
-     * ALLSEEMSWELL is passed to the method when the client is healthy ALLNOTWELL is passed to the
+     * <p>ALLSEEMSWELL is passed to the method when the client is healthy ALLNOTWELL is passed to the
      * method when the client is disabled
      * 
      * @param key - This should be a unique identifier for the entity making the call (e.g., class
@@ -91,48 +91,48 @@ public interface StateManagementFeatureAPI extends OrderedService, Lockable {
      * @param msg - A message is required. It should indicate why all is not well or a message
      *        indicating that a component has been restored to health (perhaps indicating the
      *        problem that has resolved).
-     * @throws AllSeemsWellException
+     * @throws AllSeemsWellException exception
      */
     public void allSeemsWell(@NotNull String key, @NotNull Boolean asw, @NotNull String msg)
             throws AllSeemsWellException;
 
     /**
-     * This method is called to add an Observer to receive notifications of state changes
+     * This method is called to add an Observer to receive notifications of state changes.
      * 
-     * @param stateChangeObserver
+     * @param stateChangeObserver observer
      */
     public void addObserver(Observer stateChangeObserver);
 
     /**
-     * This method returns the X.731 Administrative State for this resource
+     * Returns the X.731 Administrative State for this resource.
      * 
      * @return String (locked, unlocked)
      */
     public String getAdminState();
 
     /**
-     * This method returns the X.731 Operational State for this resource
+     * Returns the X.731 Operational State for this resource.
      * 
      * @return String (enabled, disabled)
-     */
+     */    
     public String getOpState();
 
     /**
-     * This method returns the X.731 Availability Status for this resource
+     * Returns the X.731 Availability Status for this resource.
      * 
      * @return String (failed; dependency; dependency,failed)
-     */
+     */    
     public String getAvailStatus();
 
     /**
-     * This method returns the X.731 Standby Status for this resource
+     * Returns the X.731 Standby Status for this resource.
      * 
      * @return String (providingservice, hotstandby or coldstandby)
-     */
+     */    
     public String getStandbyStatus();
 
     /**
-     * This method returns the X.731 Standby Status for the named resource
+     * Returns the X.731 Standby Status for the named resource
      * 
      * @param String (resourceName)
      * @return String (providingservice, hotstandby or coldstandby)
@@ -144,8 +144,8 @@ public interface StateManagementFeatureAPI extends OrderedService, Lockable {
      * and the Availability Status to a value of failed. As a consequence the Standby Status value
      * will take a value of coldstandby.
      * 
-     * @param String (resourceName)
-     * @throws Exception
+     * @param resourceName resource name
+     * @throws Exception exception
      */
     public void disableFailed(String resourceName) throws Exception;
 
@@ -154,8 +154,7 @@ public interface StateManagementFeatureAPI extends OrderedService, Lockable {
      * the Availability Status to a value of failed. As a consequence the Standby Status value will
      * take a value of coldstandby.
      * 
-     * @param String (resourceName)
-     * @throws Exception
+     * @throws Exception exception
      */
     public void disableFailed() throws Exception;
 
@@ -165,7 +164,7 @@ public interface StateManagementFeatureAPI extends OrderedService, Lockable {
      * value is null, it will move to providingservice assuming the Operational State is enabled and
      * Administrative State is unlocked.
      * 
-     * @throws Exception
+     * @throws Exception exception
      */
     public void promote() throws Exception;
 
@@ -174,28 +173,28 @@ public interface StateManagementFeatureAPI extends OrderedService, Lockable {
      * hotstandby. If the current value is null, it will move to hotstandby assuming the Operational
      * State is enabled and Administrative State is unlocked. Else, it will move to coldstandby
      * 
-     * @throws Exception
+     * @throws Exception exception
      */
     public void demote() throws Exception;
 
     /**
-     * This method returns the resourceName associated with this instance of the
-     * StateManagementFeature
+     * Returns the resourceName associated with this instance of the
+     * StateManagementFeature.
      * 
      * @return String (resourceName)
      */
     public String getResourceName();
 
     /**
-     * This Lockable method will lock the StateManagement object Admin state
+     * This Lockable method will lock the StateManagement object Admin state.
      * 
-     * @return true if successfull, false otherwise
+     * @return true if successful, false otherwise
      */
     @Override
     public boolean lock();
 
     /**
-     * This Lockable method will unlock the StateManagement object Admin state
+     * This Lockable method will unlock the StateManagement object Admin state.
      * 
      * @return true if successfull, false otherwise
      */
@@ -203,7 +202,7 @@ public interface StateManagementFeatureAPI extends OrderedService, Lockable {
     public boolean unlock();
 
     /**
-     * This Lockable method indicates the Admin state StateManagement object
+     * This Lockable method indicates the Admin state StateManagement object.
      * 
      * @return true if locked, false otherwise
      */
diff --git a/feature-active-standby-management/checkstyle-suppressions.xml b/feature-active-standby-management/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..cce8939
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="AbbreviationAsWordInName"
+    files="PMStandbyStateChangeNotifier.java"
+    lines="1-9999"/>
+</suppressions>
index 00beae0..086431c 100644 (file)
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>onap-java-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>process-sources</phase>
+                        <configuration>
+                            <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                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}</sourceDirectory>
+                            <includeResources>true</includeResources>
+                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            <includeTestResources>true</includeTestResources>
+                            <excludes>
+                            </excludes>
+                            <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                            <consoleOutput>true</consoleOutput>
+                            <failsOnViolation>true</failsOnViolation>
+                            <violationSeverity>warning</violationSeverity>
+                        </configuration>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.onap.oparent</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${oparent.version}</version>
+                        <scope>compile</scope>
+                    </dependency>
+                </dependencies>
+            </plugin>
         </plugins>
     </build>
 
index 9e481f0..1b7d91b 100644 (file)
@@ -62,12 +62,12 @@ public class ActiveStandbyFeature implements ActiveStandbyFeatureAPI,
     public static final int SEQ_NUM = 1;
 
 
-    /**************************/
+    /*========================*/
     /* 'FeatureAPI' interface */
-    /**************************/
+    /*========================*/
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public int getSequenceNumber() {
@@ -75,7 +75,7 @@ public class ActiveStandbyFeature implements ActiveStandbyFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void globalInit(String[] args, String configDir) {
@@ -121,7 +121,7 @@ public class ActiveStandbyFeature implements ActiveStandbyFeatureAPI,
 
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean afterStart(PolicyEngine engine) {
@@ -210,7 +210,7 @@ public class ActiveStandbyFeature implements ActiveStandbyFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getPdpdNowActive() {
@@ -218,7 +218,7 @@ public class ActiveStandbyFeature implements ActiveStandbyFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getPdpdLastActive() {
@@ -226,7 +226,7 @@ public class ActiveStandbyFeature implements ActiveStandbyFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getResourceName() {
index f0fd278..12d716a 100644 (file)
@@ -39,7 +39,7 @@ import org.onap.policy.drools.activestandby.DroolsPdpObject;
 @NamedQueries({
     @NamedQuery(name = "DroolsPdpEntity.findAll", query = "SELECT e FROM DroolsPdpEntity e "),
     @NamedQuery(name = "DroolsPdpEntity.deleteAll", query = "DELETE FROM DroolsPdpEntity WHERE 1=1")
-})
+    })
 public class DroolsPdpEntity extends DroolsPdpObject implements Serializable {
 
     private static final long serialVersionUID = 1L;
index 08592f2..fddf024 100644 (file)
@@ -637,7 +637,7 @@ public class DroolsPdpsElectionHandler implements ThreadRunningChecker {
      * Sanitize designated list.
      * 
      * @param listOfDesignated list of designated pdps
-     * @return
+     * @return list of drools pdps
      */
     public List<DroolsPdp> santizeDesignatedList(List<DroolsPdp> listOfDesignated) {
 
@@ -668,7 +668,7 @@ public class DroolsPdpsElectionHandler implements ThreadRunningChecker {
      * 
      * @param pdps collection of pdps
      * @param listOfDesignated list of designated pdps
-     * @return
+     * @return drools pdp object
      */
     public DroolsPdp computeMostRecentPrimary(Collection<DroolsPdp> pdps, List<DroolsPdp> listOfDesignated) {
         boolean containsDesignated = false;
@@ -778,7 +778,7 @@ public class DroolsPdpsElectionHandler implements ThreadRunningChecker {
      * 
      * @param listOfDesignated list of designated pdps
      * @param mostRecentPrimary most recent primary pdpd
-     * @return
+     * @return drools pdp object
      */
     public DroolsPdp computeDesignatedPdp(List<DroolsPdp> listOfDesignated, DroolsPdp mostRecentPrimary) {
         DroolsPdp designatedPdp = null;
index 554376c..53f825d 100644 (file)
@@ -122,7 +122,7 @@ public class PMStandbyStateChangeNotifier extends StateChangeNotifier {
         String pdpId = ActiveStandbyProperties.getProperty(ActiveStandbyProperties.NODE_NAME);
 
         if (logger.isDebugEnabled()) {
-            logger.debug("handleStateChange: previousStandbyStatus = {}" + "; standbyStatus = {}",
+            logger.debug("handleStateChange: previousStandbyStatus = {}; standbyStatus = {}",
                     previousStandbyStatus, standbyStatus);
         }
 
@@ -201,7 +201,7 @@ public class PMStandbyStateChangeNotifier extends StateChangeNotifier {
 
         } else if (standbyStatus.equals(StateManagement.PROVIDING_SERVICE)) {
             if (logger.isDebugEnabled()) {
-                logger.debug("handleStateChange: standbyStatus= {} " + "scheduling activation of PDP={}", standbyStatus,
+                logger.debug("handleStateChange: standbyStatus= {} scheduling activation of PDP={}", standbyStatus,
                         pdpId);
             }
             if (previousStandbyStatus.equals(StateManagement.PROVIDING_SERVICE)) {
index 17f6545..86b5a66 100644 (file)
@@ -28,14 +28,14 @@ import java.util.UUID;
 import org.apache.commons.dbcp2.BasicDataSource;
 import org.apache.commons.dbcp2.BasicDataSourceFactory;
 import org.onap.policy.common.utils.properties.exception.PropertyException;
-import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureAPI;
+import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureApi;
 import org.onap.policy.drools.features.PolicyEngineFeatureAPI;
 import org.onap.policy.drools.persistence.SystemPersistence;
 import org.onap.policy.drools.system.PolicyEngine;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class DistributedLockingFeature implements PolicyEngineFeatureAPI, PolicyResourceLockFeatureAPI {
+public class DistributedLockingFeature implements PolicyEngineFeatureAPI, PolicyResourceLockFeatureApi {
 
     /**
      * Logger instance.
@@ -165,7 +165,7 @@ public class DistributedLockingFeature implements PolicyEngineFeatureAPI, Policy
 
         try (Connection conn = dataSource.getConnection();
                 PreparedStatement statement = conn.prepareStatement(
-                        "DELETE FROM pooling.locks WHERE host = ? OR expirationTime < now()");
+                        "DELETE FROM pooling.locks WHERE host = ? OR expirationTime < now()")
                 ) {
 
             statement.setString(1, uuid.toString());
index 60a721b..49f1026 100644 (file)
@@ -31,7 +31,7 @@ import org.junit.AfterClass;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
-import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureAPI.OperResult;
+import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureApi.OperResult;
 import org.onap.policy.drools.persistence.SystemPersistence;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/feature-healthcheck/checkstyle-suppressions.xml b/feature-healthcheck/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..ed04d89
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="OneTopLevelClass"
+    files="HealthCheck.java"
+    lines="1-9999"/>
+</suppressions>
index 1acfb2d..3ed46ab 100644 (file)
           </execution>
         </executions>
       </plugin>
+          <plugin>
+              <artifactId>maven-checkstyle-plugin</artifactId>
+              <executions>
+                  <execution>
+                      <id>onap-java-style</id>
+                      <goals>
+                          <goal>check</goal>
+                      </goals>
+                      <phase>process-sources</phase>
+                      <configuration>
+                          <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                              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}</sourceDirectory>
+                          <includeResources>true</includeResources>
+                          <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                          <includeTestResources>true</includeTestResources>
+                          <excludes>
+                          </excludes>
+                          <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                          <consoleOutput>true</consoleOutput>
+                          <failsOnViolation>true</failsOnViolation>
+                          <violationSeverity>warning</violationSeverity>
+                      </configuration>
+                  </execution>
+              </executions>
+              <dependencies>
+                  <dependency>
+                      <groupId>org.onap.oparent</groupId>
+                      <artifactId>checkstyle</artifactId>
+                      <version>${oparent.version}</version>
+                      <scope>compile</scope>
+                  </dependency>
+              </dependencies>
+          </plugin>
     </plugins>
   </build>
 
index 3cb9def..47a617b 100644 (file)
@@ -24,7 +24,7 @@ import org.onap.policy.common.endpoints.http.server.aaf.AafGranularAuthFilter;
 import org.onap.policy.drools.server.restful.aaf.AafBase;
 
 /**
- * Healthcheck AAF Authorization Filter
+ * Healthcheck AAF Authorization Filter.
  */
 public class AafHealthCheckFilter extends AafGranularAuthFilter {
 
index d35b737..40e4f35 100644 (file)
@@ -201,7 +201,7 @@ class HealthCheckMonitor implements HealthCheck {
     protected volatile Properties healthCheckProperties = null;
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public Reports healthCheck() {
@@ -242,7 +242,7 @@ class HealthCheckMonitor implements HealthCheck {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean start() {
@@ -265,7 +265,7 @@ class HealthCheckMonitor implements HealthCheck {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean stop() {
@@ -290,7 +290,7 @@ class HealthCheckMonitor implements HealthCheck {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void shutdown() {
@@ -298,7 +298,7 @@ class HealthCheckMonitor implements HealthCheck {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public synchronized boolean isAlive() {
index 734a75e..5047cb2 100644 (file)
@@ -49,7 +49,7 @@ import org.onap.policy.drools.healthcheck.HealthCheck.Reports;
     tags = {
         @Tag(name = "pdp-d-healthcheck", description = "Drools PDP Healthcheck Operations")
     }
-)
+    )
 public class RestHealthCheck {
 
     @GET
index 03ca689..9c34670 100644 (file)
@@ -24,7 +24,7 @@ import javax.servlet.http.HttpServletRequest;
 import org.onap.policy.common.utils.network.NetworkUtil;
 
 /**
- * Healthcheck AAF Authorization Filter
+ * Healthcheck AAF Authorization Filter.
  */
 public class TestAafHealthCheckFilter extends AafHealthCheckFilter {
 
index 94956d6..e8e0174 100644 (file)
@@ -34,7 +34,7 @@ public interface PoolingManager {
     /**
      * Gets the properties used to configure the manager.
      * 
-     * @return
+     * @return pooling properties
      */
     public PoolingProperties getProperties();
 
index d4037e9..38acb8c 100644 (file)
@@ -60,7 +60,7 @@ public class Forward extends Message {
     private String requestId;
 
     /**
-     * 
+     * Constructor.
      */
     public Forward() {
         super();
index 381a896..b85a685 100644 (file)
@@ -98,13 +98,13 @@ public class JpaDroolsSessionConnector implements DroolsSessionConnector {
      */
     private boolean update(EntityManager em, DroolsSession sess) {
 
-        DroolsSessionEntity s = em.find(DroolsSessionEntity.class, sess.getSessionName());
-        if (s == null) {
+        DroolsSessionEntity session = em.find(DroolsSessionEntity.class, sess.getSessionName());
+        if (session == null) {
             return false;
         }
 
         logger.info("update: Updating session id to {}", sess.getSessionId());
-        s.setSessionId(sess.getSessionId());
+        session.setSessionId(sess.getSessionId());
 
         return true;
     }
index 7b17de6..332e298 100644 (file)
@@ -119,14 +119,16 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public int getSequenceNumber() {
         return 1;
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public void globalInit(String[] args, String configDir) {
 
@@ -160,7 +162,8 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public PolicySession.ThreadModel selectThreadModel(PolicySession session) {
 
@@ -172,7 +175,8 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public void disposeKieSession(PolicySession policySession) {
 
@@ -184,7 +188,8 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public void destroyKieSession(PolicySession policySession) {
 
@@ -196,14 +201,16 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public boolean afterStart(PolicyEngine engine) {
         return false;
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public boolean beforeStart(PolicyEngine engine) {
         synchronized (cleanupLock) {
@@ -214,7 +221,8 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public boolean beforeActivate(PolicyEngine engine) {
         synchronized (cleanupLock) {
@@ -225,7 +233,8 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
     }
 
     /** 
-     * {@inheritDoc} */
+     * {@inheritDoc}.
+     **/
     @Override
     public boolean afterActivate(PolicyEngine engine) {
         return false;
@@ -686,19 +695,21 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
             return "Session " + session.getFullName() + " (persistent)";
         }
 
-        /** ************************ */
+        /*=========================*/
         /* 'ThreadModel' interface */
-        /** ************************ */
+        /*=========================*/
 
         /** 
-         * {@inheritDoc} */
+         * {@inheritDoc}.
+         **/
         @Override
         public void start() {
             thread.start();
         }
 
         /** 
-         * {@inheritDoc} */
+         * {@inheritDoc}.
+         **/
         @Override
         public void stop() {
             // tell the thread to stop
@@ -720,19 +731,21 @@ public class PersistenceFeature implements PolicySessionFeatureAPI, PolicyEngine
         }
 
         /** 
-         * {@inheritDoc} */
+         * {@inheritDoc}.
+         **/
         @Override
         public void updated() {
             // the container artifact has been updated -- adjust the thread name
             thread.setName(getThreadName());
         }
 
-        /** ********************* */
+        /*======================*/
         /* 'Runnable' interface */
-        /** ********************* */
+        /*======================*/
 
         /** 
-         * {@inheritDoc} */
+         * {@inheritDoc}.
+         **/
         @Override
         public void run() {
             logger.info("PersistentThreadModel running");
index c622a93..fb0d110 100644 (file)
@@ -98,7 +98,7 @@ public class EntityMgrTransTest {
      */
     @Test
     public void testEntityMgrTrans_Inactive() throws Exception {
-        EntityMgrTrans emt = new EntityMgrTrans(mgr);
+        final EntityMgrTrans emt = new EntityMgrTrans(mgr);
 
         // verify that transaction was started
         verify(trans).begin();
@@ -123,7 +123,7 @@ public class EntityMgrTransTest {
 
         when(trans.getStatus()).thenReturn(Status.STATUS_ACTIVE);
 
-        EntityMgrTrans emt = new EntityMgrTrans(mgr);
+        final EntityMgrTrans emt = new EntityMgrTrans(mgr);
 
         // verify that transaction was not re-started started
         verify(trans, never()).begin();
diff --git a/feature-state-management/checkstyle-suppressions.xml b/feature-state-management/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..3c394a9
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="AbbreviationAsWordInName"
+    files="DroolsPDPIntegrityMonitor.java"
+    lines="1-9999"/>
+</suppressions>
index 4f8a9cf..dd662f7 100644 (file)
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>onap-java-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>process-sources</phase>
+                        <configuration>
+                            <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                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}</sourceDirectory>
+                            <includeResources>true</includeResources>
+                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            <includeTestResources>true</includeTestResources>
+                            <excludes>
+                            </excludes>
+                            <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                            <consoleOutput>true</consoleOutput>
+                            <failsOnViolation>true</failsOnViolation>
+                            <violationSeverity>warning</violationSeverity>
+                        </configuration>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.onap.oparent</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${oparent.version}</version>
+                        <scope>compile</scope>
+                    </dependency>
+                </dependencies>
+            </plugin>
         </plugins>
     </build>
 
index 3cb99f2..8dd211b 100644 (file)
@@ -83,7 +83,6 @@ public class DroolsPDPIntegrityMonitor extends IntegrityMonitor {
      * Static initialization -- create Drools Integrity Monitor, and an HTTP server to handle REST
      * 'test' requests.
      * 
-     * @throws StateManagementPropertiesException exception
      * @throws IntegrityMonitorException exception
      */
     public static DroolsPDPIntegrityMonitor init(String configDir) throws IntegrityMonitorException {
@@ -134,7 +133,7 @@ public class DroolsPDPIntegrityMonitor extends IntegrityMonitor {
         // Now that we've validated the properties, create Drools Integrity Monitor
         // with these properties.
         im = makeMonitor(resourceName, stateManagementProperties);
-        logger.info("init: New DroolsPDPIntegrityMonitor instantiated, resourceName = ", resourceName);
+        logger.info("init: New DroolsPDPIntegrityMonitor instantiated, resourceName = {}", resourceName);
 
         // create http server
         makeRestServer(testHost, testPort, stateManagementProperties);
@@ -174,7 +173,7 @@ public class DroolsPDPIntegrityMonitor extends IntegrityMonitor {
             throws IntegrityMonitorException {
 
         try {
-            logger.info("init: Starting HTTP server, addr= {}", testHost + ":" + testPort);
+            logger.info("init: Starting HTTP server, addr= {}:{}", testHost, testPort);
 
             IntegrityMonitorRestServer server = new IntegrityMonitorRestServer();
             server.init(properties);
index 49e4577..77c188d 100644 (file)
@@ -59,7 +59,7 @@ public class IntegrityMonitorRestManager {
                     code = 500,
                     message = "Integrity monitor sanity check encountered an exception. "
                         + "This can indicate operational state disabled or administrative state locked")
-    })
+        })
     @GET
     @Path("test")
     public Response test() {
index d7f9d10..94f3540 100644 (file)
@@ -91,7 +91,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void addObserver(Observer stateChangeObserver) {
@@ -105,7 +105,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getAdminState() {
@@ -113,7 +113,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getOpState() {
@@ -121,7 +121,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getAvailStatus() {
@@ -129,7 +129,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getStandbyStatus() {
@@ -137,7 +137,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getStandbyStatus(String resourceName) {
@@ -145,7 +145,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void disableFailed(String resourceName) throws Exception {
@@ -154,7 +154,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void disableFailed() throws Exception {
@@ -162,7 +162,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void promote() throws Exception {
@@ -170,7 +170,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void demote() throws Exception {
@@ -178,7 +178,7 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getResourceName() {
@@ -186,8 +186,9 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
-     * @return 
+     * {@inheritDoc}.
+     * 
+     * @return true if locked or false if failed
      */
     @Override
     public boolean lock() {
@@ -201,7 +202,8 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
+     * 
      * @throws Exception exception
      */
     @Override
@@ -216,7 +218,8 @@ public class StateManagementFeature implements StateManagementFeatureAPI,
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
+     * 
      * @throws Exception exception 
      */
     @Override
diff --git a/feature-test-transaction/checkstyle-suppressions.xml b/feature-test-transaction/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..7112bbe
--- /dev/null
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="AbbreviationAsWordInName"
+    files="TestTransaction.java"
+    lines="1-9999"/>
+  <suppress checks="OneTopLevelClass"
+    files="TestTransaction.java"
+    lines="1-9999"/>
+</suppressions>
index 92c8e21..f16a50f 100644 (file)
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>onap-java-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>process-sources</phase>
+                        <configuration>
+                            <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                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}</sourceDirectory>
+                            <includeResources>true</includeResources>
+                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            <includeTestResources>true</includeTestResources>
+                            <excludes>
+                            </excludes>
+                            <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                            <consoleOutput>true</consoleOutput>
+                            <failsOnViolation>true</failsOnViolation>
+                            <violationSeverity>warning</violationSeverity>
+                        </configuration>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.onap.oparent</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${oparent.version}</version>
+                        <scope>compile</scope>
+                    </dependency>
+                </dependencies>
+            </plugin>
         </plugins>
     </build>
     <dependencies>
index 3adecdd..c778bf6 100644 (file)
@@ -141,7 +141,7 @@ class TTControllerTask implements Runnable {
 
             if (!(this.controller.getDrools().isBrained())) {
                 this.alive = false;
-                logger.error(this + ": unknown drools controller");
+                logger.error("{}: unknown drools controller", this);
                 return;
             }
 
diff --git a/policy-core/checkstyle-suppressions.xml b/policy-core/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..d771a02
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="AbbreviationAsWordInName"
+    files="PolicyResourceLockFeatureAPI.java|PolicySessionFeatureAPI.java"
+    lines="1-9999"/>
+</suppressions>
index 34a78a3..70df374 100644 (file)
             <scope>test</scope>
         </dependency>
     </dependencies>
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>onap-java-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>process-sources</phase>
+                        <configuration>
+                            <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                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}</sourceDirectory>
+                            <includeResources>true</includeResources>
+                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            <includeTestResources>true</includeTestResources>
+                            <excludes>
+                            </excludes>
+                            <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                            <consoleOutput>true</consoleOutput>
+                            <failsOnViolation>true</failsOnViolation>
+                            <violationSeverity>warning</violationSeverity>
+                        </configuration>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.onap.oparent</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${oparent.version}</version>
+                        <scope>compile</scope>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
 </project>
index f2a084e..2c5d87f 100644 (file)
@@ -109,7 +109,7 @@ public class PolicyContainer implements Startable {
         }
         synchronized (containers) {
             if (newReleaseId != null) {
-                logger.info("Add a new kieContainer in containers: releaseId: {}", newReleaseId.toString());
+                logger.info("Add a new kieContainer in containers: releaseId: {}", newReleaseId);
             } else {
                 logger.warn("input releaseId is null");
             }
@@ -289,8 +289,8 @@ public class PolicyContainer implements Startable {
                 }
                 logger.info("activatePolicySession:new session was added in sessions with name {}", name);
             }
-            logger.info("activatePolicySession:session - " + (session == null ? "null" : session.getFullName())
-                    + " is returned.");
+            logger.info("activatePolicySession:session - {} is returned.", 
+                    session == null ? "null" : session.getFullName());
             return session;
         }
     }
@@ -317,7 +317,7 @@ public class PolicyContainer implements Startable {
             logger.warn("adoptKieSession:input kieSession is null");
             throw new IllegalArgumentException("KieSession '" + name + "' is null " + getName());
         } else {
-            logger.info("adoptKieSession:name: " + name + " kieSession: " + kieSession);
+            logger.info("adoptKieSession:name: {} kieSession: {}", name, kieSession);
         }
         // fetch KieBase, and verify it belongs to this KieContainer
         boolean match = false;
@@ -507,12 +507,12 @@ public class PolicyContainer implements Startable {
         return rval;
     }
 
-    /*************************/
+    /*=======================*/
     /* 'Startable' interface */
-    /*************************/
+    /*=======================*/
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public synchronized boolean start() {
@@ -537,7 +537,7 @@ public class PolicyContainer implements Startable {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public synchronized boolean stop() {
@@ -576,7 +576,7 @@ public class PolicyContainer implements Startable {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public synchronized void shutdown() {
@@ -594,15 +594,13 @@ public class PolicyContainer implements Startable {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean isAlive() {
         return isStarted;
     }
 
-    /*************************/
-
     /**
      * This method is similar to 'shutdown', but it also frees any persistence resources as well.
      */
index bb2148c..958933f 100644 (file)
@@ -232,12 +232,12 @@ public class PolicySession
         }
     }
 
-    /***********************************/
+    /*=================================*/
     /* 'AgendaEventListener' interface */
-    /***********************************/
+    /*=================================*/
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void afterMatchFired(AfterMatchFiredEvent event) {
@@ -249,7 +249,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void afterRuleFlowGroupActivated(RuleFlowGroupActivatedEvent event) {
@@ -261,7 +261,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void afterRuleFlowGroupDeactivated(RuleFlowGroupDeactivatedEvent event) {
@@ -273,7 +273,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void agendaGroupPopped(AgendaGroupPoppedEvent event) {
@@ -285,7 +285,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void agendaGroupPushed(AgendaGroupPushedEvent event) {
@@ -297,7 +297,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void beforeMatchFired(BeforeMatchFiredEvent event) {
@@ -309,7 +309,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void beforeRuleFlowGroupActivated(RuleFlowGroupActivatedEvent event) {
@@ -321,7 +321,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void beforeRuleFlowGroupDeactivated(RuleFlowGroupDeactivatedEvent event) {
@@ -333,7 +333,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void matchCancelled(MatchCancelledEvent event) {
@@ -344,7 +344,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void matchCreated(MatchCreatedEvent event) {
@@ -354,12 +354,12 @@ public class PolicySession
         }
     }
 
-    /****************************************/
+    /*======================================*/
     /* 'RuleRuntimeEventListener' interface */
-    /****************************************/
+    /*======================================*/
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void objectDeleted(ObjectDeletedEvent event) {
@@ -370,7 +370,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void objectInserted(ObjectInsertedEvent event) {
@@ -381,7 +381,7 @@ public class PolicySession
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void objectUpdated(ObjectUpdatedEvent event) {
@@ -390,7 +390,7 @@ public class PolicySession
                     + ": AgendaEventListener.objectUpdated(" + event + ")");
         }
     }
-
+    
     /* ============================================================ */
 
     /**
@@ -451,12 +451,12 @@ public class PolicySession
             return "Session " + session.getFullName();
         }
 
-        /***************************/
+        /*=========================*/
         /* 'ThreadModel' interface */
-        /***************************/
+        /*=========================*/
 
         /**
-         * {@inheritDoc}
+         * {@inheritDoc}.
          */
         @Override
         public void start() {
@@ -465,7 +465,7 @@ public class PolicySession
         }
 
         /**
-         * {@inheritDoc}
+         * {@inheritDoc}.
          */
         @Override
         public void stop() {
@@ -486,7 +486,7 @@ public class PolicySession
         }
 
         /**
-         * {@inheritDoc}
+         * {@inheritDoc}.
          */
         @Override
         public void updated() {
@@ -494,12 +494,12 @@ public class PolicySession
             thread.setName(getThreadName());
         }
 
-        /************************/
+        /*======================*/
         /* 'Runnable' interface */
-        /************************/
+        /*======================*/
 
         /**
-         * {@inheritDoc}
+         * {@inheritDoc}.
          */
         @Override
         public void run() {
@@ -35,14 +35,14 @@ import org.onap.policy.drools.utils.OrderedServiceImpl;
  * For instance, they may choose to implement an engine-wide locking scheme, or they may
  * choose to implement a global locking scheme (e.g., through a shared DB).
  */
-public interface PolicyResourceLockFeatureAPI extends OrderedService {
+public interface PolicyResourceLockFeatureApi extends OrderedService {
 
     /**
      * 'FeatureAPI.impl.getList()' returns an ordered list of objects implementing the
      * 'FeatureAPI' interface.
      */
-    public static OrderedServiceImpl<PolicyResourceLockFeatureAPI> impl =
-                    new OrderedServiceImpl<>(PolicyResourceLockFeatureAPI.class);
+    public static OrderedServiceImpl<PolicyResourceLockFeatureApi> impl =
+                    new OrderedServiceImpl<>(PolicyResourceLockFeatureApi.class);
 
     /**
      * Result of a requested operation.
index 3612b29..33f4668 100644 (file)
@@ -23,7 +23,7 @@ package org.onap.policy.drools.core.lock;
 import java.util.List;
 import java.util.function.Function;
 import java.util.function.Supplier;
-import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureAPI.OperResult;
+import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureApi.OperResult;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -184,7 +184,7 @@ public class PolicyResourceLockManager extends SimpleLockManager {
      * @param defaultFunc default function
      * @return {@code true} if success, {@code false} otherwise
      */
-    private boolean doBoolIntercept(Function<PolicyResourceLockFeatureAPI, OperResult> interceptFunc,
+    private boolean doBoolIntercept(Function<PolicyResourceLockFeatureApi, OperResult> interceptFunc,
                     Supplier<Boolean> defaultFunc) {
 
         OperResult result = doIntercept(OperResult.OPER_UNHANDLED, interceptFunc);
@@ -205,9 +205,9 @@ public class PolicyResourceLockManager extends SimpleLockManager {
      * @return first non-null value returned by an implementer, <i>continueValue</i> if
      *       they all returned <i>continueValue</i>
      */
-    private static <T> T doIntercept(T continueValue, Function<PolicyResourceLockFeatureAPI, T> func) {
+    private static <T> T doIntercept(T continueValue, Function<PolicyResourceLockFeatureApi, T> func) {
 
-        for (PolicyResourceLockFeatureAPI impl : factory.getImplementers()) {
+        for (PolicyResourceLockFeatureApi impl : factory.getImplementers()) {
             try {
                 T result = func.apply(impl);
                 if (result != continueValue) {
@@ -248,8 +248,8 @@ public class PolicyResourceLockManager extends SimpleLockManager {
          * 
          * @return the list of feature implementers
          */
-        public List<PolicyResourceLockFeatureAPI> getImplementers() {
-            return PolicyResourceLockFeatureAPI.impl.getList();
+        public List<PolicyResourceLockFeatureApi> getImplementers() {
+            return PolicyResourceLockFeatureApi.impl.getList();
         }
     }
 }
@@ -25,21 +25,21 @@ import static org.junit.Assert.assertFalse;
 
 import org.junit.Before;
 import org.junit.Test;
-import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureAPI.OperResult;
+import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureApi.OperResult;
 
-public class PolicyResourceLockFeatureAPITest {
+public class PolicyResourceLockFeatureApiTest {
 
     private static final String RESOURCE_ID = "the resource";
     private static final String OWNER = "the owner";
 
-    private PolicyResourceLockFeatureAPI api;
+    private PolicyResourceLockFeatureApi api;
 
     /**
      * set up.
      */
     @Before
     public void setUp() {
-        api = new PolicyResourceLockFeatureAPI() {
+        api = new PolicyResourceLockFeatureApi() {
             @Override
             public int getSequenceNumber() {
                 return 0;
index 962fb96..8acafcc 100644 (file)
@@ -41,7 +41,7 @@ import org.junit.AfterClass;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
-import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureAPI.OperResult;
+import org.onap.policy.drools.core.lock.PolicyResourceLockFeatureApi.OperResult;
 import org.onap.policy.drools.core.lock.PolicyResourceLockManager.Factory;
 
 public class PolicyResourceLockManagerTest {
@@ -64,9 +64,9 @@ public class PolicyResourceLockManagerTest {
      */
     private static Factory saveFactory;
 
-    private PolicyResourceLockFeatureAPI impl1;
-    private PolicyResourceLockFeatureAPI impl2;
-    private List<PolicyResourceLockFeatureAPI> implList;
+    private PolicyResourceLockFeatureApi impl1;
+    private PolicyResourceLockFeatureApi impl2;
+    private List<PolicyResourceLockFeatureApi> implList;
 
     private PolicyResourceLockManager mgr;
 
@@ -85,8 +85,8 @@ public class PolicyResourceLockManagerTest {
      */
     @Before
     public void setUp() {
-        impl1 = mock(PolicyResourceLockFeatureAPI.class);
-        impl2 = mock(PolicyResourceLockFeatureAPI.class);
+        impl1 = mock(PolicyResourceLockFeatureApi.class);
+        impl2 = mock(PolicyResourceLockFeatureApi.class);
 
         initImplementer(impl1);
         initImplementer(impl2);
@@ -97,7 +97,7 @@ public class PolicyResourceLockManagerTest {
         PolicyResourceLockManager.setFactory(new Factory() {
 
             @Override
-            public List<PolicyResourceLockFeatureAPI> getImplementers() {
+            public List<PolicyResourceLockFeatureApi> getImplementers() {
                 return implList;
             }
         });
@@ -110,7 +110,7 @@ public class PolicyResourceLockManagerTest {
      * 
      * @param impl implementer
      */
-    private void initImplementer(PolicyResourceLockFeatureAPI impl) {
+    private void initImplementer(PolicyResourceLockFeatureApi impl) {
         when(impl.beforeLock(anyString(), anyString(), anyInt())).thenReturn(OperResult.OPER_UNHANDLED);
         when(impl.beforeRefresh(anyString(), anyString(), anyInt())).thenReturn(OperResult.OPER_UNHANDLED);
         when(impl.beforeUnlock(anyString(), anyString())).thenReturn(OperResult.OPER_UNHANDLED);
diff --git a/policy-management/checkstyle-suppressions.xml b/policy-management/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..d2b9d1d
--- /dev/null
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="AbbreviationAsWordInName"
+    files="DroolsControllerFeatureAPI.java|PolicyControllerFeatureAPI.java|PolicyEngineFeatureAPI.java|EventProtocolCoder.java|ProtocolCoderToolset.java|PdpdConfiguration.java"
+    lines="1-9999"/>
+  <suppress checks="OneTopLevelClass"
+    files="EventProtocolCoder.java|ProtocolCoderToolset.java|PolicyControllerFactory.java|DroolsControllerFactory.java|PolicyEngine.java"
+    lines="1-9999"/>
+</suppressions>
index 58c858b..e988b4a 100644 (file)
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>onap-java-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>process-sources</phase>
+                        <configuration>
+                            <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                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}</sourceDirectory>
+                            <includeResources>true</includeResources>
+                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            <includeTestResources>true</includeTestResources>
+                            <excludes>
+                            </excludes>
+                            <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                            <consoleOutput>true</consoleOutput>
+                            <failsOnViolation>true</failsOnViolation>
+                            <violationSeverity>warning</violationSeverity>
+                        </configuration>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.onap.oparent</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${oparent.version}</version>
+                        <scope>compile</scope>
+                    </dependency>
+                </dependencies>
+            </plugin>
         </plugins>
     </build>
 
index 93cbc65..2aaef91 100644 (file)
@@ -25,9 +25,9 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import org.onap.policy.common.endpoints.event.comm.TopicSink;
 import org.onap.policy.drools.controller.DroolsController;
 import org.onap.policy.drools.core.PolicyContainer;
-import org.onap.policy.common.endpoints.event.comm.TopicSink;
 import org.onap.policy.drools.protocol.coders.TopicCoderFilterConfiguration;
 
 /**
@@ -88,7 +88,7 @@ public class NullDroolsController implements DroolsController {
     @Override
     public String getVersion() {
         return NO_VERSION;
-    }  
+    }
 
     @Override
     public List<String> getSessionNames() {
index 66b206b..c86f6e0 100644 (file)
@@ -220,7 +220,7 @@ public interface PolicyEngineFeatureAPI extends OrderedService {
      *     of the operation preventing the invocation of 
      *     lower priority features.   False, otherwise..
      */
-    public default boolean beforeShutdown(PolicyEngine engine){
+    public default boolean beforeShutdown(PolicyEngine engine) {
         return false;
     }
 
index 6864a34..2fcb07d 100644 (file)
@@ -305,7 +305,7 @@ public class FileSystemPersistence implements SystemPersistence {
      */
     protected File[] sortedListFiles() {
         final File[] dirFiles = this.configurationDirectory.toFile().listFiles();
-        Arrays.sort(dirFiles, (a, b) -> a.getName().compareTo(b.getName()));
+        Arrays.sort(dirFiles, (e1, e2) -> e1.getName().compareTo(e2.getName()));
         return dirFiles;
     }
 
index 3e4e7ec..6d75289 100644 (file)
@@ -183,56 +183,54 @@ public interface EventProtocolCoder {
      */
     public List<CoderFilters> getDecoderFilters(String groupId, String artifactId, String topic);
 
-
     /**
-     * Given a controller id and a topic, it gives back the decoding configuration.
+     * gets all decoders associated with the group and artifact ids.
      * 
      * @param groupId of the controller
      * @param artifactId of the controller
-     * @param topic the topic
      * 
-     * @return decoding toolset
-     * 
-     * @throw IllegalArgumentException if an invalid parameter is passed
+     * @throws IllegalArgumentException if invalid arguments have been provided
      */
-    public ProtocolCoderToolset getDecoders(String groupId, String artifactId, String topic);
+    public List<CoderFilters> getDecoderFilters(String groupId, String artifactId);
 
     /**
-     * Given a controller id and a topic, it gives back all the decoding configurations.
+     * Given a controller id, a topic, and a classname, it gives back the classes that implements the decoding.
      * 
      * @param groupId of the controller
      * @param artifactId of the controller
+     * @param topic the topic
+     * @param classname classname
      * 
-     * @return decoding toolset
+     * @return list of decoders
      * 
      * @throw IllegalArgumentException if an invalid parameter is passed
-     */
-    public List<ProtocolCoderToolset> getDecoders(String groupId, String artifactId);
+     */ 
+    public CoderFilters getDecoderFilters(String groupId, String artifactId, String topic, String classname);
 
     /**
-     * gets all decoders associated with the group and artifact ids.
+     * Given a controller id and a topic, it gives back the decoding configuration.
      * 
      * @param groupId of the controller
      * @param artifactId of the controller
+     * @param topic the topic
      * 
-     * @throws IllegalArgumentException if invalid arguments have been provided
+     * @return decoding toolset
+     * 
+     * @throw IllegalArgumentException if an invalid parameter is passed
      */
-    public List<CoderFilters> getDecoderFilters(String groupId, String artifactId);
-
+    public ProtocolCoderToolset getDecoders(String groupId, String artifactId, String topic);
 
     /**
-     * Given a controller id, a topic, and a classname, it gives back the classes that implements the decoding.
+     * Given a controller id and a topic, it gives back all the decoding configurations.
      * 
      * @param groupId of the controller
      * @param artifactId of the controller
-     * @param topic the topic
-     * @param classname classname
      * 
-     * @return list of decoders
+     * @return decoding toolset
      * 
      * @throw IllegalArgumentException if an invalid parameter is passed
-     */ 
-    public CoderFilters getDecoderFilters(String groupId, String artifactId, String topic, String classname);
+     */
+    public List<ProtocolCoderToolset> getDecoders(String groupId, String artifactId);
 
     /**
      * Given a controller id and a topic, it gives back the classes that implements the encoding.
@@ -411,7 +409,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
 
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void addDecoder(String groupId, String artifactId, String topic, 
@@ -429,7 +427,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void addEncoder(String groupId, String artifactId, String topic, 
@@ -447,7 +445,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void removeDecoders(String groupId, String artifactId, String topic) {
@@ -456,7 +454,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void removeEncoders(String groupId, String artifactId, String topic) {
@@ -465,7 +463,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean isDecodingSupported(String groupId, String artifactId, String topic) {
@@ -473,7 +471,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean isEncodingSupported(String groupId, String artifactId, String topic) {
@@ -481,7 +479,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public Object decode(String groupId, String artifactId, String topic, String json) {
@@ -490,7 +488,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String encode(String groupId, String artifactId, String topic, Object event) {
@@ -499,7 +497,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String encode(String topic, Object event) {
@@ -508,7 +506,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String encode(String topic, Object event, DroolsController droolsController) {
@@ -517,7 +515,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<CoderFilters> getDecoderFilters(String groupId, String artifactId, String topic) {
@@ -525,7 +523,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public CoderFilters getDecoderFilters(String groupId, String artifactId, String topic, String classname) {
@@ -533,7 +531,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<CoderFilters> getDecoderFilters(String groupId, String artifactId) {
@@ -542,7 +540,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public ProtocolCoderToolset getDecoders(String groupId, String artifactId, String topic) {
@@ -582,7 +580,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<CoderFilters> getEncoderFilters(String groupId, String artifactId, String topic) {
@@ -590,7 +588,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public CoderFilters getEncoderFilters(String groupId, String artifactId, String topic, String classname) {
@@ -598,7 +596,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<CoderFilters> getEncoderFilters(String groupId, String artifactId) {
@@ -606,7 +604,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<CoderFilters> getReverseEncoderFilters(String topic, String encodedClass) {
@@ -614,7 +612,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public DroolsController getDroolsController(String topic, Object encodedClass) {
@@ -622,7 +620,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<DroolsController> getDroolsControllers(String topic, Object encodedClass) {
@@ -630,7 +628,7 @@ class MultiplexorEventProtocolCoder implements EventProtocolCoder {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String toString() {
@@ -722,7 +720,7 @@ abstract class GenericEventProtocolCoder  {
             if (coders.containsKey(key)) {
                 Pair<ProtocolCoderToolset, ProtocolCoderToolset> toolsets = coders.get(key);
 
-                logger.info("{}: adding coders for existing {}: ", this, key, toolsets.first());
+                logger.info("{}: adding coders for existing {}: {}", this, key, toolsets.first());
 
                 toolsets.first().addCoder(eventClass, protocolFilter, modelClassLoaderHash);
                 toolsets.second().addCoder(eventClass, protocolFilter, modelClassLoaderHash);
@@ -869,7 +867,7 @@ abstract class GenericEventProtocolCoder  {
                         while (toolsetsIter.hasNext()) {
                             Pair<ProtocolCoderToolset, ProtocolCoderToolset> toolset = toolsetsIter.next();
                             if (toolset.first().getControllerId().equals(key)) {
-                                logger.info("{}: removed coder from toolset for {} from reverse mapping {}: ", 
+                                logger.info("{}: removed coder from toolset for {} from reverse mapping", 
                                         this, reverseKey);
                                 toolsetsIter.remove();
                             }
@@ -1021,6 +1019,29 @@ abstract class GenericEventProtocolCoder  {
         return this.encodeInternal(key, event);
     }
 
+    /**
+     * encode an object into a json string.
+     * 
+     * @param topic topic
+     * @param encodedClass object to convert to string
+     * @return the json string
+     * @throws IllegalArgumentException if invalid argument is provided
+     * @throws UnsupportedOperationException if the operation cannot be performed
+     */
+    public String encode(String topic, Object encodedClass, DroolsController droolsController) {
+
+        if (encodedClass == null) {
+            throw new IllegalArgumentException("Invalid encoded class");
+        }
+
+        if (topic == null || topic.isEmpty()) {
+            throw new IllegalArgumentException("Invalid topic");
+        }
+
+        String key = codersKey(droolsController.getGroupId(), droolsController.getArtifactId(), topic);
+        return this.encodeInternal(key, encodedClass);
+    }
+
     /**
      * encode an object into a json string.
      * 
@@ -1068,29 +1089,6 @@ abstract class GenericEventProtocolCoder  {
         throw new UnsupportedOperationException("Cannot decode neither with gson or jackson");
     }
 
-    /**
-     * encode an object into a json string.
-     * 
-     * @param topic topic
-     * @param encodedClass object to convert to string
-     * @return the json string
-     * @throws IllegalArgumentException if invalid argument is provided
-     * @throws UnsupportedOperationException if the operation cannot be performed
-     */
-    public String encode(String topic, Object encodedClass, DroolsController droolsController) {
-
-        if (encodedClass == null) {
-            throw new IllegalArgumentException("Invalid encoded class");
-        }
-
-        if (topic == null || topic.isEmpty()) {
-            throw new IllegalArgumentException("Invalid topic");
-        }
-
-        String key = codersKey(droolsController.getGroupId(), droolsController.getArtifactId(), topic);
-        return this.encodeInternal(key, encodedClass);
-    }
-
     /**
      * Drools creators.
      * 
@@ -1201,6 +1199,31 @@ abstract class GenericEventProtocolCoder  {
         return codersFilters;
     }
     
+    /**
+     * get all filters by maven coordinates, topic, and classname.
+     * 
+     * @param groupId group id
+     * @param artifactId artifact id
+     * @param topic topic
+     * @param classname classname
+     * @return list of coders
+     * @throws IllegalArgumentException if invalid input
+     */
+    public CoderFilters getFilters(String groupId, String artifactId, String topic, String classname) {
+
+        if (!isCodingSupported(groupId, artifactId, topic)) {
+            throw new IllegalArgumentException("Unsupported:" + codersKey(groupId, artifactId, topic));
+        }
+
+        if (classname == null || classname.isEmpty()) {
+            throw new IllegalArgumentException("classname must be provided");
+        }
+
+        String key = this.codersKey(groupId, artifactId, topic);
+        Pair<ProtocolCoderToolset,ProtocolCoderToolset> coderTools = coders.get(key);
+        return coderTools.first().getCoder(classname);
+    }
+
     /**
      * get all coders by maven coordinates and topic.
      * 
@@ -1250,31 +1273,6 @@ abstract class GenericEventProtocolCoder  {
         return coderToolset;
     }
 
-    /**
-     * get all filters by maven coordinates, topic, and classname.
-     * 
-     * @param groupId group id
-     * @param artifactId artifact id
-     * @param topic topic
-     * @param classname classname
-     * @return list of coders
-     * @throws IllegalArgumentException if invalid input
-     */
-    public CoderFilters getFilters(String groupId, String artifactId, String topic, String classname) {
-
-        if (!isCodingSupported(groupId, artifactId, topic)) {
-            throw new IllegalArgumentException("Unsupported:" + codersKey(groupId, artifactId, topic));
-        }
-
-        if (classname == null || classname.isEmpty()) {
-            throw new IllegalArgumentException("classname must be provided");
-        }
-
-        String key = this.codersKey(groupId, artifactId, topic);
-        Pair<ProtocolCoderToolset,ProtocolCoderToolset> coderTools = coders.get(key);
-        return coderTools.first().getCoder(classname);
-    }
-
     /**
      * get coded based on class and topic.
      * 
@@ -1342,7 +1340,7 @@ abstract class GenericEventProtocolCoder  {
      * 
      * @param topic topic
      * @param fact fact
-     * @return
+     * @return list of drools controllers
      */
     List<DroolsController> getDroolsControllers(String topic, Object fact) {
 
index 4fd2f52..f65efae 100644 (file)
@@ -287,7 +287,7 @@ public class JsonProtocolFilter {
      * Get rules.
      * 
      * @param name name
-     * @return
+     * @return list of filter rules
      */
     public List<FilterRule> getRules(String name) {
         if (name == null || name.isEmpty()) {
index 7ee8b08..ead6794 100644 (file)
 
 package org.onap.policy.drools.protocol.coders;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonParser;
+import com.google.gson.JsonPrimitive;
+import com.google.gson.JsonSerializationContext;
+import com.google.gson.JsonSerializer;
+
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.lang.reflect.Type;
@@ -38,637 +53,630 @@ import org.onap.policy.drools.protocol.coders.TopicCoderFilterConfiguration.Cust
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.DeserializationFeature;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonDeserializationContext;
-import com.google.gson.JsonDeserializer;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonParser;
-import com.google.gson.JsonPrimitive;
-import com.google.gson.JsonSerializationContext;
-import com.google.gson.JsonSerializer;
-
 /**
- * Protocol Coding/Decoding Toolset
+ * Protocol Coding/Decoding Toolset.
  */
 public abstract class ProtocolCoderToolset {
 
-  /**
-   * Logger
-   */
-  private static Logger logger = LoggerFactory.getLogger(ProtocolCoderToolset.class);
-
-  /**
-   * topic
-   */
-  protected final String topic;
-
-  /**
-   * controller id
-   */
-  protected final String controllerId;
-
-  /**
-   * group id
-   */
-  protected final String groupId;
-
-  /**
-   * artifact id
-   */
-  protected final String artifactId;
-
-  /**
-   * Protocols and associated Filters
-   */
-  protected final List<CoderFilters> coders = new CopyOnWriteArrayList<>();
-
-  /**
-   * Tree model (instead of class model) generic parsing to be able to inspect elements
-   */
-  protected JsonParser filteringParser = new JsonParser();
-
-  /**
-   * custom coder
-   */
-  protected CustomCoder customCoder;
-
-  /**
-   * Constructor
-   *
-   * @param topic the topic
-   * @param controllerId the controller id
-   * @param codedClass the decoded class
-   * @param filters list of filters that apply to the selection of this decodedClass in case of
-   *        multiplicity
-   * @throws IllegalArgumentException if invalid data has been passed in
-   */
-  public ProtocolCoderToolset(String topic, String controllerId, String groupId, String artifactId,
-      String codedClass, JsonProtocolFilter filters, CustomCoder customCoder,
-      int modelClassLoaderHash) {
-
-    if (topic == null || controllerId == null || groupId == null || artifactId == null
-        || codedClass == null || filters == null || topic.isEmpty() || controllerId.isEmpty()) {
-      throw new IllegalArgumentException("Invalid input");
+    /**
+     * Logger.
+     */
+    private static Logger logger = LoggerFactory.getLogger(ProtocolCoderToolset.class);
+
+    /**
+     * topic.
+     */
+    protected final String topic;
+
+    /**
+     * controller id.
+     */
+    protected final String controllerId;
+
+    /**
+     * group id.
+     */
+    protected final String groupId;
+
+    /**
+     * artifact id.
+     */
+    protected final String artifactId;
+
+    /**
+     * Protocols and associated Filters.
+     */
+    protected final List<CoderFilters> coders = new CopyOnWriteArrayList<>();
+
+    /**
+     * Tree model (instead of class model) generic parsing to be able to inspect elements.
+     */
+    protected JsonParser filteringParser = new JsonParser();
+
+    /**
+     * custom coder.
+     */
+    protected CustomCoder customCoder;
+
+    /**
+     * Constructor.
+     *
+     * @param topic the topic
+     * @param controllerId the controller id
+     * @param codedClass the decoded class
+     * @param filters list of filters that apply to the selection of this decodedClass in case of
+     *        multiplicity
+     * @throws IllegalArgumentException if invalid data has been passed in
+     */
+    public ProtocolCoderToolset(String topic, String controllerId, String groupId, String artifactId,
+            String codedClass, JsonProtocolFilter filters, CustomCoder customCoder,
+            int modelClassLoaderHash) {
+
+        if (topic == null || controllerId == null || groupId == null || artifactId == null
+                || codedClass == null || filters == null || topic.isEmpty() || controllerId.isEmpty()) {
+            throw new IllegalArgumentException("Invalid input");
+        }
+
+        this.topic = topic;
+        this.controllerId = controllerId;
+        this.groupId = groupId;
+        this.artifactId = artifactId;
+        this.coders.add(new CoderFilters(codedClass, filters, modelClassLoaderHash));
+        this.customCoder = customCoder;
+    }
+
+    /**
+     * gets the coder + filters associated with this class name.
+     *
+     * @param classname class name
+     * @return the decoder filters or null if not found
+     */
+    public CoderFilters getCoder(String classname) {
+        if (classname == null || classname.isEmpty()) {
+            throw new IllegalArgumentException("no classname provided");
+        }
+
+        for (final CoderFilters decoder : this.coders) {
+            if (decoder.factClass.equals(classname)) {
+                return decoder;
+            }
+        }
+        return null;
+    }
+
+    /**
+     * get a copy of the coder filters in use.
+     *
+     * @return coder filters
+     */
+    public List<CoderFilters> getCoders() {
+        return new ArrayList<>(this.coders);
+    }
+
+    /**
+     * add coder or replace it exists.
+     *
+     * @param eventClass decoder
+     * @param filter filter
+     */
+    public void addCoder(String eventClass, JsonProtocolFilter filter, int modelClassLoaderHash) {
+        if (eventClass == null || eventClass.isEmpty()) {
+            throw new IllegalArgumentException("no event class provided");
+        }
+
+        for (final CoderFilters coder : this.coders) {
+            if (coder.getCodedClass().equals(eventClass)) {
+                coder.setFilter(filter);
+                coder.setFromClassLoaderHash(modelClassLoaderHash);
+                return;
+            }
+        }
+        this.coders.add(new CoderFilters(eventClass, filter, modelClassLoaderHash));
+    }
+
+    /**
+     * remove coder.
+     * 
+     * @param eventClass event class
+     */
+    public void removeCoders(String eventClass) {
+        if (eventClass == null || eventClass.isEmpty()) {
+            throw new IllegalArgumentException("no event class provided");
+        }
+
+        List<CoderFilters> temp = new ArrayList<>();
+        for (final CoderFilters coder : this.coders) {
+            if (coder.factClass.equals(eventClass)) {
+                temp.add(coder);
+            }
+        }
+
+        this.coders.removeAll(temp);
     }
 
-    this.topic = topic;
-    this.controllerId = controllerId;
-    this.groupId = groupId;
-    this.artifactId = artifactId;
-    this.coders.add(new CoderFilters(codedClass, filters, modelClassLoaderHash));
-    this.customCoder = customCoder;
-  }
-
-  /**
-   * gets the coder + filters associated with this class name
-   *
-   * @param classname class name
-   * @return the decoder filters or null if not found
-   */
-  public CoderFilters getCoder(String classname) {
-    if (classname == null || classname.isEmpty())
-      throw new IllegalArgumentException("no classname provided");
-
-    for (final CoderFilters decoder : this.coders) {
-      if (decoder.factClass.equals(classname)) {
-        return decoder;
-      }
+    /**
+     * gets the topic.
+     *
+     * @return the topic
+     */
+    public String getTopic() {
+        return this.topic;
     }
-    return null;
-  }
-
-  /**
-   * get a copy of the coder filters in use
-   *
-   * @return coder filters
-   */
-  public List<CoderFilters> getCoders() {
-    return new ArrayList<>(this.coders);
-  }
-
-  /**
-   * add coder or replace it exists
-   *
-   * @param eventClass decoder
-   * @param filter filter
-   */
-  public void addCoder(String eventClass, JsonProtocolFilter filter, int modelClassLoaderHash) {
-    if (eventClass == null || eventClass.isEmpty())
-      throw new IllegalArgumentException("no event class provided");
-
-    for (final CoderFilters coder : this.coders) {
-      if (coder.getCodedClass().equals(eventClass)) {
-        coder.setFilter(filter);
-        coder.setFromClassLoaderHash(modelClassLoaderHash);
-        return;
-      }
+
+    /**
+     * gets the controller id.
+     *
+     * @return the controller id
+     */
+    public String getControllerId() {
+        return this.controllerId;
     }
-    this.coders.add(new CoderFilters(eventClass, filter, modelClassLoaderHash));
-  }
-
-  /**
-   * remove coder
-   * @param eventClass event class
-   */
-  public void removeCoders(String eventClass) {
-    if (eventClass == null || eventClass.isEmpty())
-      throw new IllegalArgumentException("no event class provided");
-
-    List<CoderFilters> temp = new ArrayList<>();
-    for (final CoderFilters coder : this.coders) {
-      if (coder.factClass.equals(eventClass)) {
-        temp.add(coder);
-      }
+
+    /**
+     * Get group id.
+     * 
+     * @return the groupId
+     */
+    public String getGroupId() {
+        return this.groupId;
     }
 
-    this.coders.removeAll(temp);
-  }
-
-  /**
-   * gets the topic
-   *
-   * @return the topic
-   */
-  public String getTopic() {
-    return this.topic;
-  }
-
-  /**
-   * gets the controller id
-   *
-   * @return the controller id
-   */
-  public String getControllerId() {
-    return this.controllerId;
-  }
-
-  /**
-   * @return the groupId
-   */
-  public String getGroupId() {
-    return this.groupId;
-  }
-
-  /**
-   * @return the artifactId
-   */
-  public String getArtifactId() {
-    return this.artifactId;
-  }
-
-  /**
-   * @return the customCoder
-   */
-  public CustomCoder getCustomCoder() {
-    return this.customCoder;
-  }
-
-  /**
-   * @param customCoder the customCoder to set
-   */
-  public void setCustomCoder(CustomCoder customCoder) {
-    this.customCoder = customCoder;
-  }
-
-  /**
-   * performs filtering on a json string
-   *
-   * @param json json string
-   * @return the decoder that passes the filter, otherwise null
-   * @throws UnsupportedOperationException can't filter
-   * @throws IllegalArgumentException invalid input
-   */
-  protected CoderFilters filter(String json) {
-
-
-    // 1. Get list of decoding classes for this controller Id and topic
-    // 2. If there are no classes, return error
-    // 3. Otherwise, from the available classes for decoding, pick the first one that
-    // passes the filters
-
-    // Don't parse if it is not necessary
-
-    if (this.coders.isEmpty()) {
-      throw new IllegalStateException("No coders available");
+    /**
+     * Get artifact id.
+     * 
+     * @return the artifactId
+     */
+    public String getArtifactId() {
+        return this.artifactId;
     }
 
-    if (this.coders.size() == 1) {
-      final JsonProtocolFilter filter = this.coders.get(0).getFilter();
-      if (!filter.isRules()) {
-        return this.coders.get(0);
-      }
+    /**
+     * Get custom coder.
+     * 
+     * @return the customCoder
+     */
+    public CustomCoder getCustomCoder() {
+        return this.customCoder;
     }
 
-    JsonElement event;
-    try {
-      event = this.filteringParser.parse(json);
-    } catch (final Exception e) {
-      throw new UnsupportedOperationException(e);
+    /**
+     * Set custom coder.
+     * 
+     * @param customCoder the customCoder to set.
+     */
+    public void setCustomCoder(CustomCoder customCoder) {
+        this.customCoder = customCoder;
     }
 
-    for (final CoderFilters decoder : this.coders) {
-      try {
-        final boolean accepted = decoder.getFilter().accept(event);
-        if (accepted) {
-          return decoder;
+    /**
+     * performs filtering on a json string.
+     *
+     * @param json json string
+     * @return the decoder that passes the filter, otherwise null
+     * @throws UnsupportedOperationException can't filter
+     * @throws IllegalArgumentException invalid input
+     */
+    protected CoderFilters filter(String json) {
+
+
+        // 1. Get list of decoding classes for this controller Id and topic
+        // 2. If there are no classes, return error
+        // 3. Otherwise, from the available classes for decoding, pick the first one that
+        // passes the filters
+
+        // Don't parse if it is not necessary
+
+        if (this.coders.isEmpty()) {
+            throw new IllegalStateException("No coders available");
         }
-      } catch (final Exception e) {
-        logger.info("{}: unexpected failure accepting {} because of {}", this, event,
-            e.getMessage(), e);
-        // continue
-      }
+
+        if (this.coders.size() == 1) {
+            final JsonProtocolFilter filter = this.coders.get(0).getFilter();
+            if (!filter.isRules()) {
+                return this.coders.get(0);
+            }
+        }
+
+        JsonElement event;
+        try {
+            event = this.filteringParser.parse(json);
+        } catch (final Exception e) {
+            throw new UnsupportedOperationException(e);
+        }
+
+        for (final CoderFilters decoder : this.coders) {
+            try {
+                final boolean accepted = decoder.getFilter().accept(event);
+                if (accepted) {
+                    return decoder;
+                }
+            } catch (final Exception e) {
+                logger.info("{}: unexpected failure accepting {} because of {}", this, event,
+                        e.getMessage(), e);
+                // continue
+            }
+        }
+
+        return null;
     }
 
-    return null;
-  }
-
-  /**
-   * Decode json into a POJO object
-   *
-   * @param json json string
-   *
-   * @return a POJO object for the json string
-   * @throws IllegalArgumentException if an invalid parameter has been received
-   * @throws UnsupportedOperationException if parsing into POJO is not possible
-   */
-  public abstract Object decode(String json);
-
-  /**
-   * Encodes a POJO object into a JSON String
-   *
-   * @param event JSON POJO event to be converted to String
-   * @return JSON string version of POJO object
-   * @throws IllegalArgumentException if an invalid parameter has been received
-   * @throws UnsupportedOperationException if parsing into POJO is not possible
-   */
-  public abstract String encode(Object event);
-
-  @Override
-  public String toString() {
-    final StringBuilder builder = new StringBuilder();
-    builder.append("ProtocolCoderToolset [topic=").append(this.topic).append(", controllerId=")
+    /**
+     * Decode json into a POJO object.
+     *
+     * @param json json string
+     *
+     * @return a POJO object for the json string
+     * @throws IllegalArgumentException if an invalid parameter has been received
+     * @throws UnsupportedOperationException if parsing into POJO is not possible
+     */
+    public abstract Object decode(String json);
+
+    /**
+     * Encodes a POJO object into a JSON String.
+     *
+     * @param event JSON POJO event to be converted to String
+     * @return JSON string version of POJO object
+     * @throws IllegalArgumentException if an invalid parameter has been received
+     * @throws UnsupportedOperationException if parsing into POJO is not possible
+     */
+    public abstract String encode(Object event);
+
+    @Override
+    public String toString() {
+        final StringBuilder builder = new StringBuilder();
+        builder.append("ProtocolCoderToolset [topic=").append(this.topic).append(", controllerId=")
         .append(this.controllerId).append(", groupId=").append(this.groupId).append(", artifactId=")
         .append(this.artifactId).append(", coders=").append(this.coders)
         .append(", filteringParser=").append(this.filteringParser).append(", customCoder=")
         .append(this.customCoder).append("]");
-    return builder.toString();
-  }
+        return builder.toString();
+    }
 }
 
 
 /**
- * Tools used for encoding/decoding using Jackson
+ * Tools used for encoding/decoding using Jackson.
  */
 class JacksonProtocolCoderToolset extends ProtocolCoderToolset {
-  private static final String WARN_FETCH_FAILED = "{}: cannot fetch application class {}";
-private static final String WARN_FETCH_FAILED_BECAUSE = "{}: cannot fetch application class {} because of {}";
-private static final String FETCH_FAILED = "cannot fetch application class ";
-private static final String ENCODE_FAILED = "event cannot be encoded";
-private static Logger logger = LoggerFactory.getLogger(JacksonProtocolCoderToolset.class);
-  /**
-   * decoder
-   */
-  @JsonIgnore
-  protected final ObjectMapper decoder = new ObjectMapper();
-
-  /**
-   * encoder
-   */
-  @JsonIgnore
-  protected final ObjectMapper encoder = new ObjectMapper();
-
-  /**
-   * Toolset to encode/decode tools associated with a topic
-   *
-   * @param topic topic
-   * @param decodedClass decoded class of an event
-   * @param filter
-   */
-  public JacksonProtocolCoderToolset(String topic, String controllerId, String groupId,
-      String artifactId, String decodedClass, JsonProtocolFilter filter,
-      CustomJacksonCoder customJacksonCoder, int modelClassLoaderHash) {
-    super(topic, controllerId, groupId, artifactId, decodedClass, filter, customJacksonCoder,
-        modelClassLoaderHash);
-    this.decoder.registerModule(new JavaTimeModule());
-    this.decoder.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
-  }
-
-  /**
-   * gets the Jackson decoder
-   *
-   * @return the Jackson decoder
-   */
-  @JsonIgnore
-  protected ObjectMapper getDecoder() {
-    return this.decoder;
-  }
-
-  /**
-   * gets the Jackson encoder
-   *
-   * @return the Jackson encoder
-   */
-  @JsonIgnore
-  protected ObjectMapper getEncoder() {
-    return this.encoder;
-  }
-
-  /**
-   * {@inheritDoc}
-   */
-  @Override
-  public Object decode(String json) {
-
-    // 0. Use custom coder if available
-
-    if (this.customCoder != null) {
-      throw new UnsupportedOperationException(
-          "Jackon Custom Decoder is not supported at this time");
+    private static final String WARN_FETCH_FAILED = "{}: cannot fetch application class {}";
+    private static final String WARN_FETCH_FAILED_BECAUSE = "{}: cannot fetch application class {} because of {}";
+    private static final String FETCH_FAILED = "cannot fetch application class ";
+    private static final String ENCODE_FAILED = "event cannot be encoded";
+    private static Logger logger = LoggerFactory.getLogger(JacksonProtocolCoderToolset.class);
+    
+    /**
+     * decoder.
+     */
+    @JsonIgnore
+    protected final ObjectMapper decoder = new ObjectMapper();
+
+    /**
+     * encoder.
+     */
+    @JsonIgnore
+    protected final ObjectMapper encoder = new ObjectMapper();
+
+    /**
+     * Toolset to encode/decode tools associated with a topic.
+     *
+     * @param topic topic
+     * @param decodedClass decoded class of an event
+     * @param filter filter
+     */
+    public JacksonProtocolCoderToolset(String topic, String controllerId, String groupId,
+            String artifactId, String decodedClass, JsonProtocolFilter filter,
+            CustomJacksonCoder customJacksonCoder, int modelClassLoaderHash) {
+        super(topic, controllerId, groupId, artifactId, decodedClass, filter, customJacksonCoder,
+                modelClassLoaderHash);
+        this.decoder.registerModule(new JavaTimeModule());
+        this.decoder.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
     }
 
-    final DroolsController droolsController =
-        DroolsController.factory.get(this.groupId, this.artifactId, "");
-    if (droolsController == null) {
-      logger.warn("{}: no drools-controller to process {}", this, json);
-      throw new IllegalStateException("no drools-controller to process event");
+    /**
+     * gets the Jackson decoder.
+     *
+     * @return the Jackson decoder
+     */
+    @JsonIgnore
+    protected ObjectMapper getDecoder() {
+        return this.decoder;
     }
 
-    final CoderFilters decoderFilter = this.filter(json);
-    if (decoderFilter == null) {
-      logger.debug("{}: no decoder to process {}", this, json);
-      throw new UnsupportedOperationException("no decoder to process event");
+    /**
+     * gets the Jackson encoder.
+     *
+     * @return the Jackson encoder
+     */
+    @JsonIgnore
+    protected ObjectMapper getEncoder() {
+        return this.encoder;
     }
 
-    Class<?> decoderClass;
-    try {
-      decoderClass = droolsController.fetchModelClass(decoderFilter.getCodedClass());
-      if (decoderClass == null) {
-        logger.warn(WARN_FETCH_FAILED, this, decoderFilter.getCodedClass());
-        throw new IllegalStateException(
-            FETCH_FAILED + decoderFilter.getCodedClass());
-      }
-    } catch (final Exception e) {
-      logger.warn(WARN_FETCH_FAILED_BECAUSE, this,
-          decoderFilter.getCodedClass(), e.getMessage());
-      throw new UnsupportedOperationException(
-          FETCH_FAILED + decoderFilter.getCodedClass(), e);
-    }
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public Object decode(String json) {
 
+        // 0. Use custom coder if available
 
-    try {
-      return this.decoder.readValue(json, decoderClass);
-    } catch (final Exception e) {
-      logger.warn("{} cannot decode {} into {} because of {}", this, json, decoderClass.getName(),
-          e.getMessage(), e);
-      throw new UnsupportedOperationException(
-          "cannont decode into " + decoderFilter.getCodedClass(), e);
-    }
-  }
+        if (this.customCoder != null) {
+            throw new UnsupportedOperationException(
+                    "Jackon Custom Decoder is not supported at this time");
+        }
 
-  /**
-   * {@inheritDoc}
-   */
-  @Override
-  public String encode(Object event) {
+        final DroolsController droolsController =
+                DroolsController.factory.get(this.groupId, this.artifactId, "");
+        if (droolsController == null) {
+            logger.warn("{}: no drools-controller to process {}", this, json);
+            throw new IllegalStateException("no drools-controller to process event");
+        }
 
-    // 0. Use custom coder if available
+        final CoderFilters decoderFilter = this.filter(json);
+        if (decoderFilter == null) {
+            logger.debug("{}: no decoder to process {}", this, json);
+            throw new UnsupportedOperationException("no decoder to process event");
+        }
 
-    if (this.customCoder != null) {
-      throw new UnsupportedOperationException(
-          "Jackon Custom Encoder is not supported at this time");
+        Class<?> decoderClass;
+        try {
+            decoderClass = droolsController.fetchModelClass(decoderFilter.getCodedClass());
+            if (decoderClass == null) {
+                logger.warn(WARN_FETCH_FAILED, this, decoderFilter.getCodedClass());
+                throw new IllegalStateException(
+                        FETCH_FAILED + decoderFilter.getCodedClass());
+            }
+        } catch (final Exception e) {
+            logger.warn(WARN_FETCH_FAILED_BECAUSE, this,
+                    decoderFilter.getCodedClass(), e.getMessage());
+            throw new UnsupportedOperationException(
+                    FETCH_FAILED + decoderFilter.getCodedClass(), e);
+        }
+
+
+        try {
+            return this.decoder.readValue(json, decoderClass);
+        } catch (final Exception e) {
+            logger.warn("{} cannot decode {} into {} because of {}", this, json, decoderClass.getName(),
+                    e.getMessage(), e);
+            throw new UnsupportedOperationException(
+                    "cannont decode into " + decoderFilter.getCodedClass(), e);
+        }
     }
 
-    try {
-      return this.encoder.writeValueAsString(event);
-    } catch (final JsonProcessingException e) {
-      logger.error("{} cannot encode {} because of {}", this, event, e.getMessage(), e);
-      throw new UnsupportedOperationException(ENCODE_FAILED);
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public String encode(Object event) {
+
+        // 0. Use custom coder if available
+
+        if (this.customCoder != null) {
+            throw new UnsupportedOperationException(
+                    "Jackon Custom Encoder is not supported at this time");
+        }
+
+        try {
+            return this.encoder.writeValueAsString(event);
+        } catch (final JsonProcessingException e) {
+            logger.error("{} cannot encode {} because of {}", this, event, e.getMessage(), e);
+            throw new UnsupportedOperationException(ENCODE_FAILED);
+        }
     }
-  }
 
-  @Override
-  public String toString() {
-    final StringBuilder builder = new StringBuilder();
-    builder.append("JacksonProtocolCoderToolset [toString()=").append(super.toString()).append("]");
-    return builder.toString();
-  }
+    @Override
+    public String toString() {
+        final StringBuilder builder = new StringBuilder();
+        builder.append("JacksonProtocolCoderToolset [toString()=").append(super.toString()).append("]");
+        return builder.toString();
+    }
 
 }
 
 
 /**
- * Tools used for encoding/decoding using Jackson
+ * Tools used for encoding/decoding using Jackson.
  */
 class GsonProtocolCoderToolset extends ProtocolCoderToolset {
 
-  /**
-   * Logger
-   */
-  private static final Logger logger = LoggerFactory.getLogger(GsonProtocolCoderToolset.class);
-
-  /**
-   * Formatter for JSON encoding/decoding
-   */
-  @JsonIgnore
-  public static final DateTimeFormatter format =
-      DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSSSSSxxx");
-
-  @JsonIgnore
-  public static final DateTimeFormatter zuluFormat = DateTimeFormatter.ISO_INSTANT;
-
-  /**
-   * Adapter for ZonedDateTime
-   */
-  public static class GsonUTCAdapter
-      implements JsonSerializer<ZonedDateTime>, JsonDeserializer<ZonedDateTime> {
-    @Override
-    public ZonedDateTime deserialize(JsonElement element, Type type,
-        JsonDeserializationContext context) {
-      try {
-        return ZonedDateTime.parse(element.getAsString(), format);
-      } catch (final Exception e) {
-        logger.info("GsonUTCAdapter: cannot parse {} because of {}", element, e.getMessage(), e);
-      }
-      return null;
-    }
+    /**
+     * Logger.
+     */
+    private static final Logger logger = LoggerFactory.getLogger(GsonProtocolCoderToolset.class);
+
+    /**
+     * Formatter for JSON encoding/decoding.
+     */
+    @JsonIgnore
+    public static final DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSSSSSxxx");
+
+    @JsonIgnore
+    public static final DateTimeFormatter zuluFormat = DateTimeFormatter.ISO_INSTANT;
+
+    /**
+     * Adapter for ZonedDateTime.
+     */
+    public static class GsonUTCAdapter implements JsonSerializer<ZonedDateTime>, JsonDeserializer<ZonedDateTime> {
+        @Override
+        public ZonedDateTime deserialize(JsonElement element, Type type,
+                JsonDeserializationContext context) {
+            try {
+                return ZonedDateTime.parse(element.getAsString(), format);
+            } catch (final Exception e) {
+                logger.info("GsonUTCAdapter: cannot parse {} because of {}", element, e.getMessage(), e);
+            }
+            return null;
+        }
 
-    @Override
-    public JsonElement serialize(ZonedDateTime datetime, Type type,
-        JsonSerializationContext context) {
-      return new JsonPrimitive(datetime.format(format));
+        @Override
+        public JsonElement serialize(ZonedDateTime datetime, Type type,
+                JsonSerializationContext context) {
+            return new JsonPrimitive(datetime.format(format));
+        }
     }
-  }
 
-  public static class GsonInstantAdapter
-      implements JsonSerializer<Instant>, JsonDeserializer<Instant> {
+    public static class GsonInstantAdapter implements JsonSerializer<Instant>, JsonDeserializer<Instant> {
 
-    @Override
-    public Instant deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) {
-      return Instant.ofEpochMilli(json.getAsLong());
-    }
+        @Override
+        public Instant deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) {
+            return Instant.ofEpochMilli(json.getAsLong());
+        }
 
-    @Override
-    public JsonElement serialize(Instant src, Type typeOfSrc, JsonSerializationContext context) {
-      return new JsonPrimitive(src.toEpochMilli());
-    }
+        @Override
+        public JsonElement serialize(Instant src, Type typeOfSrc, JsonSerializationContext context) {
+            return new JsonPrimitive(src.toEpochMilli());
+        }
 
-  }
-
-
-  /**
-   * decoder
-   */
-  @JsonIgnore
-  protected final Gson decoder = new GsonBuilder().disableHtmlEscaping()
-      .registerTypeAdapter(ZonedDateTime.class, new GsonUTCAdapter())
-      .registerTypeAdapter(Instant.class, new GsonInstantAdapter()).create();
-
-  /**
-   * encoder
-   */
-  @JsonIgnore
-  protected final Gson encoder = new GsonBuilder().disableHtmlEscaping()
-      .registerTypeAdapter(ZonedDateTime.class, new GsonUTCAdapter())
-      .registerTypeAdapter(Instant.class, new GsonInstantAdapter()).create();
-
-  /**
-   * Toolset to encode/decode tools associated with a topic
-   *
-   * @param topic topic
-   * @param decodedClass decoded class of an event
-   * @param filter
-   */
-  public GsonProtocolCoderToolset(String topic, String controllerId, String groupId,
-      String artifactId, String decodedClass, JsonProtocolFilter filter,
-      CustomGsonCoder customGsonCoder, int modelClassLoaderHash) {
-    super(topic, controllerId, groupId, artifactId, decodedClass, filter, customGsonCoder,
-        modelClassLoaderHash);
-  }
-
-  /**
-   * gets the Gson decoder
-   *
-   * @return the Gson decoder
-   */
-  @JsonIgnore
-  protected Gson getDecoder() {
-    return this.decoder;
-  }
-
-  /**
-   * gets the Gson encoder
-   *
-   * @return the Gson encoder
-   */
-  @JsonIgnore
-  protected Gson getEncoder() {
-    return this.encoder;
-  }
-
-  /**
-   * {@inheritDoc}
-   */
-  @Override
-  public Object decode(String json) {
-
-    final DroolsController droolsController =
-        DroolsController.factory.get(this.groupId, this.artifactId, "");
-    if (droolsController == null) {
-      logger.warn("{}: no drools-controller to process {}", this, json);
-      throw new IllegalStateException("no drools-controller to process event");
     }
 
-    final CoderFilters decoderFilter = this.filter(json);
-    if (decoderFilter == null) {
-      logger.debug("{}: no decoder to process {}", this, json);
-      throw new UnsupportedOperationException("no decoder to process event");
+
+    /**
+     * decoder.
+     */
+    @JsonIgnore
+    protected final Gson decoder = new GsonBuilder().disableHtmlEscaping()
+        .registerTypeAdapter(ZonedDateTime.class, new GsonUTCAdapter())
+        .registerTypeAdapter(Instant.class, new GsonInstantAdapter()).create();
+
+    /**
+     * encoder.
+     */
+    @JsonIgnore
+    protected final Gson encoder = new GsonBuilder().disableHtmlEscaping()
+        .registerTypeAdapter(ZonedDateTime.class, new GsonUTCAdapter())
+        .registerTypeAdapter(Instant.class, new GsonInstantAdapter()).create();
+
+    /**
+     * Toolset to encode/decode tools associated with a topic.
+     *
+     * @param topic topic
+     * @param decodedClass decoded class of an event
+     * @param filter filter
+     */
+    public GsonProtocolCoderToolset(String topic, String controllerId, String groupId,
+            String artifactId, String decodedClass, JsonProtocolFilter filter,
+            CustomGsonCoder customGsonCoder, int modelClassLoaderHash) {
+        super(topic, controllerId, groupId, artifactId, decodedClass, filter, customGsonCoder,
+                modelClassLoaderHash);
     }
 
-    Class<?> decoderClass;
-    try {
-      decoderClass = droolsController.fetchModelClass(decoderFilter.getCodedClass());
-      if (decoderClass == null) {
-        logger.warn("{}: cannot fetch application class {}", this, decoderFilter.getCodedClass());
-        throw new IllegalStateException(
-            "cannot fetch application class " + decoderFilter.getCodedClass());
-      }
-    } catch (final Exception e) {
-      logger.warn("{}: cannot fetch application class {} because of {}", this,
-          decoderFilter.getCodedClass(), e.getMessage());
-      throw new UnsupportedOperationException(
-          "cannot fetch application class " + decoderFilter.getCodedClass(), e);
+    /**
+     * gets the Gson decoder.
+     *
+     * @return the Gson decoder
+     */
+    @JsonIgnore
+    protected Gson getDecoder() {
+        return this.decoder;
     }
 
-    if (this.customCoder != null) {
-      try {
-        final Class<?> gsonClassContainer =
-            droolsController.fetchModelClass(this.customCoder.getClassContainer());
-        final Field gsonField = gsonClassContainer.getField(this.customCoder.staticCoderField);
-        final Object gsonObject = gsonField.get(null);
-        final Method fromJsonMethod = gsonObject.getClass().getDeclaredMethod("fromJson",
-            new Class[] {String.class, Class.class});
-        return fromJsonMethod.invoke(gsonObject, json, decoderClass);
-      } catch (final Exception e) {
-        logger.warn("{}: cannot fetch application class {} because of {}", this,
-            decoderFilter.getCodedClass(), e.getMessage());
-        throw new UnsupportedOperationException(
-            "cannot fetch application class " + decoderFilter.getCodedClass(), e);
-      }
-    } else {
-      try {
-        return this.decoder.fromJson(json, decoderClass);
-      } catch (final Exception e) {
-        logger.warn("{} cannot decode {} into {} because of {}", this, json, decoderClass.getName(),
-            e.getMessage(), e);
-        throw new UnsupportedOperationException(
-            "cannont decode into " + decoderFilter.getCodedClass(), e);
-      }
+    /**
+     * gets the Gson encoder.
+     *
+     * @return the Gson encoder
+     */
+    @JsonIgnore
+    protected Gson getEncoder() {
+        return this.encoder;
     }
-  }
 
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public Object decode(String json) {
+
+        final DroolsController droolsController =
+                DroolsController.factory.get(this.groupId, this.artifactId, "");
+        if (droolsController == null) {
+            logger.warn("{}: no drools-controller to process {}", this, json);
+            throw new IllegalStateException("no drools-controller to process event");
+        }
 
+        final CoderFilters decoderFilter = this.filter(json);
+        if (decoderFilter == null) {
+            logger.debug("{}: no decoder to process {}", this, json);
+            throw new UnsupportedOperationException("no decoder to process event");
+        }
 
-  /**
-   * {@inheritDoc}
-   */
-  @Override
-  public String encode(Object event) {
+        Class<?> decoderClass;
+        try {
+            decoderClass = droolsController.fetchModelClass(decoderFilter.getCodedClass());
+            if (decoderClass == null) {
+                logger.warn("{}: cannot fetch application class {}", this, decoderFilter.getCodedClass());
+                throw new IllegalStateException(
+                        "cannot fetch application class " + decoderFilter.getCodedClass());
+            }
+        } catch (final Exception e) {
+            logger.warn("{}: cannot fetch application class {} because of {}", this,
+                    decoderFilter.getCodedClass(), e.getMessage());
+            throw new UnsupportedOperationException(
+                    "cannot fetch application class " + decoderFilter.getCodedClass(), e);
+        }
 
-    if (this.customCoder != null) {
-      try {
-        final DroolsController droolsController =
-            DroolsController.factory.get(this.groupId, this.artifactId, null);
-        final Class<?> gsonClassContainer =
-            droolsController.fetchModelClass(this.customCoder.getClassContainer());
-        final Field gsonField = gsonClassContainer.getField(this.customCoder.staticCoderField);
-        final Object gsonObject = gsonField.get(null);
-        final Method toJsonMethod =
-            gsonObject.getClass().getDeclaredMethod("toJson", new Class[] {Object.class});
-        return (String) toJsonMethod.invoke(gsonObject, event);
-      } catch (final Exception e) {
-        logger.warn("{} cannot custom-encode {} because of {}", this, event, e.getMessage(), e);
-        throw new UnsupportedOperationException("event cannot be encoded", e);
-      }
-    } else {
-      try {
-        return this.encoder.toJson(event);
-      } catch (final Exception e) {
-        logger.warn("{} cannot encode {} because of {}", this, event, e.getMessage(), e);
-        throw new UnsupportedOperationException("event cannot be encoded", e);
-      }
+        if (this.customCoder != null) {
+            try {
+                final Class<?> gsonClassContainer =
+                        droolsController.fetchModelClass(this.customCoder.getClassContainer());
+                final Field gsonField = gsonClassContainer.getField(this.customCoder.staticCoderField);
+                final Object gsonObject = gsonField.get(null);
+                final Method fromJsonMethod = gsonObject.getClass().getDeclaredMethod("fromJson",
+                        new Class[] {String.class, Class.class});
+                return fromJsonMethod.invoke(gsonObject, json, decoderClass);
+            } catch (final Exception e) {
+                logger.warn("{}: cannot fetch application class {} because of {}", this,
+                        decoderFilter.getCodedClass(), e.getMessage());
+                throw new UnsupportedOperationException(
+                        "cannot fetch application class " + decoderFilter.getCodedClass(), e);
+            }
+        } else {
+            try {
+                return this.decoder.fromJson(json, decoderClass);
+            } catch (final Exception e) {
+                logger.warn("{} cannot decode {} into {} because of {}", this, json, decoderClass.getName(),
+                        e.getMessage(), e);
+                throw new UnsupportedOperationException(
+                        "cannont decode into " + decoderFilter.getCodedClass(), e);
+            }
+        }
+    }
+
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public String encode(Object event) {
+
+        if (this.customCoder != null) {
+            try {
+                final DroolsController droolsController =
+                        DroolsController.factory.get(this.groupId, this.artifactId, null);
+                final Class<?> gsonClassContainer =
+                        droolsController.fetchModelClass(this.customCoder.getClassContainer());
+                final Field gsonField = gsonClassContainer.getField(this.customCoder.staticCoderField);
+                final Object gsonObject = gsonField.get(null);
+                final Method toJsonMethod =
+                        gsonObject.getClass().getDeclaredMethod("toJson", new Class[] {Object.class});
+                return (String) toJsonMethod.invoke(gsonObject, event);
+            } catch (final Exception e) {
+                logger.warn("{} cannot custom-encode {} because of {}", this, event, e.getMessage(), e);
+                throw new UnsupportedOperationException("event cannot be encoded", e);
+            }
+        } else {
+            try {
+                return this.encoder.toJson(event);
+            } catch (final Exception e) {
+                logger.warn("{} cannot encode {} because of {}", this, event, e.getMessage(), e);
+                throw new UnsupportedOperationException("event cannot be encoded", e);
+            }
+        }
+    }
+
+    @Override
+    public String toString() {
+        final StringBuilder builder = new StringBuilder();
+        builder.append("GsonProtocolCoderToolset [toString()=").append(super.toString()).append("]");
+        return builder.toString();
     }
-  }
-
-  @Override
-  public String toString() {
-    final StringBuilder builder = new StringBuilder();
-    builder.append("GsonProtocolCoderToolset [toString()=").append(super.toString()).append("]");
-    return builder.toString();
-  }
 }
index 7c1b128..f7fc4d2 100644 (file)
@@ -24,286 +24,308 @@ import java.util.List;
 
 public class TopicCoderFilterConfiguration {
 
-       /**
-        * Custom coder, contains class and static field to access parser that the controller
-        * desires to use instead of the framework provided parser
-        */
-       public abstract static class CustomCoder {
-               protected String className;
-               protected String staticCoderField;
-               
-               /**
-                * create custom coder from raw string in the following format
-                * (typically embedded in a property file):
-                * 
-                * Note this is to support decoding/encoding of partial structures that are
-                * only known by the model.
-                * 
-                * @param rawCustomCoder with format: <class-containing-custom-coder>,<static-coder-field>
-                */
-               public CustomCoder(String rawCustomCoder) {                     
-                       if (rawCustomCoder != null && !rawCustomCoder.isEmpty()) {
-                               
-                               this.className = rawCustomCoder.substring(0,rawCustomCoder.indexOf(","));
-                               if (this.className == null || this.className.isEmpty()) {
-                                       throw new IllegalArgumentException("No classname to create CustomCoder cannot be created");
-                               }
-                               
-                               this.staticCoderField = rawCustomCoder.substring(rawCustomCoder.indexOf(",")+1);
-                               if (this.staticCoderField == null || this.staticCoderField.isEmpty()) {
-                                       throw new IllegalArgumentException
-                                               ("No staticCoderField to create CustomCoder cannot be created for class " +
-                                                className);
-                               }
-
-                       }
-               }
-               /**
-                * @param classContainer
-                * @param staticCoderField
-                */
-               public CustomCoder(String className, String staticCoderField) {
-                       if (className == null || className.isEmpty()) {
-                               throw new IllegalArgumentException("No classname to create CustomCoder cannot be created");
-                       }
-                       
-                       if (staticCoderField == null || staticCoderField.isEmpty()) {
-                               throw new IllegalArgumentException
-                                       ("No staticCoderField to create CustomCoder cannot be created for class " +
-                                        className);
-                       }
-                       
-                       this.className = className;
-                       this.staticCoderField = staticCoderField;
-               }
-
-               /**
-                * @return the className
-                */
-               public String getClassContainer() {
-                       return className;
-               }
-
-               /**
-                * @param className the className to set
-                */
-               public void setClassContainer(String className) {
-                       this.className = className;
-               }
-
-               /**
-                * @return the staticCoderField
-                */
-               public String getStaticCoderField() {
-                       return staticCoderField;
-               }
-
-               /**
-                * @param staticCoderField the staticGson to set
-                */
-               public void setStaticCoderField(String staticCoderField) {
-                       this.staticCoderField = staticCoderField;
-               }
-
-               @Override
-               public String toString() {
-                       StringBuilder builder = new StringBuilder();
-                       builder.append("CustomCoder [className=").append(className).append(", staticCoderField=")
-                                       .append(staticCoderField).append("]");
-                       return builder.toString();
-               }
-       }
-       
-       public static class CustomGsonCoder extends CustomCoder {
-       
-               public CustomGsonCoder(String className, String staticCoderField) {
-                               super(className, staticCoderField);
-               }
-
-               public CustomGsonCoder(String customGson) {
-                       super(customGson);
-               }
-
-               @Override
-               public String toString() {
-                       StringBuilder builder = new StringBuilder();
-                       builder.append("CustomGsonCoder [toString()=").append(super.toString()).append("]");
-                       return builder.toString();
-               }
-
-       }
-       
-       public static class CustomJacksonCoder extends CustomCoder {
-               
-               public CustomJacksonCoder(String className, String staticCoderField) {
-                               super(className, staticCoderField);
-               }
-               
-               public CustomJacksonCoder(String customJackson) {
-                       super(customJackson);
-               }
-               
-               @Override
-               public String toString() {
-                       StringBuilder builder = new StringBuilder();
-                       builder.append("CustomJacksonCoder [toString()=").append(super.toString()).append("]");
-                       return builder.toString();
-               }
-
-       }
-
-       /**
-        * Coder/Decoder class and Filter container.   The decoder class is potential,
-        * in order to be operational needs to be fetched from an available
-        * class loader.
-        *
-        */
-       public static class PotentialCoderFilter {
-
-               /**
-                * decoder class (pending from being able to be fetched and found 
-                * in some class loader)
-                */
-               protected String codedClass;
-               
-               /**
-                * filters to apply to the selection of the decodedClass;
-                */
-               protected JsonProtocolFilter filter;
-               
-               /**
-                * constructor
-                * 
-                * @param codedClass decoder class
-                * @param filter filters to apply
-                */
-               public PotentialCoderFilter(String codedClass, JsonProtocolFilter filter) {
-                       this.codedClass = codedClass;
-                       this.filter = filter;
-               }
-
-               /**
-                * @return the decodedClass
-                */
-               public String getCodedClass() {
-                       return codedClass;
-               }
-
-               /**
-                * @param decodedClass the decodedClass to set
-                */
-               public void setCodedClass(String decodedClass) {
-                       this.codedClass = decodedClass;
-               }
-
-               /**
-                * @return the filter
-                */
-               public JsonProtocolFilter getFilter() {
-                       return filter;
-               }
-
-               /**
-                * @param filter the filter to set
-                */
-               public void setFilter(JsonProtocolFilter filter) {
-                       this.filter = filter;
-               }
-
-               @Override
-               public String toString() {
-                       StringBuilder builder = new StringBuilder();
-                       builder.append("PotentialCoderFilter [codedClass=").append(codedClass).append(", filter=").append(filter)
-                                       .append("]");
-                       return builder.toString();
-               }
-       }
-       
-       /**
-        * the source topic
-        */
-       protected final String topic;
-       
-       /**
-        * List of decoder -> filters
-        */
-       protected final List<PotentialCoderFilter> coderFilters;
-       
-       /**
-        * custom gson coder that this controller prefers to use instead of the framework ones
-        */
-       protected CustomGsonCoder customGsonCoder;
-       
-       /**
-        * custom jackson coder that this controller prefers to use instead of the framework ones
-        */
-       protected CustomJacksonCoder customJacksonCoder;
-
-       /**
-        * Constructor 
-        * 
-        * @param decoderFilters list of decoders and associated filters
-        * @param topic the topic
-        */
-       public TopicCoderFilterConfiguration(String topic, List<PotentialCoderFilter> decoderFilters,
-                                         CustomGsonCoder customGsonCoder, 
-                                         CustomJacksonCoder customJacksonCoder) {
-               this.coderFilters = decoderFilters;
-               this.topic = topic;
-               this.customGsonCoder = customGsonCoder;
-               this.customJacksonCoder = customJacksonCoder;
-       }
-
-       /**
-        * @return the topic
-        */
-       public String getTopic() {
-               return topic;
-       }
-
-       /**
-        * @return the decoderFilters
-        */
-       public List<PotentialCoderFilter> getCoderFilters() {
-               return coderFilters;
-       }
-       
-       /**
-        * @return the customGsonCoder
-        */
-       public CustomGsonCoder getCustomGsonCoder() {
-               return customGsonCoder;
-       }
-
-       /**
-        * @param customGsonCoder the customGsonCoder to set
-        */
-       public void setCustomGsonCoder(CustomGsonCoder customGsonCoder) {
-               this.customGsonCoder = customGsonCoder;
-       }
-
-       /**
-        * @return the customJacksonCoder
-        */
-       public CustomJacksonCoder getCustomJacksonCoder() {
-               return customJacksonCoder;
-       }
-
-       /**
-        * @param customJacksonCoder the customJacksonCoder to set
-        */
-       public void setCustomJacksonCoder(CustomJacksonCoder customJacksonCoder) {
-               this.customJacksonCoder = customJacksonCoder;
-       }
-
-       @Override
-       public String toString() {
-               StringBuilder builder = new StringBuilder();
-               builder.append("TopicCoderFilterConfiguration [topic=").append(topic).append(", coderFilters=")
-                               .append(coderFilters).append(", customGsonCoder=").append(customGsonCoder)
-                               .append(", customJacksonCoder=").append(customJacksonCoder).append("]");
-               return builder.toString();
-       }
+    /**
+     * Custom coder, contains class and static field to access parser that the controller desires to
+     * use instead of the framework provided parser.
+     */
+    public abstract static class CustomCoder {
+        protected String className;
+        protected String staticCoderField;
 
+        /**
+         * create custom coder from raw string in the following format (typically embedded in a property
+         * file):
+         *
+         * <p>Note this is to support decoding/encoding of partial structures that are only known by the
+         * model.
+         *
+         * @param rawCustomCoder with format: &lt;class-containing-custom-coder&gt;,&lt;static-coder-field&gt.
+         */
+        public CustomCoder(String rawCustomCoder) {
+            if (rawCustomCoder != null && !rawCustomCoder.isEmpty()) {
 
+                this.className = rawCustomCoder.substring(0, rawCustomCoder.indexOf(","));
+                if (this.className == null || this.className.isEmpty()) {
+                    throw new IllegalArgumentException(
+                            "No classname to create CustomCoder cannot be created");
+                }
+
+                this.staticCoderField = rawCustomCoder.substring(rawCustomCoder.indexOf(",") + 1);
+                if (this.staticCoderField == null || this.staticCoderField.isEmpty()) {
+                    throw new IllegalArgumentException(
+                            "No staticCoderField to create CustomCoder cannot be created for class " + className);
+                }
+            }
+        }
+        
+        /**
+         * Constructor.
+         * 
+         * @param className class name
+         * @param staticCoderField static coder field
+         */
+        public CustomCoder(String className, String staticCoderField) {
+            if (className == null || className.isEmpty()) {
+                throw new IllegalArgumentException("No classname to create CustomCoder cannot be created");
+            }
+
+            if (staticCoderField == null || staticCoderField.isEmpty()) {
+                throw new IllegalArgumentException(
+                        "No staticCoderField to create CustomCoder cannot be created for class " + className);
+            }
+
+            this.className = className;
+            this.staticCoderField = staticCoderField;
+        }
+
+        /** 
+         * Get class container.
+         * 
+         * @return the className 
+         **/
+        public String getClassContainer() {
+            return className;
+        }
+
+        /** 
+         * Set class container.
+         * 
+         * @param className the className to set 
+         **/
+        public void setClassContainer(String className) {
+            this.className = className;
+        }
+
+        /** 
+         * Get static coder field.
+         * 
+         * @return the staticCoderField 
+         **/
+        public String getStaticCoderField() {
+            return staticCoderField;
+        }
+
+        /** 
+         * Set static coder field.
+         * 
+         * @param staticCoderField the staticGson to set 
+         **/
+        public void setStaticCoderField(String staticCoderField) {
+            this.staticCoderField = staticCoderField;
+        }
+
+        @Override
+        public String toString() {
+            StringBuilder builder = new StringBuilder();
+            builder
+                .append("CustomCoder [className=")
+                .append(className)
+                .append(", staticCoderField=")
+                .append(staticCoderField)
+                .append("]");
+            return builder.toString();
+        }
+    }
+
+    public static class CustomGsonCoder extends CustomCoder {
+
+        public CustomGsonCoder(String className, String staticCoderField) {
+            super(className, staticCoderField);
+        }
+
+        public CustomGsonCoder(String customGson) {
+            super(customGson);
+        }
+
+        @Override
+        public String toString() {
+            StringBuilder builder = new StringBuilder();
+            builder.append("CustomGsonCoder [toString()=").append(super.toString()).append("]");
+            return builder.toString();
+        }
+    }
+
+    public static class CustomJacksonCoder extends CustomCoder {
+
+        public CustomJacksonCoder(String className, String staticCoderField) {
+            super(className, staticCoderField);
+        }
+
+        public CustomJacksonCoder(String customJackson) {
+            super(customJackson);
+        }
+
+        @Override
+        public String toString() {
+            StringBuilder builder = new StringBuilder();
+            builder.append("CustomJacksonCoder [toString()=").append(super.toString()).append("]");
+            return builder.toString();
+        }
+    }
+
+    /**
+     * Coder/Decoder class and Filter container. The decoder class is potential, in order to be
+     * operational needs to be fetched from an available class loader.
+     */
+    public static class PotentialCoderFilter {
+
+        /* decoder class (pending from being able to be fetched and found in some class loader) */
+        protected String codedClass;
+
+        /* filters to apply to the selection of the decodedClass; */
+        protected JsonProtocolFilter filter;
+
+        /**
+         * constructor.
+         *
+         * @param codedClass decoder class
+         * @param filter filters to apply
+         */
+        public PotentialCoderFilter(String codedClass, JsonProtocolFilter filter) {
+            this.codedClass = codedClass;
+            this.filter = filter;
+        }
+
+        /** 
+         * Get coded class.
+         * 
+         * @return the decodedClass 
+         **/
+        public String getCodedClass() {
+            return codedClass;
+        }
+
+        /** Set coded class.
+         * 
+         * @param decodedClass the decodedClass to set 
+         **/
+        public void setCodedClass(String decodedClass) {
+            this.codedClass = decodedClass;
+        }
+
+        /** 
+         * Get filter.
+         * 
+         * @return the filter 
+         **/
+        public JsonProtocolFilter getFilter() {
+            return filter;
+        }
+
+        /** 
+         * Set filter.
+         * 
+         * @param filter the filter to set 
+         **/
+        public void setFilter(JsonProtocolFilter filter) {
+            this.filter = filter;
+        }
+
+        @Override
+        public String toString() {
+            StringBuilder builder = new StringBuilder();
+            builder
+                .append("PotentialCoderFilter [codedClass=")
+                .append(codedClass)
+                .append(", filter=")
+                .append(filter)
+                .append("]");
+            return builder.toString();
+        }
+    }
+
+    /* the source topic */
+    protected final String topic;
+
+    /* List of decoder -> filters */
+    protected final List<PotentialCoderFilter> coderFilters;
+
+    /* custom gson coder that this controller prefers to use instead of the framework ones */
+    protected CustomGsonCoder customGsonCoder;
+
+    /* custom jackson coder that this controller prefers to use instead of the framework ones */
+    protected CustomJacksonCoder customJacksonCoder;
+
+    /**
+     * Constructor.
+     *
+     * @param decoderFilters list of decoders and associated filters
+     * @param topic the topic
+     */
+    public TopicCoderFilterConfiguration(
+            String topic,
+            List<PotentialCoderFilter> decoderFilters,
+            CustomGsonCoder customGsonCoder,
+            CustomJacksonCoder customJacksonCoder) {
+        this.coderFilters = decoderFilters;
+        this.topic = topic;
+        this.customGsonCoder = customGsonCoder;
+        this.customJacksonCoder = customJacksonCoder;
+    }
+
+    /** 
+     * Get topic.
+     * @return the topic 
+     **/
+    public String getTopic() {
+        return topic;
+    }
+
+    /** Get coder filters.
+     * 
+     * @return the decoderFilters 
+     **/
+    public List<PotentialCoderFilter> getCoderFilters() {
+        return coderFilters;
+    }
+
+    /** 
+     * Get custom gson coder.
+     * 
+     * @return the customGsonCoder 
+     **/
+    public CustomGsonCoder getCustomGsonCoder() {
+        return customGsonCoder;
+    }
+
+    /** 
+     * Set custom gson coder.
+     * 
+     * @param customGsonCoder the customGsonCoder to set 
+     **/
+    public void setCustomGsonCoder(CustomGsonCoder customGsonCoder) {
+        this.customGsonCoder = customGsonCoder;
+    }
+
+    /** Get custom jackson coder.
+     * 
+     * @return the customJacksonCoder 
+     **/
+    public CustomJacksonCoder getCustomJacksonCoder() {
+        return customJacksonCoder;
+    }
+
+    /** 
+     * Set custom Jackson coder.
+     * @param customJacksonCoder the customJacksonCoder to set 
+     **/
+    public void setCustomJacksonCoder(CustomJacksonCoder customJacksonCoder) {
+        this.customJacksonCoder = customJacksonCoder;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder builder = new StringBuilder();
+        builder
+            .append("TopicCoderFilterConfiguration [topic=")
+            .append(topic)
+            .append(", coderFilters=")
+            .append(coderFilters)
+            .append(", customGsonCoder=")
+            .append(customGsonCoder)
+            .append(", customJacksonCoder=")
+            .append(customJacksonCoder)
+            .append("]");
+        return builder.toString();
+    }
 }
index 62b6661..69e13b4 100644 (file)
 
 package org.onap.policy.drools.protocol.configuration;
 
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 import java.util.HashMap;
 import java.util.Map;
 
@@ -27,41 +33,34 @@ import org.apache.commons.lang3.builder.EqualsBuilder;
 import org.apache.commons.lang3.builder.HashCodeBuilder;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
-import com.fasterxml.jackson.annotation.JsonAnyGetter;
-import com.fasterxml.jackson.annotation.JsonAnySetter;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
 
 /**
- * Drools Related Information
+ * Drools Related Information.
  * 
  */
 @JsonInclude(JsonInclude.Include.NON_NULL)
 public class ControllerConfiguration {
 
-       public static final String CONFIG_CONTROLLER_OPERATION_CREATE = "create";
-       public static final String CONFIG_CONTROLLER_OPERATION_UPDATE = "update";
-       public static final String CONFIG_CONTROLLER_OPERATION_LOCK = "lock";
-       public static final String CONFIG_CONTROLLER_OPERATION_UNLOCK = "unlock";
-       
+    public static final String CONFIG_CONTROLLER_OPERATION_CREATE = "create";
+    public static final String CONFIG_CONTROLLER_OPERATION_UPDATE = "update";
+    public static final String CONFIG_CONTROLLER_OPERATION_LOCK = "lock";
+    public static final String CONFIG_CONTROLLER_OPERATION_UNLOCK = "unlock";
+
     /**
-     * 
-     * (Required)
+     * (Required).
      * 
      */
     @JsonProperty("name")
     private String name;
     /**
      * Set of operations that can be applied to a controller: create, lock
-     * (Required)
+     * (Required).
      * 
      */
     @JsonProperty("operation")
     private String operation;
     /**
-     * Maven Related Information
+     * Maven Related Information.
      * 
      */
     @JsonProperty("drools")
@@ -71,18 +70,19 @@ public class ControllerConfiguration {
     protected static final Object NOT_FOUND_VALUE = new Object();
 
     /**
-     * No args constructor for use in serialization
+     * No args constructor for use in serialization.
      * 
      */
     public ControllerConfiguration() {
-       // Empty
+        // Empty
     }
 
     /**
+     * Constructor.
      * 
-     * @param name
-     * @param drools
-     * @param operation
+     * @param name name
+     * @param operation operation
+     * @param drools drools
      */
     public ControllerConfiguration(String name, String operation, DroolsConfiguration drools) {
         this.name = name;
@@ -91,8 +91,7 @@ public class ControllerConfiguration {
     }
 
     /**
-     * 
-     * (Required)
+     * (Required).
      * 
      * @return
      *     The name
@@ -103,8 +102,7 @@ public class ControllerConfiguration {
     }
 
     /**
-     * 
-     * (Required)
+     * (Required).
      * 
      * @param name
      *     The name
@@ -121,7 +119,7 @@ public class ControllerConfiguration {
 
     /**
      * Set of operations that can be applied to a controller: create, lock
-     * (Required)
+     * (Required).
      * 
      * @return
      *     The operation
@@ -133,7 +131,7 @@ public class ControllerConfiguration {
 
     /**
      * Set of operations that can be applied to a controller: create, lock
-     * (Required)
+     * (Required).
      * 
      * @param operation
      *     The operation
@@ -149,7 +147,7 @@ public class ControllerConfiguration {
     }
 
     /**
-     * Maven Related Information
+     * Maven Related Information.
      * 
      * @return
      *     The drools
@@ -160,7 +158,7 @@ public class ControllerConfiguration {
     }
 
     /**
-     * Maven Related Information
+     * Maven Related Information.
      * 
      * @param drools
      *     The drools
@@ -224,24 +222,43 @@ public class ControllerConfiguration {
         }
     }
 
+    /**
+     * Get.
+     * 
+     * @param name name
+     * @return the object
+     */
     @SuppressWarnings({
         "unchecked"
-    })
-    public<T >T get(String name) {
+        })
+    public <T> T get(String name) {
         Object value = declaredPropertyOrNotFound(name, ControllerConfiguration.NOT_FOUND_VALUE);
-        if (ControllerConfiguration.NOT_FOUND_VALUE!= value) {
+        if (ControllerConfiguration.NOT_FOUND_VALUE != value) {
             return ((T) value);
         } else {
             return ((T) getAdditionalProperties().get(name));
         }
     }
 
+    /**
+     * Set the property.
+     * 
+     * @param name property name
+     * @param value property value
+     */
     public void set(String name, Object value) {
         if (!declaredProperty(name, value)) {
             getAdditionalProperties().put(name, (Object) value);
         }
     }
 
+    /**
+     * With - sets the property and additionally returns the object.
+     * 
+     * @param name property name
+     * @param value property value
+     * @return this
+     */
     public ControllerConfiguration with(String name, Object value) {
         if (!declaredProperty(name, value)) {
             getAdditionalProperties().put(name, (Object) value);
@@ -251,7 +268,8 @@ public class ControllerConfiguration {
 
     @Override
     public int hashCode() {
-        return new HashCodeBuilder().append(name).append(operation).append(drools).append(additionalProperties).toHashCode();
+        return new HashCodeBuilder().append(name).append(operation).append(drools).append(additionalProperties)
+                .toHashCode();
     }
 
     @Override
@@ -263,30 +281,50 @@ public class ControllerConfiguration {
             return false;
         }
         ControllerConfiguration rhs = ((ControllerConfiguration) other);
-        return new EqualsBuilder().append(name, rhs.name).append(operation, rhs.operation).append(drools, rhs.drools).append(additionalProperties, rhs.additionalProperties).isEquals();
+        return new EqualsBuilder().append(name, rhs.name).append(operation, rhs.operation).append(drools, rhs.drools)
+                .append(additionalProperties, rhs.additionalProperties).isEquals();
     }
     
+    /**
+     * Call set name.
+     * 
+     * @param value value
+     */
     public void callSetName(Object value) {
         if (value instanceof String) {
             setName((String) value);
         } else {
-            throw new IllegalArgumentException("property \"name\" is of type \"java.lang.String\", but got "+ value.getClass().toString());
+            throw new IllegalArgumentException("property \"name\" is of type \"java.lang.String\", but got "
+                    + value.getClass().toString());
         }
     }
     
+    /**
+     * Call set operation.
+     * 
+     * @param value value
+     */
     public void callSetOperation(Object value) {
         if (value instanceof String) {
             setOperation((String) value);
         } else {
-            throw new IllegalArgumentException("property \"operation\" is of type \"java.lang.String\", but got "+ value.getClass().toString());
+            throw new IllegalArgumentException("property \"operation\" is of type \"java.lang.String\", but got "
+                    + value.getClass().toString());
         }
     }
     
+    /**
+     * Call set drools.
+     * 
+     * @param value value
+     */
     public void callSetDrools(Object value) {
         if (value instanceof DroolsConfiguration) {
             setDrools((DroolsConfiguration) value);
         } else {
-            throw new IllegalArgumentException("property \"drools\" is of type \"org.onap.policy.drools.protocol.configuration.Drools\", but got "+ value.getClass().toString());
+            throw new IllegalArgumentException("property \"drools\" is of type"
+                    + "\"org.onap.policy.drools.protocol.configuration.Drools\", but got "
+                    + value.getClass().toString());
         }
     }
 
index cac4f56..e1f7f63 100644 (file)
 
 package org.onap.policy.drools.protocol.configuration;
 
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.HashCodeBuilder;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-
 import com.fasterxml.jackson.annotation.JsonAnyGetter;
 import com.fasterxml.jackson.annotation.JsonAnySetter;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.commons.lang3.builder.EqualsBuilder;
+import org.apache.commons.lang3.builder.HashCodeBuilder;
+import org.apache.commons.lang3.builder.ToStringBuilder;
 
 /**
- * Maven Related Information
+ * Maven Related Information.
  * 
  */
 @JsonInclude(JsonInclude.Include.NON_NULL)
@@ -43,21 +42,23 @@ public class DroolsConfiguration {
 
     /**
      * Maven Artifact ID
-     * (Required)
+     * (Required).
      * 
      */
     @JsonProperty("artifactId")
     private String artifactId;
+    
     /**
      * Maven Group ID
-     * (Required)
+     * (Required).
      * 
      */
     @JsonProperty("groupId")
     private String groupId;
+    
     /**
      * Maven Version
-     * (Required)
+     * (Required).
      * 
      */
     @JsonProperty("version")
@@ -67,18 +68,19 @@ public class DroolsConfiguration {
     protected static final Object NOT_FOUND_VALUE = new Object();
 
     /**
-     * No args constructor for use in serialization
+     * No args constructor for use in serialization.
      * 
      */
     public DroolsConfiguration() {
-       // Empty
+        // Empty
     }
 
     /**
+     * Constructor.
      * 
-     * @param groupId
-     * @param artifactId
-     * @param version
+     * @param groupId group id
+     * @param artifactId artifact id
+     * @param version version
      */
     public DroolsConfiguration(String artifactId, String groupId, String version) {
         this.artifactId = artifactId;
@@ -88,7 +90,7 @@ public class DroolsConfiguration {
 
     /**
      * Maven Artifact ID
-     * (Required)
+     * (Required).
      * 
      * @return
      *     The artifactId
@@ -100,7 +102,7 @@ public class DroolsConfiguration {
 
     /**
      * Maven Artifact ID
-     * (Required)
+     * (Required).
      * 
      * @param artifactId
      *     The artifactId
@@ -117,7 +119,7 @@ public class DroolsConfiguration {
 
     /**
      * Maven Group ID
-     * (Required)
+     * (Required).
      * 
      * @return
      *     The groupId
@@ -129,7 +131,7 @@ public class DroolsConfiguration {
 
     /**
      * Maven Group ID
-     * (Required)
+     * (Required).
      * 
      * @param groupId
      *     The groupId
@@ -146,7 +148,7 @@ public class DroolsConfiguration {
 
     /**
      * Maven Version
-     * (Required)
+     * (Required).
      * 
      * @return
      *     The version
@@ -158,7 +160,7 @@ public class DroolsConfiguration {
 
     /**
      * Maven Version
-     * (Required)
+     * (Required).
      * 
      * @param version
      *     The version
@@ -222,24 +224,43 @@ public class DroolsConfiguration {
         }
     }
 
+    /**
+     * Get declared property.
+     * 
+     * @param name property name
+     * @return the property object
+     */
     @SuppressWarnings({
         "unchecked"
-    })
-    public<T >T get(String name) {
+        })
+    public <T> T get(String name) {
         Object value = declaredPropertyOrNotFound(name, DroolsConfiguration.NOT_FOUND_VALUE);
-        if (DroolsConfiguration.NOT_FOUND_VALUE!= value) {
+        if (DroolsConfiguration.NOT_FOUND_VALUE != value) {
             return (T) value;
         } else {
             return (T) getAdditionalProperties().get(name);
         }
     }
 
+    /**
+     * Set property value.
+     * 
+     * @param name property name
+     * @param value property value
+     */
     public void set(String name, Object value) {
         if (!declaredProperty(name, value)) {
             getAdditionalProperties().put(name, value);
         }
     }
 
+    /**
+     * Set property value and return object.
+     * 
+     * @param name property name
+     * @param value property value
+     * @return this
+     */
     public DroolsConfiguration with(String name, Object value) {
         if (!declaredProperty(name, value)) {
             getAdditionalProperties().put(name, value);
@@ -249,7 +270,8 @@ public class DroolsConfiguration {
 
     @Override
     public int hashCode() {
-        return new HashCodeBuilder().append(artifactId).append(groupId).append(version).append(additionalProperties).toHashCode();
+        return new HashCodeBuilder().append(artifactId).append(groupId).append(version).append(additionalProperties)
+                .toHashCode();
     }
 
     @Override
@@ -261,30 +283,50 @@ public class DroolsConfiguration {
             return false;
         }
         DroolsConfiguration rhs = ((DroolsConfiguration) other);
-        return new EqualsBuilder().append(artifactId, rhs.artifactId).append(groupId, rhs.groupId).append(version, rhs.version).append(additionalProperties, rhs.additionalProperties).isEquals();
+        return new EqualsBuilder().append(artifactId, rhs.artifactId)
+                .append(groupId, rhs.groupId).append(version, rhs.version)
+                .append(additionalProperties, rhs.additionalProperties).isEquals();
     }
     
+    /**
+     * Call set artifact id.
+     * 
+     * @param value id
+     */
     public void callSetArtifactId(Object value) {
         if (value instanceof String) {
             setArtifactId((String) value);
         } else {
-            throw new IllegalArgumentException("property \"artifactId\" is of type \"java.lang.String\", but got "+ value.getClass().toString());
+            throw new IllegalArgumentException("property \"artifactId\" is of type \"java.lang.String\", but got "
+        + value.getClass().toString());
         }
     }
 
+    /**
+     * Call set group id.
+     * 
+     * @param value id
+     */
     public void callSetGroupId(Object value) {
         if (value instanceof String) {
             setGroupId((String) value);
         } else {
-            throw new IllegalArgumentException("property \"groupId\" is of type \"java.lang.String\", but got "+ value.getClass().toString());
+            throw new IllegalArgumentException("property \"groupId\" is of type \"java.lang.String\", but got "
+                    + value.getClass().toString());
         }
     }
 
+    /**
+     * Call set version.
+     * 
+     * @param value version
+     */
     public void callSetVersion(Object value) {
         if (value instanceof String) {
             setVersion((String) value);
         } else {
-            throw new IllegalArgumentException("property \"version\" is of type \"java.lang.String\", but got "+ value.getClass().toString());
+            throw new IllegalArgumentException("property \"version\" is of type \"java.lang.String\", but got "
+                    + value.getClass().toString());
         }
     }
 }
index 29888bb..58cd67f 100644 (file)
 
 package org.onap.policy.drools.protocol.configuration;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
 import com.fasterxml.jackson.annotation.JsonAnyGetter;
 import com.fasterxml.jackson.annotation.JsonAnySetter;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 import org.apache.commons.lang3.builder.EqualsBuilder;
 import org.apache.commons.lang3.builder.HashCodeBuilder;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 
 /**
- * ENGINE-CONFIGURATION
- * <p>
- * 
- * 
+ * ENGINE-CONFIGURATION.
  */
 @JsonInclude(JsonInclude.Include.NON_NULL)
 public class PdpdConfiguration {
-       
-       /**
-        * Controller Entity ID
-        */
-       public static final String CONFIG_ENTITY_CONTROLLER = "controller";
 
-    /**
-     * Unique Transaction ID.   This is an UUID.
-     * (Required)
-     * 
-     */
+    /** Controller Entity ID. */
+    public static final String CONFIG_ENTITY_CONTROLLER = "controller";
+
+    /** Unique Transaction ID. This is an UUID. (Required) */
     @JsonProperty("requestID")
     private String requestID;
-    /**
-     * Set of entities on which configuration can be performed: controller
-     * (Required)
-     * 
-     */
+    /* Set of entities on which configuration can be performed: controller (Required) */
     @JsonProperty("entity")
     private String entity;
-    /**
-     * Controller Information, only applicable when the entity is set to controller
-     * 
-     */
+    /* Controller Information, only applicable when the entity is set to controller */
     @JsonProperty("controllers")
     private List<ControllerConfiguration> controllers = new ArrayList<>();
-    @JsonIgnore
-    private Map<String, Object> additionalProperties = new HashMap<>();
+
+    @JsonIgnore private Map<String, Object> additionalProperties = new HashMap<>();
     protected static final Object NOT_FOUND_VALUE = new Object();
 
-    /**
-     * No args constructor for use in serialization
-     * 
-     */
+    /** No args constructor for use in serialization. */
     public PdpdConfiguration() {
-       // Empty
+        // Empty
     }
 
     /**
+     * Constructor.
      * 
-     * @param controller
-     * @param requestID
-     * @param entity
+     * @param requestID request id
+     * @param entity entity
+     * @param controllers controllers
      */
-    public PdpdConfiguration(String requestID, String entity, List<ControllerConfiguration> controllers) {
+    public PdpdConfiguration(
+            String requestID, String entity, List<ControllerConfiguration> controllers) {
         this.requestID = requestID;
         this.entity = entity;
         this.controllers = controllers;
     }
 
     /**
-     * Unique Transaction ID.   This is an UUID.
-     * (Required)
-     * 
-     * @return
-     *     The requestID
+     * Unique Transaction ID. This is an UUID. (Required)
+     *
+     * @return The requestID
      */
     @JsonProperty("requestID")
     public String getRequestID() {
@@ -105,11 +86,9 @@ public class PdpdConfiguration {
     }
 
     /**
-     * Unique Transaction ID.   This is an UUID.
-     * (Required)
-     * 
-     * @param requestID
-     *     The requestID
+     * Unique Transaction ID. This is an UUID. (Required)
+     *
+     * @param requestID The requestID
      */
     @JsonProperty("requestID")
     public void setRequestID(String requestID) {
@@ -122,11 +101,9 @@ public class PdpdConfiguration {
     }
 
     /**
-     * Set of entities on which configuration can be performed: controller
-     * (Required)
-     * 
-     * @return
-     *     The entity
+     * Set of entities on which configuration can be performed: controller (Required).
+     *
+     * @return The entity
      */
     @JsonProperty("entity")
     public String getEntity() {
@@ -134,11 +111,9 @@ public class PdpdConfiguration {
     }
 
     /**
-     * Set of entities on which configuration can be performed: controller
-     * (Required)
-     * 
-     * @param entity
-     *     The entity
+     * Set of entities on which configuration can be performed: controller (Required).
+     *
+     * @param entity The entity
      */
     @JsonProperty("entity")
     public void setEntity(String entity) {
@@ -151,10 +126,9 @@ public class PdpdConfiguration {
     }
 
     /**
-     * Controller Information, only applicable when the entity is set to controller
-     * 
-     * @return
-     *     The controller
+     * Controller Information, only applicable when the entity is set to controller.
+     *
+     * @return The controller
      */
     @JsonProperty("controller")
     public List<ControllerConfiguration> getControllers() {
@@ -162,10 +136,9 @@ public class PdpdConfiguration {
     }
 
     /**
-     * Controller Information, only applicable when the entity is set to controller
-     * 
-     * @param controller
-     *     The controller
+     * Controller Information, only applicable when the entity is set to controller.
+     *
+     * @param controllers controllers
      */
     @JsonProperty("controller")
     public void setControllers(List<ControllerConfiguration> controllers) {
@@ -226,24 +199,37 @@ public class PdpdConfiguration {
         }
     }
 
-    @SuppressWarnings({
-        "unchecked"
-    })
-    public<T >T get(String name) {
+    /**
+     * Get.
+     * 
+     * @param name name
+     * @return object
+     */
+    @SuppressWarnings({"unchecked"})
+    public <T> T get(String name) {
         Object value = declaredPropertyOrNotFound(name, PdpdConfiguration.NOT_FOUND_VALUE);
-        if (PdpdConfiguration.NOT_FOUND_VALUE!= value) {
+        if (PdpdConfiguration.NOT_FOUND_VALUE != value) {
             return (T) value;
         } else {
             return (T) getAdditionalProperties().get(name);
         }
     }
 
+    /**
+     * Set property.
+     * 
+     * @param name name
+     * @param value value
+     */
     public void set(String name, Object value) {
         if (!declaredProperty(name, value)) {
             getAdditionalProperties().put(name, value);
         }
     }
 
+    /**
+     * With - sets and returns the object.
+     */
     public PdpdConfiguration with(String name, Object value) {
         if (!declaredProperty(name, value)) {
             getAdditionalProperties().put(name, value);
@@ -253,7 +239,12 @@ public class PdpdConfiguration {
 
     @Override
     public int hashCode() {
-        return new HashCodeBuilder().append(requestID).append(entity).append(controllers).append(additionalProperties).toHashCode();
+        return new HashCodeBuilder()
+                .append(requestID)
+                .append(entity)
+                .append(controllers)
+                .append(additionalProperties)
+                .toHashCode();
     }
 
     @Override
@@ -265,31 +256,59 @@ public class PdpdConfiguration {
             return false;
         }
         PdpdConfiguration rhs = (PdpdConfiguration) other;
-        return new EqualsBuilder().append(requestID, rhs.requestID).append(entity, rhs.entity).append(controllers, rhs.controllers).append(additionalProperties, rhs.additionalProperties).isEquals();
+        return new EqualsBuilder()
+                .append(requestID, rhs.requestID)
+                .append(entity, rhs.entity)
+                .append(controllers, rhs.controllers)
+                .append(additionalProperties, rhs.additionalProperties)
+                .isEquals();
     }
-    
+
+    /**
+     * Call set request id.
+     * 
+     * @param value value
+     */
     public void callSetRequestId(Object value) {
         if (value instanceof String) {
             setRequestID((String) value);
         } else {
-            throw new IllegalArgumentException("property \"requestID\" is of type \"java.lang.String\", but got "+ value.getClass().toString());
-        }       
+            throw new IllegalArgumentException(
+                    "property \"requestID\" is of type \"java.lang.String\", but got "
+                            + value.getClass().toString());
+        }
     }
-    
+
+    /**
+     * Call set entity.
+     * 
+     * @param value value
+     */
     public void callSetEntity(Object value) {
         if (value instanceof String) {
             setEntity((String) value);
         } else {
-            throw new IllegalArgumentException("property \"entity\" is of type \"java.lang.String\", but got "+ value.getClass().toString());
-        }       
+            throw new IllegalArgumentException(
+                    "property \"entity\" is of type \"java.lang.String\", but got "
+                            + value.getClass().toString());
+        }
     }
 
+    /**
+     * Call set controllers.
+     * 
+     * @param value value
+     */
     @SuppressWarnings("unchecked")
-       public void callSetControllers(Object value) {
+    public void callSetControllers(Object value) {
         if (value instanceof List) {
-            setControllers((List<ControllerConfiguration> ) value);
+            setControllers((List<ControllerConfiguration>) value);
         } else {
-            throw new IllegalArgumentException("property \"controllers\" is of type \"java.util.List<org.onap.policy.drools.protocol.configuration.Controller>\", but got "+ value.getClass().toString());
-        }        
+            throw new IllegalArgumentException(
+                    "property \"controllers\" is of type "
+                            + "\"java.util.List<org.onap.policy.drools.protocol.configuration.Controller>\", "
+                            + "but got "
+                            + value.getClass().toString());
+        }
     }
 }
index 00da884..64fd682 100644 (file)
 package org.onap.policy.drools.server.restful;
 
 import ch.qos.logback.classic.LoggerContext;
-
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import io.swagger.annotations.Info;
+import io.swagger.annotations.SwaggerDefinition;
+import io.swagger.annotations.Tag;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashMap;
@@ -70,18 +77,9 @@ import org.onap.policy.drools.utils.logging.LoggerUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import io.swagger.annotations.Info;
-import io.swagger.annotations.SwaggerDefinition;
-import io.swagger.annotations.Tag;
-
 
 /**
- * Telemetry JAX-RS Interface to the PDP-D
+ * Telemetry JAX-RS Interface to the PDP-D.
  */
 
 @Path("/policy/pdp")
@@ -94,10 +92,15 @@ import io.swagger.annotations.Tag;
         tags = {@Tag(name = "pdp-d-telemetry", description = "Drools PDP Telemetry Operations")})
 public class RestManager {
     /**
-     * Logger
+     * Logger.
      */
     private static Logger logger = LoggerFactory.getLogger(RestManager.class);
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine")
     @ApiOperation(value = "Retrieves the Engine Operational Status",
@@ -106,6 +109,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyEngine.manager).build();
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine")
     @ApiOperation(value = "Shuts down the Engine",
@@ -122,6 +130,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyEngine.manager).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/features")
     @ApiOperation(value = "Engine Features",
@@ -139,6 +152,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyEngine.manager.getFeatureProviders()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/features/{featureName}")
     @ApiOperation(value = "Engine Feature", notes = "Provides Details for a given feature Engine Provider",
@@ -155,6 +173,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/inputs")
     @ApiOperation(value = "Engine Input Ports", notes = "List of input ports", responseContainer = "List")
@@ -162,6 +185,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(Arrays.asList(Inputs.values())).build();
     }
 
+    /**
+     * POST.
+     * 
+     * @return response object
+     */
     @POST
     @Path("engine/inputs/configuration")
     @ApiOperation(value = "Engine Input Configuration Requests",
@@ -186,6 +214,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/properties")
     @ApiOperation(value = "Engine Configuration Properties", notes = "Used for booststrapping the engine",
@@ -194,6 +227,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyEngine.manager.getProperties()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/environment")
     @ApiOperation(value = "Engine Environment Properties",
@@ -202,6 +240,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyEngine.manager.getEnvironment()).build();
     }
 
+    /**
+    * GET.
+    * 
+    * @return response object
+    */
     @GET
     @Path("engine/environment/{envProperty}")
     @Consumes(MediaType.TEXT_PLAIN)
@@ -212,6 +255,11 @@ public class RestManager {
                 .build();
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/environment/{envProperty}")
     @Consumes(MediaType.TEXT_PLAIN)
@@ -224,6 +272,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(previousValue).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/switches")
     @ApiOperation(value = "Engine Control Switches", notes = "List of the Engine Control Switches",
@@ -232,6 +285,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(Arrays.asList(Switches.values())).build();
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/switches/activation")
     @ApiOperation(value = "Switches on the Engine Activation Switch",
@@ -255,6 +313,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/switches/activation")
     @ApiOperation(value = "Switches off Engine Activation Switch",
@@ -278,6 +341,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/switches/lock")
     @ApiOperation(value = "Switches on the Engine Lock Control",
@@ -294,6 +362,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/switches/lock")
     @ApiOperation(value = "Switches off the Lock control",
@@ -310,6 +383,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers")
     @ApiOperation(value = "Lists the Policy Controllers Names", notes = "Unique Policy Controller Identifiers",
@@ -318,6 +396,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyEngine.manager.getPolicyControllerIds()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/inventory")
     @ApiOperation(value = "Lists the Policy Controllers", notes = "Detailed list of Policy Controllers",
@@ -326,6 +409,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyEngine.manager.getPolicyControllers()).build();
     }
 
+    /**
+    * POST.
+    * 
+    * @return response object
+    */
     @POST
     @Path("engine/controllers")
     @ApiOperation(value = "Creates and starts a new Policy Controller",
@@ -389,6 +477,11 @@ public class RestManager {
         return Response.status(Response.Status.CREATED).entity(controller).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/features")
     @ApiOperation(value = "Lists of Feature Providers Identifiers", notes = "Unique Policy Controller Identifiers",
@@ -397,6 +490,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyEngine.manager.getFeatures()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/features/inventory")
     @ApiOperation(value = "Detailed Controllers Feature Inventory",
@@ -406,6 +504,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(PolicyController.factory.getFeatureProviders()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/features/{featureName}")
     @ApiOperation(value = "Controller Feature",
@@ -423,6 +526,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}")
     @ApiOperation(value = "Retrieves a Policy Controller",
@@ -447,6 +555,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/controllers/{controller}")
     @ApiOperation(value = "Deletes a Policy Controller",
@@ -489,6 +602,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(controller).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/properties")
     @ApiOperation(value = "Retrieves the configuration properties of a Policy Controller",
@@ -512,6 +630,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/inputs")
     @ApiOperation(value = "Policy Controller Input Ports", notes = "List of input ports", responseContainer = "List")
@@ -519,6 +642,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(Arrays.asList(Inputs.values())).build();
     }
 
+    /**
+     * POST.
+     * 
+     * @return response object
+     */
     @POST
     @Path("engine/controllers/{controller}/inputs/configuration")
     @ApiOperation(value = "Policy Controller Input Configuration Requests",
@@ -558,6 +686,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(controller).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/switches")
     @ApiOperation(value = "Policy Controller Switches", notes = "List of the Policy Controller Switches",
@@ -566,6 +699,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(Arrays.asList(Switches.values())).build();
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/controllers/{controller}/switches/lock")
     @ApiOperation(value = "Switches on the Policy Controller Lock Control",
@@ -584,6 +722,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/controllers/{controller}/switches/lock")
     @ApiOperation(value = "Switches off the Policy Controller Lock Control",
@@ -602,6 +745,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/drools")
     @ApiOperation(value = "Retrieves the Drools Controller subcomponent of the Policy Controller",
@@ -625,6 +773,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/drools/facts")
     @ApiOperation(value = "Retrieves Facts Summary information for a given controller",
@@ -652,6 +805,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/drools/facts/{session}")
     @ApiOperation(value = "Retrieves Fact Types (classnames) for a given controller and its count",
@@ -676,6 +834,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/drools/facts/{session}/{factType}")
     @ApiOperation(
@@ -710,47 +873,16 @@ public class RestManager {
         }
     }
 
-    @DELETE
-    @Path("engine/controllers/{controller}/drools/facts/{session}/{factType}")
-    @ApiOperation(
-            value = "Deletes all the fact objects of a given type from the drools working memory"
-                    + "for a given controller and session.   The objects retracted from the working "
-                    + "memory are provided in the response.",
-            notes = "The fact types are the classnames of the objects inserted in the drools working memory",
-            responseContainer = "List")
-    @ApiResponses(value = {@ApiResponse(code = 404, message = "The controller, session, or fact type, cannot be found"),
-            @ApiResponse(code = 406,
-                    message = "The system is an administrative state that prevents " + "this request to be fulfilled"),
-            @ApiResponse(code = 500, message = "A server error has occurred processing this request")})
-    public Response droolsFactsDelete(
-            @ApiParam(value = "Policy Controller Name", required = true) @PathParam("controller") String controllerName,
-            @ApiParam(value = "Drools Session Name", required = true) @PathParam("session") String sessionName,
-            @ApiParam(value = "Drools Fact Type", required = true) @PathParam("factType") String factType) {
-        try {
-            final DroolsController drools = this.getDroolsController(controllerName);
-            final List<Object> facts = drools.facts(sessionName, factType, true);
-            return Response.status(Response.Status.OK).entity(facts).build();
-        } catch (final IllegalArgumentException e) {
-            logger.debug("{}: cannot get: drools-controller {}, session {}, factType {}, because of {}", this,
-                    controllerName, sessionName, factType, e.getMessage(), e);
-            return Response.status(Response.Status.NOT_FOUND)
-                    .entity(new Error(controllerName + ":" + sessionName + ":" + factType + " not found")).build();
-        } catch (final IllegalStateException e) {
-            logger.debug("{}: cannot get: drools-controller {}, session {}, factType {}, because of {}", this,
-                    controllerName, sessionName, factType, e.getMessage(), e);
-            return Response.status(Response.Status.NOT_ACCEPTABLE)
-                    .entity(new Error(controllerName + ":" + sessionName + ":" + factType + " not acceptable")).build();
-        } catch (final Exception e) {
-            logger.debug("{}: cannot get: drools-controller {}, session {}, factType {}, because of {}", this,
-                    controllerName, sessionName, factType, e.getMessage(), e);
-            return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(new Error(e.getMessage())).build();
-        }
-    }
-
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/drools/facts/{session}/{query}/{queriedEntity}")
     @ApiOperation(
-            value = "Gets all the fact objects returned by a DRL query with no parameters from the drools working memory"
+            value = "Gets all the fact objects returned by a DRL query with no parameters "
+                    + "from the drools working memory"
                     + "for a given controller and session",
             notes = "The DRL query must be defined in the DRL file", responseContainer = "List")
     @ApiResponses(value = {
@@ -794,6 +926,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * POST.
+     * 
+     * @return response object
+     */
     @POST
     @Path("engine/controllers/{controller}/drools/facts/{session}/{query}/{queriedEntity}")
     @ApiOperation(
@@ -846,10 +983,58 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
+    @DELETE
+    @Path("engine/controllers/{controller}/drools/facts/{session}/{factType}")
+    @ApiOperation(
+            value = "Deletes all the fact objects of a given type from the drools working memory"
+                    + "for a given controller and session.   The objects retracted from the working "
+                    + "memory are provided in the response.",
+            notes = "The fact types are the classnames of the objects inserted in the drools working memory",
+            responseContainer = "List")
+    @ApiResponses(value = {@ApiResponse(code = 404, message = "The controller, session, or fact type, cannot be found"),
+            @ApiResponse(code = 406,
+                    message = "The system is an administrative state that prevents " + "this request to be fulfilled"),
+            @ApiResponse(code = 500, message = "A server error has occurred processing this request")})
+    public Response droolsFactsDelete(
+            @ApiParam(value = "Policy Controller Name", required = true) @PathParam("controller") String controllerName,
+            @ApiParam(value = "Drools Session Name", required = true) @PathParam("session") String sessionName,
+            @ApiParam(value = "Drools Fact Type", required = true) @PathParam("factType") String factType) {
+        try {
+            final DroolsController drools = this.getDroolsController(controllerName);
+            final List<Object> facts = drools.facts(sessionName, factType, true);
+            return Response.status(Response.Status.OK).entity(facts).build();
+        } catch (final IllegalArgumentException e) {
+            logger.debug("{}: cannot get: drools-controller {}, session {}, factType {}, because of {}", this,
+                    controllerName, sessionName, factType, e.getMessage(), e);
+            return Response.status(Response.Status.NOT_FOUND)
+                    .entity(new Error(controllerName + ":" + sessionName + ":" + factType + " not found")).build();
+        } catch (final IllegalStateException e) {
+            logger.debug("{}: cannot get: drools-controller {}, session {}, factType {}, because of {}", this,
+                    controllerName, sessionName, factType, e.getMessage(), e);
+            return Response.status(Response.Status.NOT_ACCEPTABLE)
+                    .entity(new Error(controllerName + ":" + sessionName + ":" + factType + " not acceptable")).build();
+        } catch (final Exception e) {
+            logger.debug("{}: cannot get: drools-controller {}, session {}, factType {}, because of {}", this,
+                    controllerName, sessionName, factType, e.getMessage(), e);
+            return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(new Error(e.getMessage())).build();
+        }
+    }
+
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/controllers/{controller}/drools/facts/{session}/{query}/{queriedEntity}")
     @ApiOperation(
-            value = "Deletes all the fact objects returned by a DRL query with parameters from the drools working memory"
+            value = "Deletes all the fact objects returned by a DRL query with parameters "
+                    + "from the drools working memory "
                     + "for a given controller and session",
             notes = "The DRL query with parameters must be defined in the DRL file", responseContainer = "List")
     @ApiResponses(value = {
@@ -898,6 +1083,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * POST.
+     * 
+     * @return response object
+     */
     @POST
     @Path("engine/controllers/tools/coders/decoders/filters/rules/{ruleName}")
     @ApiOperation(value = "Produces a Decoder Rule Filter in a format that the Policy Controller can understand",
@@ -915,6 +1105,11 @@ public class RestManager {
         return Response.status(Status.OK).entity(new JsonProtocolFilter.FilterRule(name, literalRegex)).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/decoders")
     @ApiOperation(value = "Gets all the decoders used by a controller",
@@ -945,6 +1140,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/decoders/filters")
     @ApiOperation(value = "Gets all the filters used by a controller",
@@ -976,6 +1176,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/decoders/{topic}")
     @ApiOperation(value = "Gets all the decoders in use by a controller for a networked topic",
@@ -1008,6 +1213,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/decoders/{topic}/filters")
     @ApiOperation(value = "Gets all filters attached to decoders for a given networked topic in use by a controller",
@@ -1046,6 +1256,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/decoders/{topic}/filters/{factType}")
     @ApiOperation(
@@ -1086,6 +1301,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/controllers/{controller}/decoders/{topic}/filters/{factType}")
     @ApiOperation(value = "Attaches filters to the decoder for a given networked topic " + "and fact type",
@@ -1137,6 +1357,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/decoders/{topic}/filters/{factType}/rules")
     @ApiOperation(value = "Gets the filter rules attached to a topic decoder of a controller",
@@ -1183,6 +1408,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/decoders/{topic}/filters/{factType}/rules/{ruleName}")
     @ApiOperation(value = "Gets a filter rule by name attached to a topic decoder of a controller",
@@ -1236,6 +1466,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/controllers/{controller}/decoders/{topic}/filters/{factType}/rules/{ruleName}")
     @ApiOperation(value = "Deletes a filter rule by name attached to a topic decoder of a controller",
@@ -1303,6 +1538,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/controllers/{controller}/decoders/{topic}/filters/{factType}/rules")
     @ApiOperation(value = "Places a new filter rule in a topic decoder",
@@ -1347,19 +1587,26 @@ public class RestManager {
             return Response.status(Response.Status.OK).entity(filter.getRules()).build();
         } catch (final IllegalArgumentException e) {
             logger.debug(
-                    "{}: cannot access decoder filter rules for policy-controller {} topic {} type {} rule {} because of {}",
-                    this, controllerName, topic, factClass, ruleName, e.getMessage(), e);
+                    "{}: cannot access decoder filter rules for policy-controller {} "
+                            + "topic {} type {} rule {} because of {}",
+                            this, controllerName, topic, factClass, ruleName, e.getMessage(), e);
             return Response.status(Response.Status.NOT_FOUND)
                     .entity(new Error(controllerName + ":" + topic + ":" + factClass + " not found")).build();
         } catch (final IllegalStateException e) {
             logger.debug(
-                    "{}: cannot access decoder filter rules for policy-controller {} topic {} type {} rule {} because of {}",
-                    this, controllerName, topic, factClass, ruleName, e.getMessage(), e);
+                    "{}: cannot access decoder filter rules for policy-controller {} "
+                            + "topic {} type {} rule {} because of {}",
+                            this, controllerName, topic, factClass, ruleName, e.getMessage(), e);
             return Response.status(Response.Status.NOT_ACCEPTABLE)
                     .entity(new Error(controllerName + ":" + topic + ":" + factClass + " not acceptable")).build();
         }
     }
 
+    /**
+     * POST.
+     * 
+     * @return response object
+     */
     @POST
     @Path("engine/controllers/{controller}/decoders/{topic}")
     @Consumes(MediaType.TEXT_PLAIN)
@@ -1416,6 +1663,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(result).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/controllers/{controller}/encoders")
     @ApiOperation(value = "Retrieves the encoder filters of a controller",
@@ -1461,6 +1713,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(Arrays.asList(Switches.values())).build();
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/topics/switches/lock")
     @ApiOperation(value = "Locks all the managed topics", notes = "The operation affects all managed sources and sinks",
@@ -1476,6 +1733,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/topics/switches/lock")
     @ApiOperation(value = "Unlocks all the managed topics",
@@ -1491,6 +1753,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources")
     @ApiOperation(value = "Retrieves the managed topic sources", notes = "Network Topic Sources Agregation",
@@ -1499,6 +1766,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getTopicSources()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks")
     @ApiOperation(value = "Retrieves the managed topic sinks", notes = "Network Topic Sinks Agregation",
@@ -1507,6 +1779,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getTopicSinks()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources/ueb")
     @ApiOperation(value = "Retrieves the UEB managed topic sources", notes = "UEB Topic Sources Agregation",
@@ -1515,6 +1792,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getUebTopicSources()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/ueb")
     @ApiOperation(value = "Retrieves the UEB managed topic sinks", notes = "UEB Topic Sinks Agregation",
@@ -1523,6 +1805,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getUebTopicSinks()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources/dmaap")
     @ApiOperation(value = "Retrieves the DMaaP managed topic sources", notes = "DMaaP Topic Sources Agregation",
@@ -1531,6 +1818,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getDmaapTopicSources()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/dmaap")
     @ApiOperation(value = "Retrieves the DMaaP managed topic sinks", notes = "DMaaP Topic Sinks Agregation",
@@ -1539,6 +1831,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getDmaapTopicSinks()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources/ueb/{topic}")
     @ApiOperation(value = "Retrieves an UEB managed topic source",
@@ -1548,6 +1845,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getUebTopicSource(topic)).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/ueb/{topic}")
     @ApiOperation(value = "Retrieves an UEB managed topic sink",
@@ -1557,6 +1859,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getUebTopicSink(topic)).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources/dmaap/{topic}")
     @ApiOperation(value = "Retrieves a DMaaP managed topic source",
@@ -1567,6 +1874,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getDmaapTopicSource(topic)).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/dmaap/{topic}")
     @ApiOperation(value = "Retrieves a DMaaP managed topic sink",
@@ -1576,6 +1888,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getDmaapTopicSink(topic)).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources/ueb/{topic}/events")
     @ApiOperation(value = "Retrieves the latest events received by an UEB topic",
@@ -1586,6 +1903,11 @@ public class RestManager {
                 .entity(Arrays.asList(TopicEndpoint.manager.getUebTopicSource(topic).getRecentEvents())).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/ueb/{topic}/events")
     @ApiOperation(value = "Retrieves the latest events sent from a topic",
@@ -1596,6 +1918,11 @@ public class RestManager {
                 .entity(Arrays.asList(TopicEndpoint.manager.getUebTopicSink(topic).getRecentEvents())).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources/dmaap/{topic}/events")
     @ApiOperation(value = "Retrieves the latest events received by a DMaaP topic",
@@ -1607,6 +1934,11 @@ public class RestManager {
                 .entity(Arrays.asList(TopicEndpoint.manager.getDmaapTopicSource(topic).getRecentEvents())).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/dmaap/{topic}/events")
     @ApiOperation(value = "Retrieves the latest events send through a DMaaP topic",
@@ -1617,6 +1949,11 @@ public class RestManager {
                 .entity(Arrays.asList(TopicEndpoint.manager.getDmaapTopicSink(topic).getRecentEvents())).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/noop")
     @ApiOperation(value = "Retrieves the NOOP managed topic sinks", notes = "NOOP Topic Sinks Agregation",
@@ -1625,6 +1962,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getNoopTopicSinks()).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/noop/{topic}")
     @ApiOperation(value = "Retrieves a NOOP managed topic sink",
@@ -1633,6 +1975,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(TopicEndpoint.manager.getNoopTopicSink(topic)).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sinks/noop/{topic}/events")
     @ApiOperation(value = "Retrieves the latest events send through a NOOP topic",
@@ -1642,6 +1989,11 @@ public class RestManager {
                 .entity(Arrays.asList(TopicEndpoint.manager.getNoopTopicSink(topic).getRecentEvents())).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources/ueb/{topic}/switches")
     @ApiOperation(value = "UEB Topic Control Switches", notes = "List of the UEB Topic Control Switches",
@@ -1650,6 +2002,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(Arrays.asList(Switches.values())).build();
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/topics/sources/ueb/{topic}/switches/lock")
     @ApiOperation(value = "Locks an UEB Source topic", response = UebTopicSource.class)
@@ -1665,6 +2022,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/topics/sources/ueb/{topic}/switches/lock")
     @ApiOperation(value = "Unlocks an UEB Source topic", response = UebTopicSource.class)
@@ -1684,6 +2046,11 @@ public class RestManager {
         return new Error("cannot perform operation on " + topic);
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/topics/sources/dmaap/{topic}/switches")
     @ApiOperation(value = "DMaaP Topic Control Switches", notes = "List of the DMaaP Topic Control Switches",
@@ -1692,6 +2059,11 @@ public class RestManager {
         return Response.status(Response.Status.OK).entity(Arrays.asList(Switches.values())).build();
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/topics/sources/dmaap/{topic}/switches/lock")
     @ApiOperation(value = "Locks an DMaaP Source topic", response = DmaapTopicSource.class)
@@ -1707,6 +2079,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * DELETE.
+     * 
+     * @return response object
+     */
     @DELETE
     @Path("engine/topics/sources/dmaap/{topic}/switches/lock")
     @ApiOperation(value = "Unlocks an DMaaP Source topic", response = DmaapTopicSource.class)
@@ -1723,6 +2100,11 @@ public class RestManager {
         }
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/topics/sources/ueb/{topic}/events")
     @Consumes(MediaType.TEXT_PLAIN)
@@ -1762,6 +2144,11 @@ public class RestManager {
         logger.debug("{}: cannot offer for encoder ueb topic for {} because of {}", this, topic, ex.getMessage(), ex);
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/topics/sources/dmaap/{topic}/events")
     @Consumes(MediaType.TEXT_PLAIN)
@@ -1801,6 +2188,11 @@ public class RestManager {
         logger.debug("{}: cannot offer for encoder dmaap topic for {} because of {}", this, topic, ex.getMessage(), ex);
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/tools/uuid")
     @ApiOperation(value = "Produces an UUID", notes = "UUID generation utility")
@@ -1809,6 +2201,11 @@ public class RestManager {
         return Response.status(Status.OK).entity(UUID.randomUUID().toString()).build();
     }
 
+    /**
+    * GET.
+    * 
+    * @return response object
+    */
     @GET
     @Path("engine/tools/loggers")
     @ApiOperation(value = "all active loggers", responseContainer = "List")
@@ -1828,6 +2225,11 @@ public class RestManager {
         return Response.status(Status.OK).entity(names).build();
     }
 
+    /**
+     * GET.
+     * 
+     * @return response object
+     */
     @GET
     @Path("engine/tools/loggers/{logger}")
     @Produces(MediaType.TEXT_PLAIN)
@@ -1851,6 +2253,11 @@ public class RestManager {
         return Response.status(Status.OK).entity(loggerLevel).build();
     }
 
+    /**
+     * PUT.
+     * 
+     * @return response object
+     */
     @PUT
     @Path("engine/tools/loggers/{logger}/{level}")
     @Produces(MediaType.TEXT_PLAIN)
@@ -1878,7 +2285,7 @@ public class RestManager {
     }
 
     /**
-     * gets the underlying drools controller from the named policy controller
+     * gets the underlying drools controller from the named policy controller.
      *
      * @param controllerName the policy controller name
      * @return the underlying drools controller
@@ -1910,22 +2317,22 @@ public class RestManager {
     }
 
     /**
-     * Coding/Encoding Results Aggregation Helper class
+     * Coding/Encoding Results Aggregation Helper class.
      */
     public static class CodingResult {
         /**
-         * serialized output
+         * serialized output.
          */
 
         private String jsonEncoding;
         /**
-         * encoding result
+         * encoding result.
          */
 
         private Boolean encoding;
 
         /**
-         * decoding result
+         * decoding result.
          */
         private Boolean decoding;
 
@@ -1955,7 +2362,7 @@ public class RestManager {
     }
 
     /**
-     * Generic Error Reporting class
+     * Generic Error Reporting class.
      */
     public static class Error {
         private String msg;
@@ -1974,14 +2381,14 @@ public class RestManager {
     }
 
     /**
-     * Feed Ports into Resources
+     * Feed Ports into Resources.
      */
     public enum Inputs {
         configuration,
     }
 
     /**
-     * Resource Toggles
+     * Resource Toggles.
      */
     public enum Switches {
         activation, lock,
index 0c8465a..955fb24 100644 (file)
@@ -24,12 +24,12 @@ import org.onap.policy.common.endpoints.http.server.aaf.AafAuthFilter;
 import org.onap.policy.drools.system.PolicyEngine;
 
 /**
- * AAF Base Class
+ * AAF Base Class.
  */
 public abstract class AafBase extends AafAuthFilter {
     public static final String AAF_NODETYPE = "pdpd";
     public static final String AAF_ROOT_PERMISSION_PROPERTY = "aaf.root.permission";
     public static final String AAF_ROOT_PERMISSION =
-        PolicyEngine.manager.getProperties().getProperty
-            (AAF_ROOT_PERMISSION_PROPERTY, DEFAULT_NAMESPACE + "." + AAF_NODETYPE);
+        PolicyEngine.manager.getProperties().getProperty(
+                AAF_ROOT_PERMISSION_PROPERTY, DEFAULT_NAMESPACE + "." + AAF_NODETYPE);
 }
index f2e50ee..f76b3de 100644 (file)
@@ -24,7 +24,7 @@ import javax.servlet.http.HttpServletRequest;
 import org.onap.policy.common.utils.network.NetworkUtil;
 
 /**
- * AAF Telemetry Authorization
+ * AAF Telemetry Authorization.
  */
 public class AafTelemetryAuthFilter extends AafBase {
     private static final String RESOURCE_TYPE = AAF_ROOT_PERMISSION + "." + "telemetry";
index c895683..79268b2 100644 (file)
@@ -32,130 +32,167 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Programmatic entry point to the management layer
+ * Programmatic entry point to the management layer.
  */
 public class Main {
 
-  /**
-   * logback configuration file system property
-   */
-  public static final String LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY =
-      "logback.configurationFile";
-
-  /**
-   * logback configuration file system property
-   */
-  public static final String LOGBACK_CONFIGURATION_FILE_DEFAULT = "config/logback.xml";
-
-  /**
-   * constructor (hides public default one)
-   */
-  private Main() {}
-
-  /**
-   * main
-   *
-   * @param args program arguments
-   */
-  public static void main(String[] args) {
-
-    /* logging defaults */
-
-    if (System.getProperty(LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY) == null) {
-      if (Files.exists(Paths.get(LOGBACK_CONFIGURATION_FILE_DEFAULT))) {
-        System.setProperty(LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY,
-            LOGBACK_CONFIGURATION_FILE_DEFAULT);
-      } else {
-        LoggerUtil.setLevel(LoggerUtil.ROOT_LOGGER, ch.qos.logback.classic.Level.INFO.toString());
-      }
+    /** logback configuration file system property. */
+    public static final String LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY =
+            "logback.configurationFile";
+
+    /** logback configuration file system property. */
+    public static final String LOGBACK_CONFIGURATION_FILE_DEFAULT = "config/logback.xml";
+
+    /** constructor (hides public default one). */
+    private Main() {}
+
+    /**
+     * main.
+     *
+     * @param args program arguments.
+     */
+    public static void main(String[] args) {
+
+        /* logging defaults */
+
+        if (System.getProperty(LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY) == null) {
+            if (Files.exists(Paths.get(LOGBACK_CONFIGURATION_FILE_DEFAULT))) {
+                System.setProperty(
+                        LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY, LOGBACK_CONFIGURATION_FILE_DEFAULT);
+            } else {
+                LoggerUtil.setLevel(LoggerUtil.ROOT_LOGGER, ch.qos.logback.classic.Level.INFO.toString());
+            }
+        }
+
+        /* make sure the default configuration directory is properly set up */
+
+        SystemPersistence.manager.setConfigurationDir(null);
+
+        /* logging defaults */
+
+        if (System.getProperty(LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY) == null) {
+            if (Files.exists(Paths.get(LOGBACK_CONFIGURATION_FILE_DEFAULT))) {
+                System.setProperty(
+                        LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY, LOGBACK_CONFIGURATION_FILE_DEFAULT);
+            } else {
+                LoggerUtil.setLevel(LoggerUtil.ROOT_LOGGER, ch.qos.logback.classic.Level.INFO.toString());
+            }
+        }
+
+        /* 0. boot */
+
+        PolicyEngine.manager.boot(args);
+
+        /* start logger */
+
+        final Logger logger = LoggerFactory.getLogger(Main.class);
+
+        /* 1.a. Configure the Engine */
+
+        Properties engineProperties = SystemPersistence.manager.getEngineProperties();
+        if (engineProperties == null) {
+            engineProperties = PolicyEngine.manager.defaultTelemetryConfig();
+        }
+
+        PolicyEngine.manager.configure(engineProperties);
+
+        /* 1.b. Load Installation Environment(s) */
+
+        for (final Properties env : SystemPersistence.manager.getEnvironmentProperties()) {
+            PolicyEngine.manager.setEnvironment(env);
+        }
+
+        /* 2. Start the Engine with the basic services only (no Policy Controllers) */
+
+        MDCTransaction trans =
+                MDCTransaction.newTransaction(null, null)
+                .setServiceName(Main.class.getSimpleName())
+                .setTargetEntity("engine")
+                .setTargetServiceName("start");
+        try {
+            final boolean success = PolicyEngine.manager.start();
+            if (!success) {
+                trans.setStatusCode(false).setResponseDescription("partial start").flush();
+                logger.warn(
+                        LoggerUtil.TRANSACTION_LOG_MARKER,
+                        "Main: {} has been partially started",
+                        PolicyEngine.manager);
+            } else {
+                trans.setStatusCode(true).transaction();
+            }
+        } catch (final IllegalStateException e) {
+            trans
+                .setStatusCode(false)
+                .setResponseCode(e.getClass().getSimpleName())
+                .setResponseDescription(e.getMessage())
+                .flush();
+            logger.warn(
+                    LoggerUtil.TRANSACTION_LOG_MARKER,
+                    "Main: cannot start {} (bad state) because of {}",
+                    PolicyEngine.manager,
+                    e.getMessage(),
+                    e);
+        } catch (final Exception e) {
+            trans
+                .setStatusCode(false)
+                .setResponseCode(e.getClass().getSimpleName())
+                .setResponseDescription(e.getMessage())
+                .flush();
+            logger.warn(
+                    LoggerUtil.TRANSACTION_LOG_MARKER,
+                    "Main: cannot start {} because of {}",
+                    PolicyEngine.manager,
+                    e.getMessage(),
+                    e);
+            System.exit(1);
+        }
+
+        /* 3. Create and start the controllers */
+
+        for (final Properties controllerProperties :
+            SystemPersistence.manager.getControllerProperties()) {
+            final String controllerName =
+                    controllerProperties.getProperty(DroolsProperties.PROPERTY_CONTROLLER_NAME);
+            try {
+                trans =
+                        MDCTransaction.newTransaction(null, null)
+                        .setServiceName(Main.class.getSimpleName())
+                        .setTargetEntity("controller:" + controllerName)
+                        .setTargetServiceName("start");
+
+                final PolicyController controller =
+                        PolicyEngine.manager.createPolicyController(controllerName, controllerProperties);
+                controller.start();
+
+                trans
+                    .setStatusCode(true)
+                    .setResponseDescription(controller.getDrools().getCanonicalSessionNames().toString())
+                    .transaction();
+            } catch (final Exception e) {
+                trans
+                    .setStatusCode(false)
+                    .setResponseCode(e.getClass().getSimpleName())
+                    .setResponseDescription(e.getMessage())
+                    .flush();
+                logger.error(
+                        LoggerUtil.TRANSACTION_LOG_MARKER,
+                        "Main: cannot instantiate policy-controller {} because of {}",
+                        controllerName,
+                        e.getMessage(),
+                        e);
+            } catch (final LinkageError e) {
+                trans
+                    .setStatusCode(false)
+                    .setResponseCode(e.getClass().getSimpleName())
+                    .setResponseDescription(e.getMessage())
+                    .flush();
+                logger.warn(
+                        LoggerUtil.TRANSACTION_LOG_MARKER,
+                        "Main: cannot instantiate policy-controller {} (linkage) because of {}",
+                        controllerName,
+                        e.getMessage(),
+                        e);
+            }
+        }
     }
-
-    /* make sure the default configuration directory is properly set up */
-
-    SystemPersistence.manager.setConfigurationDir(null);
-
-    /* logging defaults */
-
-    if (System.getProperty(LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY) == null) {
-      if (Files.exists(Paths.get(LOGBACK_CONFIGURATION_FILE_DEFAULT))) {
-        System.setProperty(LOGBACK_CONFIGURATION_FILE_SYSTEM_PROPERTY,
-            LOGBACK_CONFIGURATION_FILE_DEFAULT);
-      } else {
-        LoggerUtil.setLevel(LoggerUtil.ROOT_LOGGER, ch.qos.logback.classic.Level.INFO.toString());
-      }
-    }
-
-    /* 0. boot */
-
-    PolicyEngine.manager.boot(args);
-
-    /* start logger */
-
-    final Logger logger = LoggerFactory.getLogger(Main.class);
-
-    /* 1.a. Configure the Engine */
-
-    Properties engineProperties = SystemPersistence.manager.getEngineProperties();
-    if (engineProperties == null)
-      engineProperties = PolicyEngine.manager.defaultTelemetryConfig();
-
-    PolicyEngine.manager.configure(engineProperties);
-
-    /* 1.b. Load Installation Environment(s) */
-
-    for (final Properties env : SystemPersistence.manager.getEnvironmentProperties()) {
-      PolicyEngine.manager.setEnvironment(env);
-    }
-
-    /* 2. Start the Engine with the basic services only (no Policy Controllers) */
-
-    MDCTransaction trans =
-        MDCTransaction.newTransaction(null, null).setServiceName(Main.class.getSimpleName()).
-          setTargetEntity("engine").setTargetServiceName("start");
-    try {
-      final boolean success = PolicyEngine.manager.start();
-      if (!success) {
-        trans.setStatusCode(false).setResponseDescription("partial start").flush();
-        logger.warn(LoggerUtil.TRANSACTION_LOG_MARKER, "Main: {} has been partially started", PolicyEngine.manager);
-      } else {
-        trans.setStatusCode(true).transaction();
-      }
-    } catch (final IllegalStateException e) {
-      trans.setStatusCode(false).setResponseCode(e.getClass().getSimpleName()).setResponseDescription(e.getMessage()).flush();
-      logger.warn(LoggerUtil.TRANSACTION_LOG_MARKER, "Main: cannot start {} (bad state) because of {}", PolicyEngine.manager, e.getMessage(), e);
-    } catch (final Exception e) {
-      trans.setStatusCode(false).setResponseCode(e.getClass().getSimpleName()).setResponseDescription(e.getMessage()).flush();
-      logger.warn(LoggerUtil.TRANSACTION_LOG_MARKER, "Main: cannot start {} because of {}", PolicyEngine.manager, e.getMessage(), e);
-      System.exit(1);
-    }
-
-    /* 3. Create and start the controllers */
-
-    for (final Properties controllerProperties : SystemPersistence.manager
-        .getControllerProperties()) {
-      final String controllerName =
-          controllerProperties.getProperty(DroolsProperties.PROPERTY_CONTROLLER_NAME);
-      try {
-        trans =
-            MDCTransaction.newTransaction(null, null).setServiceName(Main.class.getSimpleName()).
-                setTargetEntity("controller:" + controllerName).setTargetServiceName("start");
-
-        final PolicyController controller =
-            PolicyEngine.manager.createPolicyController(controllerName, controllerProperties);
-        controller.start();
-
-        trans.setStatusCode(true).
-            setResponseDescription(controller.getDrools().getCanonicalSessionNames().toString()).
-            transaction();
-      } catch (final Exception e) {
-        trans.setStatusCode(false).setResponseCode(e.getClass().getSimpleName()).setResponseDescription(e.getMessage()).flush();
-        logger.error(LoggerUtil.TRANSACTION_LOG_MARKER, "Main: cannot instantiate policy-controller {} because of {}",
-            controllerName, e.getMessage(), e);
-      } catch (final LinkageError e) {
-        trans.setStatusCode(false).setResponseCode(e.getClass().getSimpleName()).setResponseDescription(e.getMessage()).flush();
-        logger.warn(LoggerUtil.TRANSACTION_LOG_MARKER, "Main: cannot instantiate policy-controller {} (linkage) because of {}",
-            controllerName, e.getMessage(), e);
-      }
-    }
-  }
 }
index dcd4d11..514dc36 100644 (file)
@@ -23,9 +23,9 @@ package org.onap.policy.drools.system;
 import java.util.List;
 import java.util.Properties;
 
-import org.onap.policy.common.endpoints.event.comm.Topic.CommInfrastructure;
 import org.onap.policy.common.capabilities.Lockable;
 import org.onap.policy.common.capabilities.Startable;
+import org.onap.policy.common.endpoints.event.comm.Topic.CommInfrastructure;
 import org.onap.policy.common.endpoints.event.comm.TopicSink;
 import org.onap.policy.common.endpoints.event.comm.TopicSource;
 import org.onap.policy.drools.controller.DroolsController;
@@ -41,32 +41,32 @@ import org.onap.policy.drools.protocol.configuration.DroolsConfiguration;
 public interface PolicyController extends Startable, Lockable {
 
     /**
-     * Factory that tracks and manages Policy Controllers
+     * Factory that tracks and manages Policy Controllers.
      */
     static PolicyControllerFactory factory = new IndexedPolicyControllerFactory();
 
     /**
-     * name of this Policy Controller
+     * name of this Policy Controller.
      */
     String getName();
 
     /**
-     * Get the topic readers of interest for this controller
+     * Get the topic readers of interest for this controller.
      */
     List<? extends TopicSource> getTopicSources();
 
     /**
-     * Get the topic readers of interest for this controller
+     * Get the topic readers of interest for this controller.
      */
     List<? extends TopicSink> getTopicSinks();
 
     /**
-     * Get the Drools Controller
+     * Get the Drools Controller.
      */
     DroolsController getDrools();
 
     /**
-     * update maven configuration
+     * update maven configuration.
      * 
      * @param newDroolsConfiguration new drools configuration
      * @return true if the update was successful, false otherwise
@@ -74,17 +74,16 @@ public interface PolicyController extends Startable, Lockable {
     boolean updateDrools(DroolsConfiguration newDroolsConfiguration);
 
     /**
-     * Get the Properties
+     * Get the Properties.
      */
     Properties getProperties();
 
     /**
-     * Attempts delivering of an String over communication infrastructure "busType"
+     * Attempts delivering of an String over communication infrastructure "busType".
      * 
-     * @param event Communication infrastructure identifier
-     * @param busType
+     * @param busType bus type
      * @param topic topic
-     * @param event the event object to send
+     * @param event Communication infrastructure identifier
      * 
      * @return true if successful, false if a failure has occurred.
      * @throws IllegalArgumentException when invalid or insufficient properties are provided
@@ -96,9 +95,9 @@ public interface PolicyController extends Startable, Lockable {
     boolean deliver(CommInfrastructure busType, String topic, Object event);
 
     /**
-     * halts and permanently releases all resources
+     * halts and permanently releases all resources.
      * 
-     * @throws IllegalStateException
+     * @throws IllegalStateException throws illegal state exception
      */
     void halt();
 
index d8d4289..1241aca 100644 (file)
 
 package org.onap.policy.drools.system;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Properties;
 
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 import org.onap.policy.drools.controller.DroolsController;
 import org.onap.policy.drools.features.PolicyControllerFeatureAPI;
 import org.onap.policy.drools.protocol.configuration.DroolsConfiguration;
 import org.onap.policy.drools.system.internal.AggregatedPolicyController;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
-import com.fasterxml.jackson.annotation.JsonIgnore;
 
 /**
  * Policy Controller Factory to manage controller creation, destruction,
- * and retrieval for management interfaces
+ * and retrieval for management interfaces.
  */
 public interface PolicyControllerFactory {
     /**
-     * Build a controller from a properties file
+     * 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.
+     *     initialization.
      *
      * @return a Policy Controller
      *
@@ -55,8 +56,8 @@ public interface PolicyControllerFactory {
     /**
      * patches (updates) a controller from a critical configuration update.
      *
-     * @param name
-     * @param configController
+     * @param name name
+     * @param configController config controller
      *
      * @return a Policy Controller
      */
@@ -65,27 +66,46 @@ public interface PolicyControllerFactory {
     /**
      * rebuilds (updates) a controller from a configuration update.
      *
-     * @param controller
-     * @param configController
-     *
-     * @return a Policy Controller
+     * @param controller controller
+     * @param configController config controller
      */
     void patch(PolicyController controller,
                DroolsConfiguration configController);
 
     /**
-     * get PolicyController from DroolsController
+     * get PolicyController from DroolsController.
      *
-     * @param droolsController
-     * @return
-     * @throws IllegalArgumentException
-     * @throws IllegalStateException
+     * @param droolsController drools controller
+     * @return policy controller
+     * @throws IllegalArgumentException exception
+     * @throws IllegalStateException exception
      */
     PolicyController get(DroolsController droolsController);
 
+    /**
+     * gets the Policy Controller identified by its name.
+     *
+     * @param policyControllerName name of policy controller
+     * @return policy controller object
+     * @throws IllegalArgumentException exception
+     * @throws IllegalStateException exception
+     */
+    PolicyController get(String policyControllerName);
+
+    /**
+     * gets the Policy Controller identified by group and artifact ids.
+     *
+     * @param groupId group id
+     * @param artifactId artifact id
+     * @return policy controller object
+     * @throws IllegalArgumentException exception
+     * @throws IllegalStateException exception
+     */
+    PolicyController get(String groupId, String artifactId);
+
     /**
      * Makes the Policy Controller identified by controllerName not operational, but
-     * does not delete its associated data
+     * does not delete its associated data.
      *
      * @param controllerName  name of the policy controller
      * @throws IllegalArgumentException invalid arguments
@@ -94,7 +114,7 @@ public interface PolicyControllerFactory {
 
     /**
      * Makes the Policy Controller identified by controller not operational, but
-     * does not delete its associated data
+     * does not delete its associated data.
      *
      * @param controller a Policy Controller
      * @throws IllegalArgumentException invalid arguments
@@ -102,12 +122,12 @@ public interface PolicyControllerFactory {
     void shutdown(PolicyController controller);
 
     /**
-     * Releases all Policy Controllers from operation
+     * Releases all Policy Controllers from operation.
      */
     void shutdown();
 
     /**
-     * Destroys this Policy Controller
+     * Destroys this Policy Controller.
      *
      * @param controllerName  name of the policy controller
      * @throws IllegalArgumentException invalid arguments
@@ -115,7 +135,7 @@ public interface PolicyControllerFactory {
     void destroy(String controllerName);
 
     /**
-     * Destroys this Policy Controller
+     * Destroys this Policy Controller.
      *
      * @param controller a Policy Controller
      * @throws IllegalArgumentException invalid arguments
@@ -123,51 +143,33 @@ public interface PolicyControllerFactory {
     void destroy(PolicyController controller);
 
     /**
-     * Releases all Policy Controller resources
+     * 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
+     * get features attached to the Policy Controllers.
+     * 
      * @return list of features
      */
     List<PolicyControllerFeatureAPI> getFeatureProviders();
 
     /**
-     * get named feature attached to the Policy Controllers
+     * get named feature attached to the Policy Controllers.
+     * 
      * @return the feature
      */
     PolicyControllerFeatureAPI getFeatureProvider(String featureName);
 
     /**
-     * get features attached to the Policy Controllers
+     * get features attached to the Policy Controllers.
+     * 
      * @return list of features
      */
     List<String> getFeatures();
 
     /**
-     * returns the current inventory of Policy Controllers
+     * returns the current inventory of Policy Controllers.
      *
      * @return a list of Policy Controllers
      */
@@ -175,26 +177,26 @@ public interface PolicyControllerFactory {
 }
 
 /**
- * Factory of Policy Controllers indexed by the name of the Policy Controller
+ * Factory of Policy Controllers indexed by the name of the Policy Controller.
  */
 class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     // get an instance of logger
     private static final Logger  logger = LoggerFactory.getLogger(PolicyControllerFactory.class);
 
     /**
-     * Policy Controller Name Index
+     * Policy Controller Name Index.
      */
     private final HashMap<String,PolicyController> policyControllers =
             new HashMap<>();
 
     /**
-     * Group/Artifact Ids Index
+     * Group/Artifact Ids Index.
      */
     private final HashMap<String,PolicyController> coordinates2Controller =
             new HashMap<>();
 
     /**
-     * produces key for indexing controller names
+     * produces key for indexing controller names.
      *
      * @param groupId group id
      * @param artifactId artifact id
@@ -205,7 +207,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public synchronized PolicyController build(String name, Properties properties) {
@@ -225,14 +227,15 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
         this.policyControllers.put(name, controller);
 
 
-        if (controller.getDrools().isBrained())
+        if (controller.getDrools().isBrained()) {
             this.coordinates2Controller.put(coordinates, controller);
+        }
 
         return controller;
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public synchronized PolicyController patch(String name, DroolsConfiguration droolsConfig) {
@@ -244,51 +247,55 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
         PolicyController controller = this.get(name);
 
         if (controller == null) {
-            logger.warn("A POLICY CONTROLLER of name " + name +
-                        "does not exist for patch operation: " + droolsConfig);
+            logger.warn("A POLICY CONTROLLER of name {} does not exist for patch operation: {}", name, 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);
+        if (logger.isInfoEnabled()) {
+            logger.info("UPDATED drools configuration: {} on {}", droolsConfig, this);
+        }
 
         return controller;
     }
 
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void patch(PolicyController controller, DroolsConfiguration droolsConfig) {
 
-        if (controller == null)
+        if (controller == null) {
             throw new IllegalArgumentException("Not a valid controller:  null");
+        }
 
-        if (droolsConfig == null)
+        if (droolsConfig == null) {
             throw new IllegalArgumentException("Invalid Drools Configuration");
+        }
 
         if (!controller.updateDrools(droolsConfig)) {
-            logger.warn("Cannot update drools configuration: " + droolsConfig + " on " + this);
+            logger.warn("Cannot update drools configuration: {} on {}", droolsConfig, this);
             throw new IllegalArgumentException("Cannot update drools configuration Drools Configuration");
         }
 
-        if (logger.isInfoEnabled())
-            logger.info("UPDATED drools configuration: " + droolsConfig + " on " + this);
+        if (logger.isInfoEnabled()) {
+            logger.info("UPDATED drools configuration: {} on {}", droolsConfig, this);
+        }
 
         String coordinates = toKey(controller.getDrools().getGroupId(),
                                    controller.getDrools().getArtifactId());
 
-        if (controller.getDrools().isBrained())
+        if (controller.getDrools().isBrained()) {
             this.coordinates2Controller.put(coordinates, controller);
+        }
 
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void shutdown(String controllerName) {
@@ -297,7 +304,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
             throw makeArgEx(controllerName);
         }
 
-        synchronized(this) {
+        synchronized (this) {
             if (!this.policyControllers.containsKey(controllerName)) {
                 return;
             }
@@ -308,7 +315,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void shutdown(PolicyController controller) {
@@ -317,7 +324,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void shutdown() {
@@ -326,17 +333,17 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
             controller.shutdown();
         }
 
-        synchronized(this) {
+        synchronized (this) {
             this.policyControllers.clear();
             this.coordinates2Controller.clear();
         }
     }
 
     /**
-     * unmanage the controller
+     * unmanage the controller.
      *
-     * @param controller
-     * @throws IllegalArgumentException
+     * @param controller controller
+     * @throws IllegalArgumentException exception
      */
     private void unmanage(PolicyController controller) {
         PolicyController tempController = controller;
@@ -344,7 +351,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
             throw new IllegalArgumentException("Invalid Controller");
         }
 
-        synchronized(this) {
+        synchronized (this) {
             if (!this.policyControllers.containsKey(tempController.getName())) {
                 return;
             }
@@ -357,7 +364,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void destroy(String controllerName) {
@@ -366,7 +373,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
             throw makeArgEx(controllerName);
         }
 
-        synchronized(this) {
+        synchronized (this) {
             if (!this.policyControllers.containsKey(controllerName)) {
                 return;
             }
@@ -377,7 +384,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void destroy(PolicyController controller) {
@@ -386,7 +393,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void destroy() {
@@ -395,14 +402,14 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
             controller.halt();
         }
 
-        synchronized(this) {
+        synchronized (this) {
             this.policyControllers.clear();
             this.coordinates2Controller.clear();
         }
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public PolicyController get(String name) {
@@ -411,7 +418,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
             throw makeArgEx(name);
         }
 
-        synchronized(this) {
+        synchronized (this) {
             if (this.policyControllers.containsKey(name)) {
                 return this.policyControllers.get(name);
             } else {
@@ -421,17 +428,17 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public PolicyController get(String groupId, String artifactId) {
 
-        if (groupId == null || groupId.isEmpty() ||
-            artifactId == null || artifactId.isEmpty()) {
+        if (groupId == null || groupId.isEmpty()
+            || artifactId == null || artifactId.isEmpty()) {
             throw new IllegalArgumentException("Invalid group/artifact ids");
         }
 
-        synchronized(this) {
+        synchronized (this) {
             String key = toKey(groupId,artifactId);
             if (this.coordinates2Controller.containsKey(key)) {
                 return this.coordinates2Controller.get(key);
@@ -442,7 +449,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public PolicyController get(DroolsController droolsController) {
@@ -451,27 +458,28 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
             throw new IllegalArgumentException("No Drools Controller provided");
         }
 
-        synchronized(this) {
+        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);
+                logger.error("Drools Controller not associated with Policy Controller {}:{}", droolsController, this);
+                throw new IllegalStateException("Drools Controller not associated with Policy Controller " 
+                        + droolsController + ":" + this);
             }
         }
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<PolicyController> inventory() {
-         return new ArrayList<>(this.policyControllers.values());
+        return new ArrayList<>(this.policyControllers.values());
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<String> getFeatures() {
@@ -483,7 +491,7 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @JsonIgnore
     @Override
@@ -492,16 +500,18 @@ class IndexedPolicyControllerFactory implements PolicyControllerFactory {
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public PolicyControllerFeatureAPI getFeatureProvider(String featureName) {
-        if (featureName == null || featureName.isEmpty())
+        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))
+            if (feature.getName().equals(featureName)) {
                 return feature;
+            }
         }
 
         throw new IllegalArgumentException("Invalid Feature Name: " + featureName);
index 993c09c..60e5a1b 100644 (file)
@@ -69,40 +69,50 @@ import org.slf4j.LoggerFactory;
  */
 public interface PolicyEngine extends Startable, Lockable, TopicListener {
     /**
-     * Policy Engine Manager
+     * Policy Engine Manager.
      */
     PolicyEngine manager = new PolicyEngineManager();
 
     /**
-     * Default Telemetry Server Port
+     * Default Telemetry Server Port.
      */
     int TELEMETRY_SERVER_DEFAULT_PORT = 9696;
 
     /**
-     * Default Telemetry Server Hostname
+     * Default Telemetry Server Hostname.
      */
     String TELEMETRY_SERVER_DEFAULT_HOST = "localhost";
 
     /**
-     * Default Telemetry Server Name
+     * Default Telemetry Server Name.
      */
     String TELEMETRY_SERVER_DEFAULT_NAME = "TELEMETRY";
 
     /**
-     * Boot the engine
+     * Boot the engine.
      *
      * @param cliArgs command line arguments
      */
     void boot(String[] cliArgs);
 
     /**
-     * configure the policy engine according to the given properties
+     * configure the policy engine according to the given properties.
      *
      * @param properties Policy Engine properties
      * @throws IllegalArgumentException when invalid or insufficient properties are provided
      */
     void configure(Properties properties);
 
+    /**
+     * updates the Policy Engine with the given configuration.
+     *
+     * @param configuration the configuration
+     * @return success or failure
+     * @throws IllegalArgumentException if invalid argument provided
+     * @throws IllegalStateException    if the system is in an invalid state
+     */
+    boolean configure(PdpdConfiguration configuration);
+
     /**
      * configure the engine's environment. General lab installation configuration is made available
      * to the Engine. Typically, custom lab installation that may be needed by arbitrary drools
@@ -114,15 +124,15 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
     void setEnvironment(Properties properties);
 
     /**
-     * gets the engine's environment
+     * gets the engine's environment.
      *
-     * @return
+     * @return properties object
      */
     Properties getEnvironment();
 
     /**
      * gets an environment's value, by 1) first from the engine's environment, and 2) from the OS
-     * environment
+     * environment.
      *
      * @param key environment key
      * @return environment value or null if absent
@@ -130,11 +140,11 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
     String getEnvironmentProperty(String key);
 
     /**
-     * sets an engine's environment property
+     * sets an engine's environment property.
      *
-     * @param key
-     * @param value
-     * @return
+     * @param key key
+     * @param value value
+     * @return property string
      */
     String setEnvironmentProperty(String key, String value);
 
@@ -150,27 +160,17 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
     PolicyController createPolicyController(String name, Properties properties);
 
     /**
-     * updates the Policy Engine with the given configuration
+     * updates a set of Policy Controllers with configuration information.
      *
-     * @param configuration the configuration
-     * @return success or failure
-     * @throws IllegalArgumentException if invalid argument provided
-     * @throws IllegalStateException    if the system is in an invalid state
-     */
-    boolean configure(PdpdConfiguration configuration);
-
-    /**
-     * updates a set of Policy Controllers with configuration information
-     *
-     * @param configuration
-     * @return
-     * @throws IllegalArgumentException
-     * @throws IllegalStateException
+     * @param configuration list of configurations
+     * @return list of controllers
+     * @throws IllegalArgumentException exception
+     * @throws IllegalStateException exception
      */
     List<PolicyController> updatePolicyControllers(List<ControllerConfiguration> configuration);
 
     /**
-     * updates an already existing Policy Controller with configuration information
+     * updates an already existing Policy Controller with configuration information.
      *
      * @param configuration configuration
      * @return the updated Policy Controller
@@ -181,22 +181,21 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
     PolicyController updatePolicyController(ControllerConfiguration configuration);
 
     /**
-     * removes the Policy Controller identified by its name from the Policy Engine
+     * removes the Policy Controller identified by its name from the Policy Engine.
      *
      * @param name name of the Policy Controller
-     * @return the removed Policy Controller
      */
     void removePolicyController(String name);
 
     /**
-     * removes a Policy Controller from the Policy Engine
+     * removes a Policy Controller from the Policy Engine.
      *
      * @param controller the Policy Controller to remove from the Policy Engine
      */
     void removePolicyController(PolicyController controller);
 
     /**
-     * returns a list of the available Policy Controllers
+     * returns a list of the available Policy Controllers.
      *
      * @return list of Policy Controllers
      */
@@ -204,63 +203,63 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
 
 
     /**
-     * get policy controller names
+     * get policy controller names.
      *
      * @return list of controller names
      */
     List<String> getPolicyControllerIds();
 
     /**
-     * get unmanaged sources
+     * get unmanaged sources.
      *
      * @return unmanaged sources
      */
     List<TopicSource> getSources();
 
     /**
-     * get unmanaged sinks
+     * get unmanaged sinks.
      *
      * @return unmanaged sinks
      */
     List<TopicSink> getSinks();
 
     /**
-     * get unmmanaged http servers list
+     * get unmmanaged http servers list.
      *
      * @return http servers
      */
     List<HttpServletServer> getHttpServers();
 
     /**
-     * get properties configuration
+     * get properties configuration.
      *
      * @return properties objects
      */
     Properties getProperties();
 
     /**
-     * get features attached to the Policy Engine
+     * get features attached to the Policy Engine.
      *
      * @return list of features
      */
     List<PolicyEngineFeatureAPI> getFeatureProviders();
 
     /**
-     * get named feature attached to the Policy Engine
+     * get named feature attached to the Policy Engine.
      *
      * @return the feature
      */
     PolicyEngineFeatureAPI getFeatureProvider(String featureName);
 
     /**
-     * get features attached to the Policy Engine
+     * get features attached to the Policy Engine.
      *
      * @return list of features
      */
     List<String> getFeatures();
 
     /**
-     * Attempts the dispatching of an "event" object
+     * Attempts the dispatching of an "event" object.
      *
      * @param topic topic
      * @param event the event object to send
@@ -272,7 +271,7 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
     boolean deliver(String topic, Object event);
 
     /**
-     * Attempts the dispatching of an "event" object over communication infrastructure "busType"
+     * Attempts the dispatching of an "event" object over communication infrastructure "busType".
      *
      * @param topic topic
      * @param event the event object to send
@@ -286,7 +285,7 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
     boolean deliver(String busType, String topic, Object event);
 
     /**
-     * Attempts the dispatching of an "event" object over communication infrastructure "busType"
+     * Attempts the dispatching of an "event" object over communication infrastructure "busType".
      *
      * @param topic topic
      * @param event the event object to send
@@ -300,7 +299,7 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
     boolean deliver(CommInfrastructure busType, String topic, Object event);
 
     /**
-     * Attempts delivering of an String over communication infrastructure "busType"
+     * Attempts delivering of an String over communication infrastructure "busType".
      *
      * @param topic topic
      * @param event the event object to send
@@ -324,7 +323,7 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
     void deactivate();
 
     /**
-     * produces a default telemetry configuration
+     * produces a default telemetry configuration.
      *
      * @return policy engine configuration
      */
@@ -333,7 +332,7 @@ public interface PolicyEngine extends Startable, Lockable, TopicListener {
 
 
 /**
- * Policy Engine Manager Implementation
+ * Policy Engine Manager Implementation.
  */
 class PolicyEngineManager implements PolicyEngine {
     private static final String INVALID_TOPIC_MSG = "Invalid Topic";
@@ -345,47 +344,47 @@ class PolicyEngineManager implements PolicyEngine {
     private static final String ENGINE_LOCKED_MSG = "Policy Engine is locked";
 
     /**
-     * logger
+     * logger.
      */
     private static final Logger logger = LoggerFactory.getLogger(PolicyEngineManager.class);
 
     /**
-     * Is the Policy Engine running?
+     * Is the Policy Engine running.
      */
     private volatile boolean alive = false;
 
     /**
-     * Is the engine locked?
+     * Is the engine locked.
      */
     private volatile boolean locked = false;
 
     /**
-     * Properties used to initialize the engine
+     * Properties used to initialize the engine.
      */
     private Properties properties;
 
     /**
-     * Environment Properties
+     * Environment Properties.
      */
     private final Properties environment = new Properties();
 
     /**
-     * Policy Engine Sources
+     * Policy Engine Sources.
      */
     private List<? extends TopicSource> sources = new ArrayList<>();
 
     /**
-     * Policy Engine Sinks
+     * Policy Engine Sinks.
      */
     private List<? extends TopicSink> sinks = new ArrayList<>();
 
     /**
-     * Policy Engine HTTP Servers
+     * Policy Engine HTTP Servers.
      */
     private List<HttpServletServer> httpServers = new ArrayList<>();
 
     /**
-     * gson parser to decode configuration requests
+     * gson parser to decode configuration requests.
      */
     private final Gson decoder = new GsonBuilder().disableHtmlEscaping().create();
 
@@ -526,6 +525,35 @@ class PolicyEngineManager implements PolicyEngine {
         }
     }
 
+    @Override
+    public boolean configure(PdpdConfiguration config) {
+
+        if (config == null) {
+            throw new IllegalArgumentException("No configuration provided");
+        }
+
+        final String entity = config.getEntity();
+
+        MDCTransaction mdcTrans = MDCTransaction.newTransaction(config.getRequestID(), "brmsgw");
+        if (this.getSources().size() == 1) {
+            Topic topic = this.getSources().get(0);
+            mdcTrans.setServiceName(topic.getTopic()).setRemoteHost(topic.getServers().toString())
+                    .setTargetEntity(config.getEntity());
+        }
+
+        switch (entity) {
+            case PdpdConfiguration.CONFIG_ENTITY_CONTROLLER:
+                boolean success = controllerConfig(config);
+                mdcTrans.resetSubTransaction().setStatusCode(success).transaction();
+                return success;
+            default:
+                final String msg = "Configuration Entity is not supported: " + entity;
+                mdcTrans.resetSubTransaction().setStatusCode(false).setResponseDescription(msg).flush();
+                logger.warn(LoggerUtil.TRANSACTION_LOG_MARKER_NAME, msg);
+                throw new IllegalArgumentException(msg);
+        }
+    }
+
     @Override
     public synchronized PolicyController createPolicyController(String name, Properties properties) {
 
@@ -576,35 +604,6 @@ class PolicyEngineManager implements PolicyEngine {
     }
 
 
-    @Override
-    public boolean configure(PdpdConfiguration config) {
-
-        if (config == null) {
-            throw new IllegalArgumentException("No configuration provided");
-        }
-
-        final String entity = config.getEntity();
-
-        MDCTransaction mdcTrans = MDCTransaction.newTransaction(config.getRequestID(), "brmsgw");
-        if (this.getSources().size() == 1) {
-            Topic topic = this.getSources().get(0);
-            mdcTrans.setServiceName(topic.getTopic()).setRemoteHost(topic.getServers().toString())
-                    .setTargetEntity(config.getEntity());
-        }
-
-        switch (entity) {
-            case PdpdConfiguration.CONFIG_ENTITY_CONTROLLER:
-                boolean success = controllerConfig(config);
-                mdcTrans.resetSubTransaction().setStatusCode(success).transaction();
-                return success;
-            default:
-                final String msg = "Configuration Entity is not supported: " + entity;
-                mdcTrans.resetSubTransaction().setStatusCode(false).setResponseDescription(msg).flush();
-                logger.warn(LoggerUtil.TRANSACTION_LOG_MARKER_NAME, msg);
-                throw new IllegalArgumentException(msg);
-        }
-    }
-
     @Override
     public List<PolicyController> updatePolicyControllers(List<ControllerConfiguration> configControllers) {
 
@@ -619,7 +618,7 @@ class PolicyEngineManager implements PolicyEngine {
         for (final ControllerConfiguration configController : configControllers) {
             MDCTransaction mdcTrans = MDCTransaction.newSubTransaction(null).setTargetEntity(configController.getName())
                     .setTargetServiceName(configController.getOperation())
-                    .setTargetVirtualEntity(""+configController.getDrools());
+                    .setTargetVirtualEntity("" + configController.getDrools());
             try {
                 final PolicyController policyController = this.updatePolicyController(configController);
                 policyControllers.add(policyController);
@@ -672,7 +671,7 @@ class PolicyEngineManager implements PolicyEngine {
 
                 /* Recovery case */
 
-                logger.warn("controller " + controllerName + " does not exist.  " + "Attempting recovery from disk");
+                logger.warn("controller {} does not exist. Attempting recovery from disk", controllerName);
 
                 final Properties controllerProperties =
                         SystemPersistence.manager.getControllerProperties(controllerName);
@@ -686,8 +685,8 @@ class PolicyEngineManager implements PolicyEngine {
                     throw new IllegalArgumentException(controllerName + " is invalid");
                 }
 
-                logger.warn("controller " + controllerName + " being recovered. "
-                        + "Reset controller's bad maven coordinates to brainless");
+                logger.warn("controller being recovered. {} Reset controller's bad maven coordinates to brainless", 
+                        controllerName);
 
                 /*
                  * try to bring up bad controller in brainless mode, after having it working, apply
@@ -1470,7 +1469,7 @@ class PolicyEngineManager implements PolicyEngine {
         /* only this one supported for now */
         final List<ControllerConfiguration> configControllers = config.getControllers();
         if (configControllers == null || configControllers.isEmpty()) {
-            logger.info("No controller configuration provided: {}" + config);
+            logger.info("No controller configuration provided: {}", config);
             return false;
         }
 
@@ -1485,8 +1484,7 @@ class PolicyEngineManager implements PolicyEngine {
 
     @Override
     public String toString() {
-        return "PolicyEngineManager [alive=" + this.alive + ", locked=" + this.locked +
-                "]";
+        return "PolicyEngineManager [alive=" + this.alive + ", locked=" + this.locked + "]";
     }
 
 }
index 0b6643f..8d29067 100644 (file)
@@ -47,33 +47,33 @@ import org.slf4j.LoggerFactory;
 public class AggregatedPolicyController implements PolicyController, TopicListener {
 
     /**
-     * Logger
+     * Logger.
      */
     private static final Logger logger = LoggerFactory.getLogger(AggregatedPolicyController.class);
 
     /**
-     * identifier for this policy controller
+     * identifier for this policy controller.
      */
     private final String name;
 
     /**
-     * Abstracted Event Sources List regardless communication technology
+     * Abstracted Event Sources List regardless communication technology.
      */
     private final List<? extends TopicSource> sources;
 
     /**
-     * Abstracted Event Sinks List regardless communication technology
+     * Abstracted Event Sinks List regardless communication technology.
      */
     private final List<? extends TopicSink> sinks;
 
     /**
-     * Mapping topics to sinks
+     * Mapping topics to sinks.
      */
     @JsonIgnore
     private final HashMap<String, TopicSink> topic2Sinks = new HashMap<>();
 
     /**
-     * Is this Policy Controller running (alive) ? reflects invocation of start()/stop() only
+     * Is this Policy Controller running (alive) ? reflects invocation of start()/stop() only.
      */
     private volatile boolean alive;
 
@@ -85,18 +85,18 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     private volatile boolean locked;
 
     /**
-     * Policy Drools Controller
+     * Policy Drools Controller.
      */
     private volatile DroolsController droolsController;
 
     /**
-     * Properties used to initialize controller
+     * Properties used to initialize controller.
      */
     private final Properties properties;
 
     /**
      * Constructor version mainly used for bootstrapping at initialization time a policy engine
-     * controller
+     * controller.
      * 
      * @param name controller name
      * @param properties
@@ -127,7 +127,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * initialize drools layer
+     * initialize drools layer.
      * 
      * @throws IllegalArgumentException if invalid parameters are passed in
      */
@@ -142,7 +142,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * initialize sinks
+     * initialize sinks.
      * 
      * @throws IllegalArgumentException if invalid parameters are passed in
      */
@@ -154,7 +154,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean updateDrools(DroolsConfiguration newDroolsConfiguration) {
@@ -206,7 +206,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public String getName() {
@@ -214,7 +214,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean start() {
@@ -243,7 +243,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
             this.alive = true;
         }
 
-        boolean success = this.droolsController.start();
+        final boolean success = this.droolsController.start();
 
         // register for events
 
@@ -274,7 +274,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean stop() {
@@ -324,7 +324,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void shutdown() {
@@ -358,7 +358,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void halt() {
@@ -392,7 +392,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public void onTopicEvent(Topic.CommInfrastructure commType, String topic, String event) {
@@ -435,7 +435,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean deliver(Topic.CommInfrastructure commType, String topic, Object event) {
@@ -494,7 +494,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean isAlive() {
@@ -502,7 +502,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean lock() {
@@ -547,7 +547,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean unlock() {
@@ -590,7 +590,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public boolean isLocked() {
@@ -598,7 +598,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<? extends TopicSource> getTopicSources() {
@@ -606,7 +606,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public List<? extends TopicSink> getTopicSinks() {
@@ -614,7 +614,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
     }
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     public DroolsController getDrools() {
@@ -623,7 +623,7 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
 
 
     /**
-     * {@inheritDoc}
+     * {@inheritDoc}.
      */
     @Override
     @JsonIgnore
@@ -633,8 +633,8 @@ public class AggregatedPolicyController implements PolicyController, TopicListen
 
     @Override
     public String toString() {
-        return "AggregatedPolicyController [name=" + name + ", alive=" + alive +
-                ", locked=" + locked + ", droolsController=" + droolsController + "]";
+        return "AggregatedPolicyController [name=" + name + ", alive=" + alive
+                ", locked=" + locked + ", droolsController=" + droolsController + "]";
     }
 
 }
index ce34ec8..5d6b11d 100644 (file)
@@ -117,14 +117,17 @@ public class RestManagerTest {
                 + PolicyEngine.TELEMETRY_SERVER_DEFAULT_NAME + PolicyEndPointProperties.PROPERTY_HTTP_PORT_SUFFIX,
                 "" + DEFAULT_TELEMETRY_PORT);
         engineProps.put(PolicyEndPointProperties.PROPERTY_HTTP_SERVER_SERVICES + "."
-                + PolicyEngine.TELEMETRY_SERVER_DEFAULT_NAME + PolicyEndPointProperties.PROPERTY_HTTP_FILTER_CLASSES_SUFFIX,
-            TestAafTelemetryAuthFilter.class.getName());
+                + PolicyEngine.TELEMETRY_SERVER_DEFAULT_NAME 
+                + PolicyEndPointProperties.PROPERTY_HTTP_FILTER_CLASSES_SUFFIX,
+                TestAafTelemetryAuthFilter.class.getName());
         engineProps.put(PolicyEndPointProperties.PROPERTY_HTTP_SERVER_SERVICES + "."
-                + PolicyEngine.TELEMETRY_SERVER_DEFAULT_NAME + PolicyEndPointProperties.PROPERTY_HTTP_AUTH_USERNAME_SUFFIX,
-            TELEMETRY_USER);
+                + PolicyEngine.TELEMETRY_SERVER_DEFAULT_NAME 
+                + PolicyEndPointProperties.PROPERTY_HTTP_AUTH_USERNAME_SUFFIX,
+                TELEMETRY_USER);
         engineProps.put(PolicyEndPointProperties.PROPERTY_HTTP_SERVER_SERVICES + "."
-                + PolicyEngine.TELEMETRY_SERVER_DEFAULT_NAME + PolicyEndPointProperties.PROPERTY_HTTP_AUTH_PASSWORD_SUFFIX,
-            TELEMETRY_PASSWORD);
+                + PolicyEngine.TELEMETRY_SERVER_DEFAULT_NAME 
+                + PolicyEndPointProperties.PROPERTY_HTTP_AUTH_PASSWORD_SUFFIX,
+                TELEMETRY_PASSWORD);
 
         /* other properties */
         engineProps.put(PolicyEndPointProperties.PROPERTY_UEB_SOURCE_TOPICS, UEB_TOPIC);
@@ -288,6 +291,7 @@ public class RestManagerTest {
         httpPut.setEntity(new StringEntity("FOOOO"));
         response = client.execute(httpPut);
         logger.info(httpPut.getRequestLine() + " response code: {}", response.getStatusLine().getStatusCode());
+        
         assertEquals(404, response.getStatusLine().getStatusCode());
         httpPut.releaseConnection();
 
index c7d5232..67e1618 100644 (file)
@@ -25,7 +25,7 @@ import org.onap.policy.common.utils.network.NetworkUtil;
 import org.onap.policy.drools.server.restful.aaf.AafTelemetryAuthFilter;
 
 /**
- * Test AAF Telemetry Authorization Filter for Junits
+ * Test AAF Telemetry Authorization Filter for Junits.
  */
 public class TestAafTelemetryAuthFilter extends AafTelemetryAuthFilter {
 
diff --git a/policy-utils/checkstyle-suppressions.xml b/policy-utils/checkstyle-suppressions.xml
new file mode 100644 (file)
index 0000000..cbf6eac
--- /dev/null
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2018 AT&T Technologies. 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.
+  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.
+  
+  SPDX-License-Identifier: Apache-2.0
+  ============LICENSE_END=========================================================
+-->
+
+<!DOCTYPE suppressions PUBLIC
+     "-//Puppy Crawl//DTD Suppressions 1.0//EN"
+     "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
+<suppressions>
+  <suppress checks="AbbreviationAsWordInName"
+    files="MDCTransaction.java"
+    lines="1-9999"/>
+  <suppress checks="OneTopLevelClass"
+    files="MDCTransaction.java"
+    lines="1-9999"/>
+</suppressions>
index 6a7c9fb..0326534 100644 (file)
     <version>1.3.0-SNAPSHOT</version>
   </parent>
 
-
-       <dependencies>                          
-               <dependency>
-                       <groupId>ch.qos.logback</groupId>
-                       <artifactId>logback-classic</artifactId>
-               </dependency>       
-               <dependency>
-                       <groupId>junit</groupId>
-                       <artifactId>junit</artifactId>
-                       <scope>test</scope>
-               </dependency>
-               <dependency>
-                       <groupId>org.onap.policy.common</groupId>
-                       <artifactId>utils</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-       </dependencies>
-
-    
+    <dependencies>                     
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-classic</artifactId>
+        </dependency>      
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.policy.common</groupId>
+            <artifactId>utils</artifactId>
+            <version>${project.version}</version>
+            </dependency>
+    </dependencies>
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>onap-java-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <phase>process-sources</phase>
+                        <configuration>
+                            <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                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}</sourceDirectory>
+                            <includeResources>true</includeResources>
+                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                            <includeTestResources>true</includeTestResources>
+                            <excludes>
+                            </excludes>
+                            <suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation>
+                            <consoleOutput>true</consoleOutput>
+                            <failsOnViolation>true</failsOnViolation>
+                            <violationSeverity>warning</violationSeverity>
+                        </configuration>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.onap.oparent</groupId>
+                        <artifactId>checkstyle</artifactId>
+                        <version>${oparent.version}</version>
+                        <scope>compile</scope>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
 </project>
index f618b4c..bb6c542 100644 (file)
  * ============LICENSE_END=========================================================
  */
 
-/**
- * 
- */
-
 package org.onap.policy.drools.utils;
 
 import org.slf4j.Logger;
@@ -35,7 +31,7 @@ public class ReflectionUtil {
 
     protected static final Logger logger = LoggerFactory.getLogger(ReflectionUtil.class);
 
-    private ReflectionUtil(){
+    private ReflectionUtil() {
     }
 
     /**
@@ -83,7 +79,7 @@ public class ReflectionUtil {
      * 
      * @param parent superclass
      * @param presumedSubclass subclass
-     * @return
+     * @return true if it is a sub class
      */
     public static boolean isSubclass(Class<?> parent, Class<?> presumedSubclass) {
         return parent.isAssignableFrom(presumedSubclass);
index c6e78b2..61c7b0c 100644 (file)
@@ -336,7 +336,7 @@ public interface MDCTransaction {
     MDCTransaction setElapsedTime(Long elapsedTime);
 
     /**
-     * sets service instance id
+     * sets service instance id.
      */
     MDCTransaction setServiceInstanceId(String serviceInstanceId);
 
diff --git a/pom.xml b/pom.xml
index 58b0559..dc30478 100644 (file)
--- a/pom.xml
+++ b/pom.xml
                     </execution>
                 </executions>
             </plugin>
+                <plugin>
+                    <artifactId>maven-checkstyle-plugin</artifactId>
+                    <executions>
+                        <execution>
+                            <id>onap-java-style</id>
+                            <goals>
+                                <goal>check</goal>
+                            </goals>
+                            <phase>process-sources</phase>
+                            <configuration>
+                                <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
+                                    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}</sourceDirectory>
+                                <includeResources>true</includeResources>
+                                <includeTestSourceDirectory>true</includeTestSourceDirectory>
+                                <includeTestResources>true</includeTestResources>
+                                <excludes>
+                                </excludes>
+                                <!-- suppressionsLocation>${project.baseUri}checkstyle-suppressions.xml</suppressionsLocation -->
+                                <consoleOutput>true</consoleOutput>
+                                <failsOnViolation>true</failsOnViolation>
+                                <violationSeverity>warning</violationSeverity>
+                            </configuration>
+                        </execution>
+                    </executions>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.onap.oparent</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>${oparent.version}</version>
+                            <scope>compile</scope>
+                        </dependency>
+                    </dependencies>
+                </plugin>
             <plugin>
                 <groupId>org.sonatype.plugins</groupId>
                 <artifactId>nexus-staging-maven-plugin</artifactId>