diff options
author | egernug <gerard.nugent@est.tech> | 2024-07-08 10:59:08 +0100 |
---|---|---|
committer | egernug <gerard.nugent@est.tech> | 2024-07-12 13:36:12 +0100 |
commit | e703e344507e0f224cffecb931a8075d4e94a50c (patch) | |
tree | a0b3c4b4b549a5ea554896fe8e21f7394b903c23 /dmi-stub/dmi-plugin-demo-and-csit-stub-app | |
parent | 5e4eb8c3bd9886e4c3ee2089b54236a01a99566b (diff) |
Relocation of DMI Stub to DMI Plugin
Move the DMI Stub into Plugin to use generated code classes
Changes:
-Created dmi-stub module
-Changed dmi-plugin-demo-and-csit-stub/dmi-plugin-demo-and-csit-stub-service/pom.xml dependency from cps-ncmp-rest to cps-ncmp-events
-Added extra required dependencies to dmi-plugin-demo-and-csit-stub/dmi-plugin-demo-and-csit-stub-service/pom.xml
-Included EventDateTimeFormatter in dmi-plugin-demo-and-csit-stub/dmi-plugin-demo-and-csit-stub-service/utils
-Included dmi-stub in pom.xml
Issue-ID: CPS-2145
Change-Id: Ibf0c9601564d3b38979c07c6a00d622cf763bf6b
Signed-off-by: egernug <gerard.nugent@est.tech>
Diffstat (limited to 'dmi-stub/dmi-plugin-demo-and-csit-stub-app')
3 files changed, 196 insertions, 0 deletions
diff --git a/dmi-stub/dmi-plugin-demo-and-csit-stub-app/pom.xml b/dmi-stub/dmi-plugin-demo-and-csit-stub-app/pom.xml new file mode 100644 index 00000000..40455416 --- /dev/null +++ b/dmi-stub/dmi-plugin-demo-and-csit-stub-app/pom.xml @@ -0,0 +1,119 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ============LICENSE_START======================================================= + Copyright (C) 2023-2024 Nordix Foundation + ================================================================================ + 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========================================================= +--> + +<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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.onap.cps</groupId> + <artifactId>dmi-plugin-demo-and-csit-stub</artifactId> + <version>1.6.0-SNAPSHOT</version> + </parent> + + <artifactId>dmi-plugin-demo-and-csit-stub-app</artifactId> + + <properties> + <app>org.onap.cps.ncmp.dmi.rest.stub.controller.DmiDemoApplication</app> + <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format> + <base.image>${docker.pull.registry}/onap/integration-java17:12.0.0</base.image> + <image.tag>${project.version}-${maven.build.timestamp}</image.tag> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + </properties> + + <build> + <pluginManagement> + <plugins> + <plugin> + <groupId>com.google.cloud.tools</groupId> + <artifactId>jib-maven-plugin</artifactId> + <configuration> + <container> + <mainClass>${app}</mainClass> + <creationTime>USE_CURRENT_TIMESTAMP</creationTime> + </container> + <from> + <image>${base.image}</image> + </from> + <to> + <tags> + <tag>latest</tag> + </tags> + <image>${docker.push.registry}/onap/${image.name}:${image.tag}</image> + </to> + </configuration> + <executions> + <execution> + <phase>package</phase> + <id>build</id> + <goals> + <goal>dockerBuild</goal> + </goals> + </execution> + <execution> + <phase>deploy</phase> + <id>buildAndPush</id> + <goals> + <goal>build</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </pluginManagement> + </build> + + <profiles> + <profile> + <id>docker</id> + <activation> + <activeByDefault>true</activeByDefault> + </activation> + <properties> + <image.name>dmi-plugin-demo-and-csit-stub</image.name> + </properties> + <build> + <plugins> + <plugin> + <groupId>com.google.cloud.tools</groupId> + <artifactId>jib-maven-plugin</artifactId> + <version>3.3.2</version> + </plugin> + </plugins> + </build> + </profile> + </profiles> + <dependencies> + + <dependency> + <groupId>org.onap.cps</groupId> + <artifactId>dmi-plugin-demo-and-csit-stub-service</artifactId> + <version>${project.version}</version> + <exclusions> + <exclusion> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-web</artifactId> + <version>3.2.4</version> + </dependency> + </dependencies> +</project>
\ No newline at end of file diff --git a/dmi-stub/dmi-plugin-demo-and-csit-stub-app/src/main/java/org/onap/cps/ncmp/dmi/rest/stub/controller/DmiDemoApplication.java b/dmi-stub/dmi-plugin-demo-and-csit-stub-app/src/main/java/org/onap/cps/ncmp/dmi/rest/stub/controller/DmiDemoApplication.java new file mode 100644 index 00000000..2d14020b --- /dev/null +++ b/dmi-stub/dmi-plugin-demo-and-csit-stub-app/src/main/java/org/onap/cps/ncmp/dmi/rest/stub/controller/DmiDemoApplication.java @@ -0,0 +1,32 @@ +/* + * ============LICENSE_START======================================================= + * Copyright (C) 2023 Nordix Foundation + * ================================================================================ + * 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========================================================= + */ + +package org.onap.cps.ncmp.dmi.rest.stub.controller; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class DmiDemoApplication { + + public static void main(final String[] args) { + SpringApplication.run(DmiDemoApplication.class, args); + } +} diff --git a/dmi-stub/dmi-plugin-demo-and-csit-stub-app/src/main/java/org/onap/cps/ncmp/dmi/rest/stub/controller/config/NcmpRequestLoggingConfig.java b/dmi-stub/dmi-plugin-demo-and-csit-stub-app/src/main/java/org/onap/cps/ncmp/dmi/rest/stub/controller/config/NcmpRequestLoggingConfig.java new file mode 100644 index 00000000..6ef19fa1 --- /dev/null +++ b/dmi-stub/dmi-plugin-demo-and-csit-stub-app/src/main/java/org/onap/cps/ncmp/dmi/rest/stub/controller/config/NcmpRequestLoggingConfig.java @@ -0,0 +1,45 @@ +/* + * ============LICENSE_START======================================================= + * Copyright (C) 2024 Nordix Foundation. + * ================================================================================ + * 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========================================================= + */ + +package org.onap.cps.ncmp.dmi.rest.stub.controller.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.filter.CommonsRequestLoggingFilter; + +@Configuration +public class NcmpRequestLoggingConfig { + + /** + * Configuration class to log NCMP request headers and payload. + * logged request information before it is processed. + */ + @Bean + public CommonsRequestLoggingFilter logNcmpRequestInfo() { + final CommonsRequestLoggingFilter commonsRequestLoggingFilter = new CommonsRequestLoggingFilter(); + commonsRequestLoggingFilter.setIncludeHeaders(true); + commonsRequestLoggingFilter.setIncludeQueryString(true); + commonsRequestLoggingFilter.setIncludePayload(true); + commonsRequestLoggingFilter.setMaxPayloadLength(1000); + commonsRequestLoggingFilter.setAfterMessagePrefix("NCMP REQUEST DATA: "); + return commonsRequestLoggingFilter; + } +} + |