1 <?xml version="1.0" encoding="UTF-8"?>
3 ============LICENSE_START=======================================================
4 ONAP Policy Engine - Drools PDP
5 ================================================================================
6 Copyright (C) 2017-2022 AT&T Intellectual Property. All rights reserved.
7 Modifications Copyright (C) 2020,2023 Nordix Foundation.
8 ================================================================================
9 Licensed under the Apache License, Version 2.0 (the "License");
10 you may not use this file except in compliance with the License.
11 You may obtain a copy of the License at
13 http://www.apache.org/licenses/LICENSE-2.0
15 Unless required by applicable law or agreed to in writing, software
16 distributed under the License is distributed on an "AS IS" BASIS,
17 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 See the License for the specific language governing permissions and
19 limitations under the License.
20 ============LICENSE_END=========================================================
23 <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/maven-v4_0_0.xsd">
24 <modelVersion>4.0.0</modelVersion>
27 <groupId>org.onap.policy.drools-pdp</groupId>
28 <artifactId>drools-pdp</artifactId>
29 <version>1.12.2-SNAPSHOT</version>
32 <artifactId>policy-management</artifactId>
34 <name>policy-management</name>
35 <description>Policy Management</description>
40 <artifactId>maven-assembly-plugin</artifactId>
47 <phase>package</phase>
50 <finalName>${project.artifactId}-${project.version}</finalName>
52 <descriptor>src/assembly/assemble_zip.xml</descriptor>
54 <appendAssemblyId>false</appendAssemblyId>
60 <groupId>org.apache.maven.plugins</groupId>
61 <artifactId>maven-dependency-plugin</artifactId>
64 <id>copy-dependencies</id>
66 <goal>copy-dependencies</goal>
68 <phase>prepare-package</phase>
70 <outputDirectory>${project.build.directory}/assembly/lib</outputDirectory>
71 <overWriteReleases>false</overWriteReleases>
72 <overWriteSnapshots>true</overWriteSnapshots>
73 <overWriteIfNewer>true</overWriteIfNewer>
74 <useRepositoryLayout>false</useRepositoryLayout>
75 <addParentPoms>false</addParentPoms>
76 <copyPom>false</copyPom>
77 <excludeGroupIds>javax.inject</excludeGroupIds>
78 <includeScope>runtime</includeScope>
84 <artifactId>maven-resources-plugin</artifactId>
89 <goal>copy-resources</goal>
91 <phase>validate</phase>
93 <outputDirectory>${basedir}/target/versions</outputDirectory>
96 <directory>src/main/resources/versions</directory>
98 <include>version.properties</include>
100 <filtering>true</filtering>
106 <id>copy-resources</id>
108 <goal>copy-resources</goal>
110 <phase>validate</phase>
112 <outputDirectory>${basedir}/target/etc/bvc-extensions</outputDirectory>
115 <directory>src/main/resources/etc/bvc-extensions</directory>
117 <include>feature_config_template.cfg</include>
118 <include>feature_custom.install</include>
120 <filtering>true</filtering>
126 <id>copy-swagger</id>
128 <goal>copy-resources</goal>
130 <phase>compile</phase>
132 <outputDirectory>src/main/resources/swagger</outputDirectory>
135 <directory>${basedir}/target/generated-sources/swagger</directory>
137 <include>swagger.json</include>
139 <filtering>true</filtering>
146 <!-- Controllers interfaces generation -->
148 <groupId>io.swagger.codegen.v3</groupId>
149 <artifactId>swagger-codegen-maven-plugin</artifactId>
154 <goal>generate</goal>
157 <inputSpec>${project.basedir}/src/main/resources/openapi/openapi.yaml</inputSpec>
158 <invokerPackage>org.onap.policy.drools.server.restful</invokerPackage>
159 <modelPackage>org.onap.policy.drools.server.restful.model</modelPackage>
160 <apiPackage>org.onap.policy.drools.server.restful</apiPackage>
161 <language>jaxrs-spec</language>
162 <generateModels>false</generateModels>
163 <generateSupportingFiles>false</generateSupportingFiles>
165 CoderFilters=org.onap.policy.drools.protocol.coders.EventProtocolCoder.CoderFilters,
166 CodingResult=org.onap.policy.drools.server.restful.RestManager.CodingResult,
167 ControllerConfiguration=org.onap.policy.drools.protocol.configuration.ControllerConfiguration,
168 DroolsController=org.onap.policy.drools.controller.DroolsController,
169 JsonProtocolFilter=org.onap.policy.drools.protocol.coders.JsonProtocolFilter,
170 PdpStatistics=org.onap.policy.models.pdp.concepts.PdpStatistics,
171 PdpdConfiguration=org.onap.policy.drools.protocol.configuration.PdpdConfiguration,
172 PolicyController=org.onap.policy.drools.system.PolicyController,
173 PolicyControllerFeatureApi=org.onap.policy.drools.features.PolicyControllerFeatureApi,
174 PolicyEngine=org.onap.policy.drools.system.PolicyEngine,
175 PolicyEngineFeatureApi=org.onap.policy.drools.features.PolicyEngineFeatureApi,
176 PolicyTypeController=org.onap.policy.drools.lifecycle.PolicyTypeController,
177 Properties=java.util.Properties,
178 ProtocolCoderToolset=org.onap.policy.drools.protocol.coders.ProtocolCoderToolset,
179 Response=javax.ws.rs.core.Response,
180 TopicEndpoint=org.onap.policy.common.endpoints.event.comm.TopicEndpoint,
181 TopicSink=org.onap.policy.common.endpoints.event.comm.TopicSink,
182 TopicSource=org.onap.policy.common.endpoints.event.comm.TopicSource,
183 ToscaPolicy=org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy
186 <typeMapping>boolean=boolean</typeMapping>
189 <sourceFolder>src/gen/java</sourceFolder>
190 <dateLibrary>java11</dateLibrary>
191 <interfaceOnly>true</interfaceOnly>
192 <useTags>true</useTags>
193 <skipIfSpecIsUnchanged>false</skipIfSpecIsUnchanged>
205 <groupId>org.onap.policy.drools-pdp</groupId>
206 <artifactId>policy-core</artifactId>
207 <version>${project.version}</version>
211 <groupId>org.onap.policy.drools-pdp</groupId>
212 <artifactId>policy-domains</artifactId>
213 <version>${project.version}</version>
217 <groupId>org.onap.policy.common</groupId>
218 <artifactId>policy-endpoints</artifactId>
219 <version>${policy.common.version}</version>
223 <groupId>org.onap.policy.common</groupId>
224 <artifactId>utils</artifactId>
225 <version>${policy.common.version}</version>
229 <groupId>org.onap.policy.models</groupId>
230 <artifactId>policy-models-pdp</artifactId>
231 <version>${policy.models.version}</version>
235 <groupId>org.eclipse.jetty</groupId>
236 <artifactId>jetty-server</artifactId>
240 <groupId>org.eclipse.jetty</groupId>
241 <artifactId>jetty-servlet</artifactId>
245 <groupId>org.onap.policy.common</groupId>
246 <artifactId>gson</artifactId>
247 <version>${policy.common.version}</version>
251 <groupId>com.google.code.gson</groupId>
252 <artifactId>gson</artifactId>
256 <groupId>com.fatboyindustrial.gson-javatime-serialisers</groupId>
257 <artifactId>gson-javatime-serialisers</artifactId>
258 <version>1.1.1</version>
262 <groupId>com.jayway.jsonpath</groupId>
263 <artifactId>json-path</artifactId>
267 <groupId>org.apache.commons</groupId>
268 <artifactId>commons-collections4</artifactId>
271 <!-- if we don't explicitly specify the version here, we seem to end up
272 with version 1.4 (as a dependency to drools-core). This version is
273 not compatible with 'saClientLibrary' version 1.2.1-oss
276 <groupId>commons-codec</groupId>
277 <artifactId>commons-codec</artifactId>
281 <groupId>ch.qos.logback</groupId>
282 <artifactId>logback-classic</artifactId>
286 <groupId>junit</groupId>
287 <artifactId>junit</artifactId>
292 <groupId>org.mockito</groupId>
293 <artifactId>mockito-core</artifactId>
298 <groupId>org.springframework</groupId>
299 <artifactId>spring-test</artifactId>
304 <groupId>org.onap.policy.common</groupId>
305 <artifactId>utils-test</artifactId>
306 <version>${policy.common.version}</version>
311 The following dependencies are for features and drools
316 <groupId>org.mariadb.jdbc</groupId>
317 <artifactId>mariadb-java-client</artifactId>
321 <groupId>org.hibernate</groupId>
322 <artifactId>hibernate-core</artifactId>
324 Exclude this because it's incompatible with eclipselink, which already
325 includes the same classes.
329 <groupId>javax.persistence</groupId>
330 <artifactId>javax.persistence-api</artifactId>
336 <groupId>org.hibernate.common</groupId>
337 <artifactId>hibernate-commons-annotations</artifactId>
341 <groupId>commons-io</groupId>
342 <artifactId>commons-io</artifactId>
346 <groupId>io.prometheus</groupId>
347 <artifactId>simpleclient_logback</artifactId>
351 <groupId>org.assertj</groupId>
352 <artifactId>assertj-core</artifactId>
357 <groupId>org.awaitility</groupId>
358 <artifactId>awaitility</artifactId>
362 <!-- Swagger v3 annotations -->
364 <groupId>io.swagger.core.v3</groupId>
365 <artifactId>swagger-annotations</artifactId>