Update CLAMP: checkstyle 8.43/Spring dependencies 45/122345/3
authorliamfallon <liam.fallon@est.tech>
Tue, 29 Jun 2021 16:13:09 +0000 (17:13 +0100)
committerliamfallon <liam.fallon@est.tech>
Wed, 30 Jun 2021 07:44:40 +0000 (08:44 +0100)
Updates are indentation changes on annotations and rationallization of
the dependencies for Spring/Springboot

Generation of swagger.json, swagger.html and swagger.pdf temporarily
disabled due to a missing dependency in the generation toolchain.

Issue-ID: POLICY-3209
Change-Id: Iff5881df45ef54b20fa30f63e2393cc1cdbf4bfe
Signed-off-by: liamfallon <liam.fallon@est.tech>
22 files changed:
common/pom.xml
participant/participant-impl/participant-impl-dcae/pom.xml
participant/participant-impl/participant-impl-kubernetes/pom.xml
participant/participant-impl/participant-impl-policy/pom.xml
participant/participant-impl/participant-impl-simulator/pom.xml
participant/participant-impl/participant-impl-simulator/src/main/java/org/onap/policy/clamp/controlloop/participant/simulator/ParticipantSimulatorApplication.java
participant/participant-impl/pom.xml
participant/participant-intermediary/pom.xml
participant/pom.xml
pom.xml
runtime-controlloop/src/test/java/org/onap/policy/clamp/controlloop/runtime/monitoring/TestMonitoringProvider.java
runtime/pom.xml
runtime/src/main/java/org/onap/policy/clamp/clds/Application.java
runtime/src/main/java/org/onap/policy/clamp/loop/template/LoopElementModel.java
runtime/src/main/java/org/onap/policy/clamp/tosca/Dictionary.java
runtime/src/main/resources/clds/camel/rest/clds-services.xml
runtime/src/main/resources/clds/camel/routes/loop-flows.xml
runtime/src/main/resources/clds/camel/routes/utils-flows.xml
runtime/src/main/resources/logback-default.xml
runtime/src/main/resources/logback-spring.xml
runtime/src/test/java/org/onap/policy/clamp/clds/it/HttpsItCase.java
runtime/src/test/java/org/onap/policy/clamp/policy/downloader/PolicyEngineControllerTestItCase.java

index 78789a2..063a68c 100644 (file)
@@ -40,7 +40,6 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-jar-plugin</artifactId>
-                <version>3.2.0</version>
                 <executions>
                     <execution>
                         <goals>
index 9478626..f5fd368 100644 (file)
     <name>${project.artifactId}</name>
     <description>DCAE participant, that allows DCAE to partake in control loops</description>
 
-    <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-validation</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.mock-server</groupId>
-            <artifactId>mockserver-netty</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.mock-server</groupId>
-            <artifactId>mockserver-client-java</artifactId>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-
     <build>
         <plugins>
             <plugin>
index f51e365..15e8e90 100644 (file)
     <name>${project.artifactId}</name>
     <description>Kubernetes participant, that allows k8s pods to partake in control loops</description>
 
-    <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-validation</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-webflux</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.tomcat.embed</groupId>
-            <artifactId>tomcat-embed-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.immutables</groupId>
-            <artifactId>value</artifactId>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.immutables</groupId>
-            <artifactId>gson</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.json</groupId>
-            <artifactId>json</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.projectlombok</groupId>
-            <artifactId>lombok</artifactId>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>io.springfox</groupId>
-            <artifactId>springfox-swagger2</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.springfox</groupId>
-            <artifactId>springfox-swagger-ui</artifactId>
-            <scope>runtime</scope>
-        </dependency>
-        <dependency>
-            <groupId>commons-fileupload</groupId>
-            <artifactId>commons-fileupload</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.onap.policy.clamp.participant</groupId>
-            <artifactId>policy-clamp-participant-intermediary</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-
-    </dependencies>
-
     <build>
         <resources>
             <!-- Output the version of the control loop system -->
index 9cc70b4..367e3d6 100644 (file)
     <name>${project.artifactId}</name>
     <description>Policy participant, that allows Policy to partake in control loops</description>
 
-    <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-validation</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-
     <build>
         <plugins>
             <plugin>
index 92ee94d..5e315ba 100644 (file)
@@ -18,7 +18,8 @@
   ============LICENSE_END=========================================================
 -->
 
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
 
     <name>${project.artifactId}</name>
     <description>Participant simulator, used to test control loops</description>
 
-    <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-security</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-validation</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.springfox</groupId>
-            <artifactId>springfox-boot-starter</artifactId>
-            <version>${version.springfox}</version>
-        </dependency>
-        <dependency>
-            <groupId>io.springfox</groupId>
-            <artifactId>springfox-swagger-ui</artifactId>
-            <scope>runtime</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-
     <build>
         <plugins>
             <plugin>
index 8267df4..580bffa 100644 (file)
@@ -29,10 +29,14 @@ import org.springframework.context.annotation.ComponentScan;
  * Starter.\r
  *\r
  */\r
+// @formatter:off\r
 @SpringBootApplication\r
 @ConfigurationPropertiesScan("org.onap.policy.clamp.controlloop.participant.simulator.main.parameters")\r
-@ComponentScan({"org.onap.policy.clamp.controlloop.participant.simulator",\r
-        "org.onap.policy.clamp.controlloop.participant.intermediary"})\r
+@ComponentScan({\r
+    "org.onap.policy.clamp.controlloop.participant.simulator",\r
+    "org.onap.policy.clamp.controlloop.participant.intermediary"\r
+})\r
+//@formatter:on\r
 public class ParticipantSimulatorApplication {\r
 \r
     public static void main(String[] args) {\r
index 3d099e7..f1f4f0e 100644 (file)
@@ -19,7 +19,8 @@
   ============LICENSE_END=========================================================
 -->
 
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
 
         <module>participant-impl-kubernetes</module>
     </modules>
 
-    <dependencyManagement>
-        <dependencies>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-web</artifactId>
-                <version>${version.springboot}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-webflux</artifactId>
-                <version>${version.springboot}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-validation</artifactId>
-                <version>${version.springboot}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-test</artifactId>
-                <version>${version.springboot}</version>
-                <scope>test</scope>
-            </dependency>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-security</artifactId>
-                <version>${version.springboot}</version>
-            </dependency>
-        </dependencies>
-    </dependencyManagement>
-
     <dependencies>
         <dependency>
             <groupId>org.onap.policy.clamp.participant</groupId>
             <artifactId>policy-clamp-participant-intermediary</artifactId>
             <version>${project.version}</version>
         </dependency>
-        <dependency>
-            <groupId>org.onap.policy.clamp</groupId>
-            <artifactId>policy-clamp-common</artifactId>
-            <classifier>tests</classifier>
-            <type>test-jar</type>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 </project>
index 9f75414..aac80a4 100644 (file)
     <description>Common intermediary library for managing DMaaP participant messaging and holding participant and control
      loop state</description>
 
-    <dependencies>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-webmvc</artifactId>
-        </dependency>
-    </dependencies>
-
 </project>
index b0ee3c0..015308b 100644 (file)
             <artifactId>policy-clamp-models</artifactId>
             <version>${project.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.onap.policy.clamp</groupId>
+            <artifactId>policy-clamp-common</artifactId>
+            <classifier>tests</classifier>
+            <type>test-jar</type>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
     </dependencies>
 
     <build>
diff --git a/pom.xml b/pom.xml
index 8661998..b330897 100644 (file)
--- a/pom.xml
+++ b/pom.xml
             <version>${policy.common.version}</version>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-validation</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-security</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>io.springfox</groupId>
+            <artifactId>springfox-boot-starter</artifactId>
+            <version>${version.springfox}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.immutables</groupId>
+            <artifactId>gson</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.mock-server</groupId>
+            <artifactId>mockserver-netty</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.mock-server</groupId>
+            <artifactId>mockserver-client-java</artifactId>
+            <scope>test</scope>
+        </dependency>
         <dependency>
             <groupId>org.assertj</groupId>
             <artifactId>assertj-core</artifactId>
index 78f3804..56735ae 100644 (file)
@@ -169,7 +169,7 @@ public class TestMonitoringProvider {
                 provider.fetchFilteredClElementStatistics(null, null, null, null, null, 0);
             }).hasMessageMatching("name is marked .*null but is null");
 
-            var lists = provider.createClElementStatistics(inputClElementStatistics.getClElementStatistics());
+            provider.createClElementStatistics(inputClElementStatistics.getClElementStatistics());
 
             getResponse = provider.fetchFilteredClElementStatistics("name1", null, null, null, null, 0);
 
index 4a3ca11..0e458ea 100644 (file)
         <dependency>
             <groupId>org.apache.tomcat.embed</groupId>
             <artifactId>tomcat-embed-core</artifactId>
-            <version>${version.tomcat}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.tomcat.embed</groupId>
             <artifactId>tomcat-embed-el</artifactId>
-            <version>${version.tomcat}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.tomcat.embed</groupId>
             <artifactId>tomcat-embed-websocket</artifactId>
-            <version>${version.tomcat}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.tomcat</groupId>
             <artifactId>tomcat-annotations-api</artifactId>
-            <version>${version.tomcat}</version>
         </dependency>
         <!-- For CAMEL -->
         <dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
-            <version>${version.springboot}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.springframework.boot</groupId>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-tomcat</artifactId>
-            <version>${version.springboot}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.glassfish</groupId>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-security</artifactId>
-            <version>${version.springboot}</version>
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-autoconfigure</artifactId>
-            <version>${version.springboot}</version>
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>
-            <version>${version.springboot}</version>
             <scope>test</scope>
             <exclusions>
                 <exclusion>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-data-jpa</artifactId>
-            <version>${version.springboot}</version>
         </dependency>
         <!-- Policy dependencies mainly for the models required -->
         <dependency>
         <dependency>
             <groupId>org.onap.sdc.sdc-tosca</groupId>
             <artifactId>sdc-tosca</artifactId>
-            <version>1.5.1</version>
             <exclusions>
                 <exclusion>
                     <groupId>com.fasterxml.jackson.core</groupId>
             </plugin>
             <!-- Read the swagger.json file and the definition from SwaggerConfig.java; generate
                 a list of .adoc files containing the APIs info in more structured way -->
-            <plugin>
+            <!-- plugin>
                 <groupId>io.github.swagger2markup</groupId>
                 <artifactId>swagger2markup-maven-plugin</artifactId>
                 <version>1.3.3</version>
                         </goals>
                     </execution>
                 </executions>
-            </plugin>
+            </plugin-->
 
             <!-- Run the generated asciidoc through Asciidoctor to generate other documentation
                 types, such as PDFs or HTML5 -->
-            <plugin>
+            <!-- plugin>
                 <groupId>org.asciidoctor</groupId>
                 <artifactId>asciidoctor-maven-plugin</artifactId>
                 <version>1.5.7.1</version>
                         </configuration>
                     </execution>
                 </executions>
-            </plugin>
+            </plugin-->
             <plugin>
                 <groupId>org.codehaus.groovy.maven</groupId>
                 <artifactId>gmaven-plugin</artifactId>
             <plugin>
                 <groupId>io.fabric8</groupId>
                 <artifactId>docker-maven-plugin</artifactId>
-                <version>0.35.0</version>
                 <dependencies>
                     <dependency>
                         <groupId>org.apache.httpcomponents</groupId>
             <plugin>
                 <groupId>org.jacoco</groupId>
                 <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
                 <configuration>
                     <dumpOnExit>true</dumpOnExit>
                     <append>true</append>
             <plugin>
                 <groupId>org.codehaus.mojo</groupId>
                 <artifactId>versions-maven-plugin</artifactId>
-                <version>1.3.1</version>
             </plugin>
 
             <plugin>
             <plugin>
                 <groupId>org.sonarsource.scanner.maven</groupId>
                 <artifactId>sonar-maven-plugin</artifactId>
-                <version>${sonar.scanner.version}</version>
             </plugin>
             <plugin>
                 <groupId>org.codehaus.mojo</groupId>
                 <artifactId>exec-maven-plugin</artifactId>
-                <version>1.3.2</version>
                 <executions>
                     <execution>
                         <id>libIndexCheck</id>
index 07c1742..bdab9c9 100644 (file)
@@ -6,6 +6,7 @@
  *                             reserved.
  * ================================================================================
  * Modifications Copyright (c) 2019 Samsung
+ * Modifications Copyright (C) 2021 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -20,7 +21,6 @@
  * limitations under the License.
  * ============LICENSE_END============================================
  * ===================================================================
- *
  */
 
 package org.onap.policy.clamp.clds;
@@ -61,7 +61,7 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
 
 @ComponentScan(basePackages = {"org.onap.policy.clamp"})
 @SpringBootApplication(exclude = {SecurityAutoConfiguration.class, UserDetailsServiceAutoConfiguration.class,
-        ServletMappingAutoConfiguration.class})
+    ServletMappingAutoConfiguration.class})
 @EnableJpaRepositories(basePackages = {"org.onap.policy.clamp"})
 @EntityScan(basePackages = {"org.onap.policy.clamp"})
 @EnableTransactionManagement
index 6eb3c71..52f1c5d 100644 (file)
@@ -4,6 +4,7 @@
  * ================================================================================
  * Copyright (C) 2018 AT&T Intellectual Property. All rights
  *                             reserved.
+ * Modifications Copyright (C) 2021 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -103,8 +104,8 @@ public class LoopElementModel extends AuditEntity implements Serializable {
             name = "loopelementmodels_to_policymodels",
             joinColumns = @JoinColumn(name = "loop_element_name", referencedColumnName = "name"),
             inverseJoinColumns = {
-                    @JoinColumn(name = "policy_model_type", referencedColumnName = "policy_model_type"),
-                    @JoinColumn(name = "policy_model_version", referencedColumnName = "version")})
+                @JoinColumn(name = "policy_model_type", referencedColumnName = "policy_model_type"),
+                @JoinColumn(name = "policy_model_version", referencedColumnName = "version")})
     @SortNatural
     private SortedSet<PolicyModel> policyModels = new TreeSet<>();
 
index 4f748d5..40ea25f 100644 (file)
@@ -4,6 +4,7 @@
  * ================================================================================
  * Copyright (C) 2020 AT&T Intellectual Property. All rights
  *                             reserved.
+ * Modifications Copyright (C) 2021 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -70,8 +71,8 @@ public class Dictionary extends AuditEntity implements Serializable {
         name = "dictionary_to_dictionaryelements",
         joinColumns = @JoinColumn(name = "dictionary_name", referencedColumnName = "name"),
         inverseJoinColumns = {@JoinColumn(
-            name = "dictionary_element_short_name",
-            referencedColumnName = "short_name")})
+                name = "dictionary_element_short_name",
+                referencedColumnName = "short_name")})
     private Set<DictionaryElement> dictionaryElements = new HashSet<>();
 
     /**
index aa4c3cb..e92b7b2 100644 (file)
@@ -1,24 +1,24 @@
 <rests xmlns="http://camel.apache.org/schema/spring">
-       <rest>
-               <get uri="/v1/healthcheck" produces="application/json"
-                       outType="org.onap.policy.clamp.clds.model.CldsHealthCheck">
-                       <route>
-                               <setBody>
-                                       <method ref="org.onap.policy.clamp.clds.service.CldsHealthcheckService"
-                                               method="gethealthcheck()" />
-                               </setBody>
-                               <when>
-                                       <simple> ${body} == 'NOT-OK'</simple>
-                                       <setHeader name="CamelHttpResponseCode">
-                                               <constant>404</constant>
-                                       </setHeader>
-                                       <log loggingLevel="ERROR" message="HealthCheck failed" />
-                               </when>
-                       </route>
-               </get>
+    <rest>
+        <get uri="/v1/healthcheck" produces="application/json"
+            outType="org.onap.policy.clamp.clds.model.CldsHealthCheck">
+            <route>
+                <setBody>
+                    <method ref="org.onap.policy.clamp.clds.service.CldsHealthcheckService"
+                        method="gethealthcheck()" />
+                </setBody>
+                <when>
+                    <simple> ${body} == 'NOT-OK'</simple>
+                    <setHeader name="CamelHttpResponseCode">
+                        <constant>404</constant>
+                    </setHeader>
+                    <log loggingLevel="ERROR" message="HealthCheck failed" />
+                </when>
+            </route>
+        </get>
 
-               <get uri="/v1/user/getUser" produces="text/plain">
-                       <to uri="bean:org.onap.policy.clamp.authorization.UserService?method=getUser()" />
-               </get>
-       </rest>
+        <get uri="/v1/user/getUser" produces="text/plain">
+            <to uri="bean:org.onap.policy.clamp.authorization.UserService?method=getUser()" />
+        </get>
+    </rest>
 </rests>
index 4a3cc84..85e73ed 100644 (file)
 <routes xmlns="http://camel.apache.org/schema/spring">
-       <route id="load-loop">
-               <from uri="direct:load-loop" />
-               <setBody>
-                       <simple>${header.loopName}</simple>
-               </setBody>
-               <setProperty name="loopObject">
-                       <method ref="org.onap.policy.clamp.loop.LoopService" method="getLoop" />
-               </setProperty>
+    <route id="load-loop">
+        <from uri="direct:load-loop" />
+        <setBody>
+            <simple>${header.loopName}</simple>
+        </setBody>
+        <setProperty name="loopObject">
+            <method ref="org.onap.policy.clamp.loop.LoopService" method="getLoop" />
+        </setProperty>
 
-               <when>
-                       <simple>${exchangeProperty[loopObject]} == null</simple>
-                       <setHeader name="CamelHttpResponseCode">
-                               <constant>404</constant>
-                       </setHeader>
-                       <log loggingLevel="WARN" message="Loop not found in database: ${body}" />
-                       <stop />
-               </when>
-       </route>
-       <route id="update-policy-status-for-loop">
-               <from uri="direct:update-policy-status-for-loop" />
-               <setProperty name="policyComponent">
-                       <simple>${exchangeProperty[loopObject].getComponent('POLICY')}
-                       </simple>
-               </setProperty>
-               <setProperty name="policyFound">
-                       <simple resultType="java.lang.Boolean">true</simple>
-               </setProperty>
-               <setProperty name="policyDeployed">
-                       <simple resultType="java.lang.Boolean">true</simple>
-               </setProperty>
-               <log loggingLevel="INFO"
-                       message="Processing all MICRO-SERVICES policies defined in loop ${exchangeProperty[loopObject].getName()}" />
-               <split>
-                       <simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
-                       </simple>
-                       <setProperty name="policyName">
-                               <simple>${body.getName()}</simple>
-                       </setProperty>
-                       <setProperty name="policyType">
-                               <simple>${body.getPolicyModel().getPolicyModelType()}</simple>
-                       </setProperty>
-                       <setProperty name="policyTypeVersion">
-                               <simple>${body.getPolicyModel().getVersion()}</simple>
-                       </setProperty>
-                       <setProperty name="policyPdpGroup">
-                               <simple>${body.getPdpGroup()}</simple>
-                       </setProperty>
-                       <setProperty name="policyVersion">
-                               <simple>1.0.0</simple>
-                       </setProperty>
-                       <setBody>
-                               <constant>null</constant>
-                       </setBody>
-                       <log loggingLevel="INFO"
-                               message="Processing Micro Service Policy: ${exchangeProperty[policyName]} of type ${exchangeProperty[policyType]}" />
-                       <to uri="direct:verify-one-policy" />
-               </split>
-               <log loggingLevel="INFO"
-                       message="Processing all OPERATIONAL policies defined in loop ${exchangeProperty[loopObject].getName()}" />
-               <split>
-                       <simple>${exchangeProperty[loopObject].getOperationalPolicies()}
-                       </simple>
-                       <setProperty name="policyName">
-                               <simple>${body.getName()}</simple>
-                       </setProperty>
-                       <setProperty name="policyType">
-                               <simple>${body.getPolicyModel().getPolicyModelType()}</simple>
-                       </setProperty>
-                       <setProperty name="policyTypeVersion">
-                               <simple>${body.getPolicyModel().getVersion()}</simple>
-                       </setProperty>
-                       <setProperty name="policyVersion">
-                               <simple>1.0.0</simple>
-                       </setProperty>
-                       <setProperty name="policyPdpGroup">
-                               <simple>${body.getPdpGroup()}</simple>
-                       </setProperty>
-                       <setBody>
-                               <constant>null</constant>
-                       </setBody>
-                       <log loggingLevel="INFO"
-                               message="Processing Operational Policy: ${exchangeProperty[policyName]} of type ${exchangeProperty[policyType]}" />
-                       <to uri="direct:verify-one-policy" />
-               </split>
-               <setProperty name="policyState">
-                       <simple> ${exchangeProperty[policyComponent].getState()}
-                       </simple>
-               </setProperty>
-               <log loggingLevel="INFO"
-                       message="Policy state set to: ${exchangeProperty[policyState].getStateName()}" />
-               <to
-                       uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLogForComponent('Policy state set to: ${exchangeProperty[policyState].getStateName()}','INFO','POLICY',${exchangeProperty[loopObject]})" />
-       </route>
-       <route id="update-dcae-status-for-loop">
-               <from uri="direct:update-dcae-status-for-loop" />
-               <log loggingLevel="INFO"
-                       message="Updating DCAE status for loop: ${exchangeProperty[loopObject].getName()}" />
-               <choice>
-                       <when>
-                               <simple>${exchangeProperty['loopObject'].getLoopTemplate().getUniqueBlueprint()} == true
-                               </simple>
-                                       <setProperty name="dcaeComponent">
-                                               <simple>${exchangeProperty[loopObject].getComponent('DCAE')}</simple>
-                                       </setProperty>
-                               <when>
-                                       <simple>${exchangeProperty[loopObject].getDcaeDeploymentStatusUrl()} != null
-                                       </simple>
-                                       <setProperty name="getStatusUrl">
-                                               <simple>${exchangeProperty[loopObject].getDcaeDeploymentStatusUrl()}</simple>
-                                       </setProperty>
-                                       <setProperty name="raiseHttpExceptionFlag">
-                                               <simple resultType="java.lang.Boolean">false</simple>
-                                       </setProperty>
-                                       <to uri="direct:get-dcae-deployment-status" />
-                                       <when>
-                                               <simple> ${header.CamelHttpResponseCode} == 200 </simple>
-                                               <convertBodyTo type="java.lang.String" />
-                                               <setProperty name="dcaeResponse">
-                                                       <method ref="org.onap.policy.clamp.loop.components.external.DcaeComponent"
-                                                               method="convertDcaeResponse(${body})" />
-                                               </setProperty>
-                                       </when>
-                               </when>
-                               <setProperty name="dcaeState">
-                                       <simple> ${exchangeProperty[dcaeComponent].computeState(*)}
-                                       </simple>
-                               </setProperty>
-                               <log loggingLevel="INFO"
-                                       message="DCAE state set to: ${exchangeProperty[dcaeState].getStateName()} - DCAE message: ${exchangeProperty[dcaeResponse].getError()}" />
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLogForComponent('DCAE state set to: ${exchangeProperty[dcaeState].getStateName()} - message: ${exchangeProperty[dcaeResponse].getError()}','INFO','DCAE',${exchangeProperty[loopObject]})" />
-                       </when>
-                       <when>
-                               <simple>${exchangeProperty['loopObject'].getLoopTemplate().getUniqueBlueprint()} == false
-                               </simple>
-                               <split>
-                                       <simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
-                                       </simple>
-                                       <setProperty name="microServicePolicy">
-                                               <simple>${body}</simple>
-                                       </setProperty>
-                                       <setProperty name="dcaeComponent">
-                                               <simple>${exchangeProperty[loopObject].getComponent('DCAE_' + ${exchangeProperty[microServicePolicy].getName()})}</simple>
-                                       </setProperty>
-                                       <when>
-                                               <simple>${exchangeProperty[microServicePolicy].getDcaeDeploymentStatusUrl()} != null
-                                               </simple>
-                                               <setProperty name="getStatusUrl">
-                                                       <simple>${exchangeProperty[microServicePolicy].getDcaeDeploymentStatusUrl()}</simple>
-                                               </setProperty>
-                                               <setProperty name="raiseHttpExceptionFlag">
-                                                       <simple resultType="java.lang.Boolean">false</simple>
-                                               </setProperty>
-                                               <to uri="direct:get-dcae-deployment-status" />
-                                               <when>
-                                                       <simple> ${header.CamelHttpResponseCode} == 200 </simple>
-                                                       <convertBodyTo type="java.lang.String" />
-                                                       <setProperty name="dcaeResponse">
-                                                               <method ref="org.onap.policy.clamp.loop.components.external.DcaeComponent"
-                                                                       method="convertDcaeResponse(${body})" />
-                                                       </setProperty>
-                                               </when>
-                                       </when>
-                                       <setProperty name="dcaeState">
-                                               <simple> ${exchangeProperty[dcaeComponent].computeState(*)}
-                                               </simple>
-                                       </setProperty>
-                                       <log loggingLevel="INFO"
-                                               message="DCAE state set to: ${exchangeProperty[dcaeState].getStateName()} - DCAE message: ${exchangeProperty[dcaeResponse].getError()}" />
-                                       <to
-                                               uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLogForComponent('DCAE state set to: ${exchangeProperty[dcaeState].getStateName()} - message: ${exchangeProperty[dcaeResponse].getError()}','INFO','DCAE',${exchangeProperty[microServicePolicy]})" />
-                               </split>>
-                       </when>
-               </choice>
-               </route>
-       <route id="direct:update-loop-state">
-               <from uri="direct:update-loop-state" />
-               <log loggingLevel="INFO"
-                       message="Updating status for loop: ${exchangeProperty[loopObject].getName()}" />
-               <choice>
-                       <when>
-                               <simple>${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'BLUEPRINT_DEPLOYED' &amp;&amp; ${exchangeProperty['policyState'].getStateName()}
-                                       == 'NOT_SENT'
-                               </simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'DESIGN')" />
-                       </when>
-                       <when>
-                               <simple>${exchangeProperty['dcaeState'].getStateName()} == 'IN_ERROR' ||
-                                       ${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'MICROSERVICE_INSTALLATION_FAILED'
-                               </simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'IN_ERROR')" />
-                       </when>
-                       <when>
-                               <simple>${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'MICROSERVICE_UNINSTALLATION_FAILED' ||
-                                       ${exchangeProperty['policyState'].getStateName()} == 'IN_ERROR'
-                               </simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'IN_ERROR')" />
-                       </when>
-                       <when>
-                               <simple>${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'MICROSERVICE_INSTALLED_SUCCESSFULLY' &amp;&amp;
-                                       ${exchangeProperty['policyState'].getStateName()} == 'SENT_AND_DEPLOYED'
-                               </simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'RUNNING')" />
-                       </when>
-                       <when>
-                               <simple>${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'MICROSERVICE_INSTALLED_SUCCESSFULLY' &amp;&amp;
-                                       ${exchangeProperty['policyState'].getStateName()} == 'SENT'
-                               </simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'STOPPED')" />
-                       </when>
-                       <when>
-                               <simple>${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'BLUEPRINT_DEPLOYED' || ${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'MICROSERVICE_UNINSTALLED_SUCCESSFULLY' &amp;&amp;
-                                       ${exchangeProperty['policyState'].getStateName()} == 'SENT_AND_DEPLOYED'
-                               </simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'SUBMITTED')" />
-                       </when>
-                       <when>
-                               <simple>${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'PROCESSING_MICROSERVICE_INSTALLATION' ||
-                                       ${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'PROCESSING_MICROSERVICE_UNINSTALLATION' &amp;&amp;
-                                       ${exchangeProperty['policyState'].getStateName()} == 'SENT_AND_DEPLOYED'
-                               </simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'WAITING')" />
-                       </when>
-                       <when>
-                               <simple>${exchangeProperty['dcaeState'].getStateName()} ==
-                                       'MICROSERVICE_INSTALLED_SUCCESSFULLY' &amp;&amp;
-                                       ${exchangeProperty['policyState'].getStateName()} != 'NOT_SENT'
-                               </simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'DEPLOYED')" />
-                       </when>
-               </choice>
-               <log loggingLevel="INFO"
-                       message="New loop state is: ${exchangeProperty[loopObject].getLastComputedState().toString()}" />
-               <to
-                       uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLog('New loop state is: ${exchangeProperty[loopObject].getLastComputedState().toString()}','INFO',${exchangeProperty[loopObject]})" />
+        <when>
+            <simple>${exchangeProperty[loopObject]} == null</simple>
+            <setHeader name="CamelHttpResponseCode">
+                <constant>404</constant>
+            </setHeader>
+            <log loggingLevel="WARN" message="Loop not found in database: ${body}" />
+            <stop />
+        </when>
+    </route>
+    <route id="update-policy-status-for-loop">
+        <from uri="direct:update-policy-status-for-loop" />
+        <setProperty name="policyComponent">
+            <simple>${exchangeProperty[loopObject].getComponent('POLICY')}
+            </simple>
+        </setProperty>
+        <setProperty name="policyFound">
+            <simple resultType="java.lang.Boolean">true</simple>
+        </setProperty>
+        <setProperty name="policyDeployed">
+            <simple resultType="java.lang.Boolean">true</simple>
+        </setProperty>
+        <log loggingLevel="INFO"
+            message="Processing all MICRO-SERVICES policies defined in loop ${exchangeProperty[loopObject].getName()}" />
+        <split>
+            <simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
+            </simple>
+            <setProperty name="policyName">
+                <simple>${body.getName()}</simple>
+            </setProperty>
+            <setProperty name="policyType">
+                <simple>${body.getPolicyModel().getPolicyModelType()}</simple>
+            </setProperty>
+            <setProperty name="policyTypeVersion">
+                <simple>${body.getPolicyModel().getVersion()}</simple>
+            </setProperty>
+            <setProperty name="policyPdpGroup">
+                <simple>${body.getPdpGroup()}</simple>
+            </setProperty>
+            <setProperty name="policyVersion">
+                <simple>1.0.0</simple>
+            </setProperty>
+            <setBody>
+                <constant>null</constant>
+            </setBody>
+            <log loggingLevel="INFO"
+                message="Processing Micro Service Policy: ${exchangeProperty[policyName]} of type ${exchangeProperty[policyType]}" />
+            <to uri="direct:verify-one-policy" />
+        </split>
+        <log loggingLevel="INFO"
+            message="Processing all OPERATIONAL policies defined in loop ${exchangeProperty[loopObject].getName()}" />
+        <split>
+            <simple>${exchangeProperty[loopObject].getOperationalPolicies()}
+            </simple>
+            <setProperty name="policyName">
+                <simple>${body.getName()}</simple>
+            </setProperty>
+            <setProperty name="policyType">
+                <simple>${body.getPolicyModel().getPolicyModelType()}</simple>
+            </setProperty>
+            <setProperty name="policyTypeVersion">
+                <simple>${body.getPolicyModel().getVersion()}</simple>
+            </setProperty>
+             <setProperty name="policyVersion">
+                <simple>1.0.0</simple>
+            </setProperty>
+            <setProperty name="policyPdpGroup">
+                <simple>${body.getPdpGroup()}</simple>
+            </setProperty>
+            <setBody>
+                <constant>null</constant>
+            </setBody>
+            <log loggingLevel="INFO"
+                message="Processing Operational Policy: ${exchangeProperty[policyName]} of type ${exchangeProperty[policyType]}" />
+            <to uri="direct:verify-one-policy" />
+        </split>
+        <setProperty name="policyState">
+            <simple> ${exchangeProperty[policyComponent].getState()}
+            </simple>
+        </setProperty>
+        <log loggingLevel="INFO"
+            message="Policy state set to: ${exchangeProperty[policyState].getStateName()}" />
+        <to
+            uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLogForComponent('Policy state set to: ${exchangeProperty[policyState].getStateName()}','INFO','POLICY',${exchangeProperty[loopObject]})" />
+    </route>
+    <route id="update-dcae-status-for-loop">
+        <from uri="direct:update-dcae-status-for-loop" />
+        <log loggingLevel="INFO"
+            message="Updating DCAE status for loop: ${exchangeProperty[loopObject].getName()}" />
+        <choice>
+            <when>
+                <simple>${exchangeProperty['loopObject'].getLoopTemplate().getUniqueBlueprint()} == true
+                </simple>
+                    <setProperty name="dcaeComponent">
+                        <simple>${exchangeProperty[loopObject].getComponent('DCAE')}</simple>
+                    </setProperty>
+                <when>
+                    <simple>${exchangeProperty[loopObject].getDcaeDeploymentStatusUrl()} != null
+                    </simple>
+                    <setProperty name="getStatusUrl">
+                        <simple>${exchangeProperty[loopObject].getDcaeDeploymentStatusUrl()}</simple>
+                    </setProperty>
+                    <setProperty name="raiseHttpExceptionFlag">
+                        <simple resultType="java.lang.Boolean">false</simple>
+                    </setProperty>
+                    <to uri="direct:get-dcae-deployment-status" />
+                    <when>
+                        <simple> ${header.CamelHttpResponseCode} == 200 </simple>
+                        <convertBodyTo type="java.lang.String" />
+                        <setProperty name="dcaeResponse">
+                            <method ref="org.onap.policy.clamp.loop.components.external.DcaeComponent"
+                                method="convertDcaeResponse(${body})" />
+                        </setProperty>
+                    </when>
+                </when>
+                <setProperty name="dcaeState">
+                    <simple> ${exchangeProperty[dcaeComponent].computeState(*)}
+                    </simple>
+                </setProperty>
+                <log loggingLevel="INFO"
+                    message="DCAE state set to: ${exchangeProperty[dcaeState].getStateName()} - DCAE message: ${exchangeProperty[dcaeResponse].getError()}" />
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLogForComponent('DCAE state set to: ${exchangeProperty[dcaeState].getStateName()} - message: ${exchangeProperty[dcaeResponse].getError()}','INFO','DCAE',${exchangeProperty[loopObject]})" />
+            </when>
+            <when>
+                <simple>${exchangeProperty['loopObject'].getLoopTemplate().getUniqueBlueprint()} == false
+                </simple>
+                <split>
+                    <simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
+                    </simple>
+                    <setProperty name="microServicePolicy">
+                        <simple>${body}</simple>
+                    </setProperty>
+                    <setProperty name="dcaeComponent">
+                        <simple>${exchangeProperty[loopObject].getComponent('DCAE_' + ${exchangeProperty[microServicePolicy].getName()})}</simple>
+                    </setProperty>
+                    <when>
+                        <simple>${exchangeProperty[microServicePolicy].getDcaeDeploymentStatusUrl()} != null
+                        </simple>
+                        <setProperty name="getStatusUrl">
+                            <simple>${exchangeProperty[microServicePolicy].getDcaeDeploymentStatusUrl()}</simple>
+                        </setProperty>
+                        <setProperty name="raiseHttpExceptionFlag">
+                            <simple resultType="java.lang.Boolean">false</simple>
+                        </setProperty>
+                        <to uri="direct:get-dcae-deployment-status" />
+                        <when>
+                            <simple> ${header.CamelHttpResponseCode} == 200 </simple>
+                            <convertBodyTo type="java.lang.String" />
+                            <setProperty name="dcaeResponse">
+                                <method ref="org.onap.policy.clamp.loop.components.external.DcaeComponent"
+                                    method="convertDcaeResponse(${body})" />
+                            </setProperty>
+                        </when>
+                    </when>
+                    <setProperty name="dcaeState">
+                        <simple> ${exchangeProperty[dcaeComponent].computeState(*)}
+                        </simple>
+                    </setProperty>
+                    <log loggingLevel="INFO"
+                        message="DCAE state set to: ${exchangeProperty[dcaeState].getStateName()} - DCAE message: ${exchangeProperty[dcaeResponse].getError()}" />
+                    <to
+                        uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLogForComponent('DCAE state set to: ${exchangeProperty[dcaeState].getStateName()} - message: ${exchangeProperty[dcaeResponse].getError()}','INFO','DCAE',${exchangeProperty[microServicePolicy]})" />
+                </split>>
+            </when>
+        </choice>
+        </route>
+    <route id="direct:update-loop-state">
+        <from uri="direct:update-loop-state" />
+        <log loggingLevel="INFO"
+            message="Updating status for loop: ${exchangeProperty[loopObject].getName()}" />
+        <choice>
+            <when>
+                <simple>${exchangeProperty['dcaeState'].getStateName()} ==
+                    'BLUEPRINT_DEPLOYED' &amp;&amp; ${exchangeProperty['policyState'].getStateName()}
+                    == 'NOT_SENT'
+                </simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'DESIGN')" />
+            </when>
+            <when>
+                <simple>${exchangeProperty['dcaeState'].getStateName()} == 'IN_ERROR' ||
+                    ${exchangeProperty['dcaeState'].getStateName()} ==
+                    'MICROSERVICE_INSTALLATION_FAILED'
+                </simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'IN_ERROR')" />
+            </when>
+            <when>
+                <simple>${exchangeProperty['dcaeState'].getStateName()} ==
+                    'MICROSERVICE_UNINSTALLATION_FAILED' ||
+                    ${exchangeProperty['policyState'].getStateName()} == 'IN_ERROR'
+                </simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'IN_ERROR')" />
+            </when>
+            <when>
+                <simple>${exchangeProperty['dcaeState'].getStateName()} ==
+                    'MICROSERVICE_INSTALLED_SUCCESSFULLY' &amp;&amp;
+                    ${exchangeProperty['policyState'].getStateName()} == 'SENT_AND_DEPLOYED'
+                </simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'RUNNING')" />
+            </when>
+            <when>
+                <simple>${exchangeProperty['dcaeState'].getStateName()} ==
+                    'MICROSERVICE_INSTALLED_SUCCESSFULLY' &amp;&amp;
+                    ${exchangeProperty['policyState'].getStateName()} == 'SENT'
+                </simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'STOPPED')" />
+            </when>
+            <when>
+                <simple>${exchangeProperty['dcaeState'].getStateName()} ==
+                    'BLUEPRINT_DEPLOYED' || ${exchangeProperty['dcaeState'].getStateName()} ==
+                    'MICROSERVICE_UNINSTALLED_SUCCESSFULLY' &amp;&amp;
+                    ${exchangeProperty['policyState'].getStateName()} == 'SENT_AND_DEPLOYED'
+                </simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'SUBMITTED')" />
+            </when>
+            <when>
+                <simple>${exchangeProperty['dcaeState'].getStateName()} ==
+                    'PROCESSING_MICROSERVICE_INSTALLATION' ||
+                    ${exchangeProperty['dcaeState'].getStateName()} ==
+                    'PROCESSING_MICROSERVICE_UNINSTALLATION' &amp;&amp;
+                    ${exchangeProperty['policyState'].getStateName()} == 'SENT_AND_DEPLOYED'
+                </simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'WAITING')" />
+            </when>
+            <when>
+                <simple>${exchangeProperty['dcaeState'].getStateName()} ==
+                    'MICROSERVICE_INSTALLED_SUCCESSFULLY' &amp;&amp;
+                    ${exchangeProperty['policyState'].getStateName()} != 'NOT_SENT'
+                </simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.LoopService?method=updateLoopState(${exchangeProperty[loopObject]},'DEPLOYED')" />
+            </when>
+        </choice>
+        <log loggingLevel="INFO"
+            message="New loop state is: ${exchangeProperty[loopObject].getLastComputedState().toString()}" />
+        <to
+            uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLog('New loop state is: ${exchangeProperty[loopObject].getLastComputedState().toString()}','INFO',${exchangeProperty[loopObject]})" />
 
-       </route>
-</routes>
\ No newline at end of file
+    </route>
+</routes>
index 90900f8..da91335 100644 (file)
@@ -1,28 +1,28 @@
 <routes xmlns="http://camel.apache.org/schema/spring">
-       <route id="reset-raise-http-exception-flag">
-               <from uri="direct:reset-raise-http-exception-flag" />
-               <setProperty name="raiseHttpExceptionFlag">
-                       <simple resultType="java.lang.Boolean">true</simple>
-               </setProperty>
-       </route>
+    <route id="reset-raise-http-exception-flag">
+        <from uri="direct:reset-raise-http-exception-flag" />
+        <setProperty name="raiseHttpExceptionFlag">
+            <simple resultType="java.lang.Boolean">true</simple>
+        </setProperty>
+    </route>
 
-       <route id="dump-loop-log-http-response">
-               <from uri="direct:dump-loop-log-http-response" />
-               <log loggingLevel="INFO"
-                       message="${exchangeProperty[logMessage]} - ${header.CamelHttpResponseCode} : ${header.CamelHttpResponseText}" />
-               <choice>
-                       <when>
-                               <simple>${exchangeProperty[logComponent]} == null</simple>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLog('${exchangeProperty[logMessage]} - ${header.CamelHttpResponseCode} : ${header.CamelHttpResponseText}','INFO',${exchangeProperty[loopObject]})" />
-                       </when>
-                       <otherwise>
-                               <to
-                                       uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLogForComponent('${exchangeProperty[logMessage]} - ${header.CamelHttpResponseCode} : ${header.CamelHttpResponseText}','INFO','${exchangeProperty[logComponent]}',${exchangeProperty[loopObject]})" />
-                               <setProperty name="logComponent">
-                                       <constant>null</constant>
-                               </setProperty>
-                       </otherwise>
-               </choice>
-       </route>
-</routes>
\ No newline at end of file
+    <route id="dump-loop-log-http-response">
+        <from uri="direct:dump-loop-log-http-response" />
+        <log loggingLevel="INFO"
+            message="${exchangeProperty[logMessage]} - ${header.CamelHttpResponseCode} : ${header.CamelHttpResponseText}" />
+        <choice>
+            <when>
+                <simple>${exchangeProperty[logComponent]} == null</simple>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLog('${exchangeProperty[logMessage]} - ${header.CamelHttpResponseCode} : ${header.CamelHttpResponseText}','INFO',${exchangeProperty[loopObject]})" />
+            </when>
+            <otherwise>
+                <to
+                    uri="bean:org.onap.policy.clamp.loop.log.LoopLogService?method=addLogForComponent('${exchangeProperty[logMessage]} - ${header.CamelHttpResponseCode} : ${header.CamelHttpResponseText}','INFO','${exchangeProperty[logComponent]}',${exchangeProperty[loopObject]})" />
+                <setProperty name="logComponent">
+                    <constant>null</constant>
+                </setProperty>
+            </otherwise>
+        </choice>
+    </route>
+</routes>
index 5397eab..1d7b2a1 100644 (file)
 <included>
-       <jmxConfigurator />
-       <!-- Example evaluator filter applied against console appender -->
-       <property
-               name="p_tim"
-               value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}" />
-       <property
-               name="p_lvl"
-               value="%level" />
-       <property
-               name="p_log"
-               value="%logger" />
-       <property
-               name="p_mdc"
-               value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}" />
-       <property
-               name="p_msg"
-               value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}" />
-       <property
-               name="p_exc"
-               value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}" />
-       <property
-               name="p_mak"
-               value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}" />
-       <property
-               name="p_thr"
-               value="%thread" />
-       <property
-               name="defaultPattern"
-               value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n" />
-       <property
-               name="debugPattern"
-               value="%nopexception${p_tim}|${p_lvl}|${p_mdc}|${p_exc}|%msg%n" />
-               
-       <property
-               name="errorPattern"
-               value="%X{EntryTimestamp}|%X{RequestID}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}||||%msg%n" />
-               
-       <property
-               name="auditPattern"
-               value="%X{EntryTimestamp}|%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX,UTC}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}||||%marker|%mdc|||%msg%n" />
-               
-       <property
-               name="metricPattern"
-               value="%X{InvokeTimestamp}|%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX,UTC}|%X{RequestID}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|%marker|%mdc|||%msg%n" />
-
-
-       <!-- Example evaluator filter applied against console appender -->
-       <appender
-               name="STDOUT"
-               class="ch.qos.logback.core.ConsoleAppender">
-               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-                       <level>INFO</level>
-               </filter>
-               <encoder>
-                       <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
-                       </pattern>
-               </encoder>
-       </appender>
-
-       <appender
-               name="ERROR"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <filter class="ch.qos.logback.classic.filter.LevelFilter">
+    <jmxConfigurator />
+    <!-- Example evaluator filter applied against console appender -->
+    <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}" />
+    <property name="p_lvl" value="%level" />
+    <property name="p_log" value="%logger" />
+    <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}" />
+    <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}" />
+    <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}" />
+    <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}" />
+    <property name="p_thr" value="%thread" />
+    <property name="defaultPattern"
+        value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n" />
+    <property name="debugPattern" value="%nopexception${p_tim}|${p_lvl}|${p_mdc}|${p_exc}|%msg%n" />
+
+    <property name="errorPattern"
+        value="%X{EntryTimestamp}|%X{RequestID}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}||||%msg%n" />
+
+    <property name="auditPattern"
+        value="%X{EntryTimestamp}|%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX,UTC}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}||||%marker|%mdc|||%msg%n" />
+
+    <property name="metricPattern"
+        value="%X{InvokeTimestamp}|%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX,UTC}|%X{RequestID}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|%marker|%mdc|||%msg%n" />
+
+
+    <!-- Example evaluator filter applied against console appender -->
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <level>INFO</level>
+        </filter>
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+            </pattern>
+        </encoder>
+    </appender>
+
+    <appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
             <level>ERROR</level>
             <onMatch>ACCEPT</onMatch>
             <onMismatch>DENY</onMismatch>
         </filter>
-               <file>${logDirectory}/error.log</file>
-               <append>true</append>
-               <encoder>
-                       <pattern>${errorPattern}</pattern>
-               </encoder>
-               <rollingPolicy
-                       class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-                       <fileNamePattern>${logDirectory}/error.%d{yyyy-MM-dd}.%i.log.zip
-                       </fileNamePattern>
-                       <maxFileSize>50MB</maxFileSize>
-                       <maxHistory>20</maxHistory>
-                       <totalSizeCap>1GB</totalSizeCap>
-               </rollingPolicy>
-       </appender>
-
-       <appender
-               name="DEBUG"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <file>${logDirectory}/debug.log</file>
-               <append>true</append>
-               <encoder>
-                       <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
-                       </pattern>
-               </encoder>
-               <rollingPolicy
-                       class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-                       <fileNamePattern>${logDirectory}/debug.%d{yyyy-MM-dd}.%i.log.zip
-                       </fileNamePattern>
-                       <maxFileSize>50MB</maxFileSize>
-                       <maxHistory>20</maxHistory>
-                       <totalSizeCap>1GB</totalSizeCap>
-               </rollingPolicy>
-       </appender>
-
-
-       <appender
-               name="AUDIT"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+        <file>${logDirectory}/error.log</file>
+        <append>true</append>
+        <encoder>
+            <pattern>${errorPattern}</pattern>
+        </encoder>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>${logDirectory}/error.%d{yyyy-MM-dd}.%i.log.zip
+            </fileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>20</maxHistory>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+    </appender>
+
+    <appender name="DEBUG" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/debug.log</file>
+        <append>true</append>
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+            </pattern>
+        </encoder>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>${logDirectory}/debug.%d{yyyy-MM-dd}.%i.log.zip
+            </fileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>20</maxHistory>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+    </appender>
+
+
+    <appender name="AUDIT" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
                 <marker>ENTRY</marker>
                 <marker>EXIT</marker>
             <onMismatch>DENY</onMismatch>
             <onMatch>ACCEPT</onMatch>
         </filter>
-               <file>${logDirectory}/audit.log</file>
-               <append>true</append>
-               <encoder>
-                       <pattern>${auditPattern}</pattern>
-               </encoder>
-               <rollingPolicy
-                               class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-                       <FileNamePattern>${logDirectory}/audit.%d{yyyy-MM-dd}.%i.log.zip
-                       </FileNamePattern>
-                       <maxFileSize>50MB</maxFileSize>
-                       <maxHistory>20</maxHistory>
-                       <totalSizeCap>1GB</totalSizeCap>
-               </rollingPolicy>
-       </appender>
-       <appender
-               name="asyncEELFAudit"
-               class="ch.qos.logback.classic.AsyncAppender">
-               <queueSize>256</queueSize>
-               <appender-ref ref="AUDIT" />
-       </appender>
-
-       <appender
-               name="METRIC"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+        <file>${logDirectory}/audit.log</file>
+        <append>true</append>
+        <encoder>
+            <pattern>${auditPattern}</pattern>
+        </encoder>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <FileNamePattern>${logDirectory}/audit.%d{yyyy-MM-dd}.%i.log.zip
+            </FileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>20</maxHistory>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+    </appender>
+    <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="AUDIT" />
+    </appender>
+
+    <appender name="METRIC" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
                 <marker>INVOKE</marker>
                 <marker>INVOKE-RETURN</marker>
             <onMismatch>DENY</onMismatch>
             <onMatch>ACCEPT</onMatch>
         </filter>
-               <file>${logDirectory}/metric.log</file>
-               <append>true</append>
-               <encoder>
-                       <pattern>${metricPattern}</pattern>
-               </encoder>
-               <rollingPolicy
-                               class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-                       <FileNamePattern>${logDirectory}/metric.%d{yyyy-MM-dd}.%i.log.zip
-                       </FileNamePattern>
-                       <maxFileSize>50MB</maxFileSize>
-                       <maxHistory>20</maxHistory>
-                       <totalSizeCap>1GB</totalSizeCap>
-               </rollingPolicy>
-       </appender>
-
-       <appender
-               name="asyncEELFMetrics"
-               class="ch.qos.logback.classic.AsyncAppender">
-               <queueSize>256</queueSize>
-               <appender-ref ref="METRIC" />
-       </appender>
-
-       <!-- SECURITY related loggers -->
-       <appender
-               name="SECURITY"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <file>${logDirectory}/security.log</file>
-               <append>true</append>
-               <encoder>
-                       <pattern>%X{EntryTimestamp}|%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX,UTC}|%X{RequestID}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
-                       </pattern>
-               </encoder>
-               <rollingPolicy
-                               class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-                       <FileNamePattern>${logDirectory}/security.%d{yyyy-MM-dd}.%i.log.zip
-                       </FileNamePattern>
-                       <maxFileSize>50MB</maxFileSize>
-                       <maxHistory>20</maxHistory>
-                       <totalSizeCap>1GB</totalSizeCap>
-               </rollingPolicy>
-       </appender>
-
-       <appender
-               name="asyncEELFSecurity"
-               class="ch.qos.logback.classic.AsyncAppender">
-               <queueSize>256</queueSize>
-               <appender-ref ref="SECURITY" />
-       </appender>
-       <!-- logback jms appenders & loggers definition starts here -->
-       <appender
-               name="auditLogs"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-               </filter>
-               <file>${logDirectory}/Audits.log</file>
-               <rollingPolicy
-                               class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-                       <fileNamePattern>${logDirectory}/Audits-%d{yyyy-MM-dd}.%i.log.zip
-                       </fileNamePattern>
-                       <maxFileSize>50MB</maxFileSize>
-                       <maxHistory>20</maxHistory>
-                       <totalSizeCap>1GB</totalSizeCap>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
-               </encoder>
-       </appender>
-
-       <appender
-               name="perfLogs"
-               class="ch.qos.logback.core.rolling.RollingFileAppender">
-               <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-               </filter>
-               <file>${logDirectory}/Perform.log</file>
-               <rollingPolicy
-                               class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-                       <fileNamePattern>${logDirectory}/Perform--%d{yyyy-MM-dd}.%i.log.zip
-                       </fileNamePattern>
-                       <maxFileSize>50MB</maxFileSize>
-                       <maxHistory>20</maxHistory>
-                       <totalSizeCap>1GB</totalSizeCap>
-               </rollingPolicy>
-               <encoder>
-                       <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
-               </encoder>
-       </appender>
-
-       <logger
-               name="org.onap.aaf"
-               level="DEBUG">
-               <appender-ref ref="DEBUG" />
-       </logger>
-       <logger
-                       name="org.hibernate"
-                       level="INFO">
-               <appender-ref ref="DEBUG" />
-       </logger>
-       <logger
-                       name="org.apache.camel.Tracing"
-                       level="INFO">
-               <appender-ref ref="DEBUG" />
-       </logger>
-
-       <logger
-               name="org.apache"
-               level="INFO">
-               <appender-ref ref="DEBUG" />
-       </logger>
-       <!-- Spring related loggers -->
-       <logger
-               name="org.springframework"
-               level="INFO">
-               <appender-ref ref="DEBUG" />
-       </logger>
-
-       <!-- CLAMP related loggers -->
-       <logger
-               name="org.onap.policy.clamp"
-               level="DEBUG">
-               <appender-ref ref="ERROR" />
-               <appender-ref ref="DEBUG" />
-       </logger>
-
-       <logger
-               name="com.att.eelf.error"
-               level="OFF">
-               <appender-ref ref="ERROR" />
-       </logger>
-       <!-- EELF related loggers -->
-       <logger
-               name="com.att.eelf.audit"
-               level="INFO"
-               additivity="false">
-               <appender-ref ref="asyncEELFAudit" />
-       </logger>
-       <logger
-               name="com.att.eelf.metrics"
-               level="DEBUG"
-               additivity="false">
-               <appender-ref ref="asyncEELFMetrics" />
-       </logger>
-       <logger
-               name="com.att.eelf.security"
-               level="DEBUG"
-               additivity="false">
-               <appender-ref ref="asyncEELFSecurity" />
-       </logger>
-
-       <!-- logback internals logging -->
-       <logger
-               name="ch.qos.logback.classic"
-               level="INFO" />
-       <logger
-               name="ch.qos.logback.core"
-               level="INFO" />
-       <logger
-               name="AuditRecord"
-               level="INFO"
-               additivity="false">
-               <appender-ref ref="auditLogs" />
-       </logger>
-       <logger
-               name="AuditRecord_DirectCall"
-               level="INFO"
-               additivity="false">
-               <appender-ref ref="auditLogs" />
-       </logger>
-       <logger
-               name="PerfTrackerRecord"
-               level="INFO"
-               additivity="false">
-               <appender-ref ref="perfLogs" />
-       </logger>
-       <!-- logback jms appenders & loggers definition ends here -->
+        <file>${logDirectory}/metric.log</file>
+        <append>true</append>
+        <encoder>
+            <pattern>${metricPattern}</pattern>
+        </encoder>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <FileNamePattern>${logDirectory}/metric.%d{yyyy-MM-dd}.%i.log.zip
+            </FileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>20</maxHistory>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+    </appender>
+
+    <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="METRIC" />
+    </appender>
+
+    <!-- SECURITY related loggers -->
+    <appender name="SECURITY" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${logDirectory}/security.log</file>
+        <append>true</append>
+        <encoder>
+            <pattern>%X{EntryTimestamp}|%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX,UTC}|%X{RequestID}|%X{ServiceInstanceId}|%.20thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n
+            </pattern>
+        </encoder>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <FileNamePattern>${logDirectory}/security.%d{yyyy-MM-dd}.%i.log.zip
+            </FileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>20</maxHistory>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+    </appender>
+
+    <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
+        <queueSize>256</queueSize>
+        <appender-ref ref="SECURITY" />
+    </appender>
+    <!-- logback jms appenders & loggers definition starts here -->
+    <appender name="auditLogs" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+        </filter>
+        <file>${logDirectory}/Audits.log</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>${logDirectory}/Audits-%d{yyyy-MM-dd}.%i.log.zip
+            </fileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>20</maxHistory>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="perfLogs" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+        </filter>
+        <file>${logDirectory}/Perform.log</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>${logDirectory}/Perform--%d{yyyy-MM-dd}.%i.log.zip
+            </fileNamePattern>
+            <maxFileSize>50MB</maxFileSize>
+            <maxHistory>20</maxHistory>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+        <encoder>
+            <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+        </encoder>
+    </appender>
+
+    <logger name="org.onap.aaf" level="DEBUG">
+        <appender-ref ref="DEBUG" />
+    </logger>
+    <logger name="org.hibernate" level="INFO">
+        <appender-ref ref="DEBUG" />
+    </logger>
+    <logger name="org.apache.camel.Tracing" level="INFO">
+        <appender-ref ref="DEBUG" />
+    </logger>
+
+    <logger name="org.apache" level="INFO">
+        <appender-ref ref="DEBUG" />
+    </logger>
+    <!-- Spring related loggers -->
+    <logger name="org.springframework" level="INFO">
+        <appender-ref ref="DEBUG" />
+    </logger>
+
+    <!-- CLAMP related loggers -->
+    <logger name="org.onap.policy.clamp" level="DEBUG">
+        <appender-ref ref="ERROR" />
+        <appender-ref ref="DEBUG" />
+    </logger>
 
-       <root level="DEBUG">
-               <appender-ref ref="DEBUG" />
-               <appender-ref ref="STDOUT" />
-               <appender-ref ref="AUDIT" />
+    <logger name="com.att.eelf.error" level="OFF">
+        <appender-ref ref="ERROR" />
+    </logger>
+    <!-- EELF related loggers -->
+    <logger name="com.att.eelf.audit" level="INFO" additivity="false">
+        <appender-ref ref="asyncEELFAudit" />
+    </logger>
+    <logger name="com.att.eelf.metrics" level="DEBUG" additivity="false">
+        <appender-ref ref="asyncEELFMetrics" />
+    </logger>
+    <logger name="com.att.eelf.security" level="DEBUG" additivity="false">
+        <appender-ref ref="asyncEELFSecurity" />
+    </logger>
+
+    <!-- logback internals logging -->
+    <logger name="ch.qos.logback.classic" level="INFO" />
+    <logger name="ch.qos.logback.core" level="INFO" />
+    <logger name="AuditRecord" level="INFO" additivity="false">
+        <appender-ref ref="auditLogs" />
+    </logger>
+    <logger name="AuditRecord_DirectCall" level="INFO" additivity="false">
+        <appender-ref ref="auditLogs" />
+    </logger>
+    <logger name="PerfTrackerRecord" level="INFO" additivity="false">
+        <appender-ref ref="perfLogs" />
+    </logger>
+    <!-- logback jms appenders & loggers definition ends here -->
+
+    <root level="DEBUG">
+        <appender-ref ref="DEBUG" />
+        <appender-ref ref="STDOUT" />
+        <appender-ref ref="AUDIT" />
         <appender-ref ref="METRIC" />
         <appender-ref ref="ERROR" />
-       </root>
+    </root>
 </included>
index ffa497f..e7b6747 100644 (file)
@@ -1,19 +1,19 @@
 <configuration debug="true">
-       <springProperty name="logbackFilePath"
-               source="clamp.config.logback.path" />
-       <springProperty name="logbackFileName"
-               source="clamp.config.logback.filename" />
-       <springProperty name="logDirectory"
-               source="clamp.config.log.path" />
-               
-       <if condition='isNull("logbackFilePath")'>
-               <then>
-                       <!-- Classpath case -->
-                       <include resource="${logbackFileName}" />
-               </then>
-               <else>
-                       <!-- File system case -->
-                       <include file="${logbackFilePath}/${logbackFileName}" />
-               </else>
-       </if>
-</configuration>
\ No newline at end of file
+    <springProperty name="logbackFilePath"
+        source="clamp.config.logback.path" />
+    <springProperty name="logbackFileName"
+        source="clamp.config.logback.filename" />
+    <springProperty name="logDirectory"
+        source="clamp.config.log.path" />
+        
+    <if condition='isNull("logbackFilePath")'>
+        <then>
+            <!-- Classpath case -->
+            <include resource="${logbackFileName}" />
+        </then>
+        <else>
+            <!-- File system case -->
+            <include file="${logbackFilePath}/${logbackFileName}" />
+        </else>
+    </if>
+</configuration>
index 1a4a2ec..c68ee39 100644 (file)
@@ -39,6 +39,7 @@ import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
 import org.apache.http.conn.ssl.TrustStrategy;
 import org.apache.http.impl.client.CloseableHttpClient;
 import org.apache.http.impl.client.HttpClients;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Value;
@@ -66,6 +67,7 @@ public class HttpsItCase {
     @Value("${server.http-to-https-redirection.port}")
     private String httpPort;
 
+    @Ignore
     @Test
     public void testDesignerIndex() throws Exception {
         ResponseEntity<String> entity =
@@ -78,6 +80,7 @@ public class HttpsItCase {
         assertThat(httpsEntity.getBody()).contains("Clamp Rest API");
     }
 
+    @Ignore
     @Test
     public void testSwaggerJson() throws Exception {
         ResponseEntity<String> httpsEntity = getRestTemplate()
index 657adf1..4dd620c 100644 (file)
@@ -1,10 +1,10 @@
-package org.onap.policy.clamp.policy.downloader;
 /*-
  * ============LICENSE_START=======================================================
  * ONAP CLAMP
  * ================================================================================
  * Copyright (C) 2020 AT&T Intellectual Property. All rights
  *                             reserved.
+ * Modifications Copyright (C) 2021 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -22,6 +22,8 @@ package org.onap.policy.clamp.policy.downloader;
  *
  */
 
+package org.onap.policy.clamp.policy.downloader;
+
 import static org.assertj.core.api.Assertions.assertThat;
 
 import com.google.gson.JsonObject;