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.1-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>
150 <version>3.0.27</version>
155 <goal>generate</goal>
158 <inputSpec>${project.basedir}/src/main/resources/openapi/openapi.yaml</inputSpec>
159 <invokerPackage>org.onap.policy.drools.server.restful</invokerPackage>
160 <modelPackage>org.onap.policy.drools.server.restful.model</modelPackage>
161 <apiPackage>org.onap.policy.drools.server.restful</apiPackage>
162 <language>jaxrs-spec</language>
163 <generateModels>false</generateModels>
164 <generateSupportingFiles>false</generateSupportingFiles>
165 <sortParamsByRequiredFlag>false</sortParamsByRequiredFlag>
167 CoderFilters=org.onap.policy.drools.protocol.coders.EventProtocolCoder.CoderFilters,
168 CodingResult=org.onap.policy.drools.server.restful.RestManager.CodingResult,
169 ControllerConfiguration=org.onap.policy.drools.protocol.configuration.ControllerConfiguration,
170 DroolsController=org.onap.policy.drools.controller.DroolsController,
171 JsonProtocolFilter=org.onap.policy.drools.protocol.coders.JsonProtocolFilter,
172 PdpStatistics=org.onap.policy.models.pdp.concepts.PdpStatistics,
173 PdpdConfiguration=org.onap.policy.drools.protocol.configuration.PdpdConfiguration,
174 PolicyController=org.onap.policy.drools.system.PolicyController,
175 PolicyControllerFeatureApi=org.onap.policy.drools.features.PolicyControllerFeatureApi,
176 PolicyEngine=org.onap.policy.drools.system.PolicyEngine,
177 PolicyEngineFeatureApi=org.onap.policy.drools.features.PolicyEngineFeatureApi,
178 PolicyTypeController=org.onap.policy.drools.lifecycle.PolicyTypeController,
179 Properties=java.util.Properties,
180 ProtocolCoderToolset=org.onap.policy.drools.protocol.coders.ProtocolCoderToolset,
181 Response=javax.ws.rs.core.Response,
182 TopicEndpoint=org.onap.policy.common.endpoints.event.comm.TopicEndpoint,
183 TopicSink=org.onap.policy.common.endpoints.event.comm.TopicSink,
184 TopicSource=org.onap.policy.common.endpoints.event.comm.TopicSource,
185 ToscaPolicy=org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy
188 <typeMapping>boolean=boolean</typeMapping>
191 <sourceFolder>src/gen/java</sourceFolder>
192 <dateLibrary>java11</dateLibrary>
193 <interfaceOnly>true</interfaceOnly>
194 <useTags>true</useTags>
195 <skipIfSpecIsUnchanged>false</skipIfSpecIsUnchanged>
207 <groupId>org.onap.policy.drools-pdp</groupId>
208 <artifactId>policy-core</artifactId>
209 <version>${project.version}</version>
213 <groupId>org.onap.policy.drools-pdp</groupId>
214 <artifactId>policy-domains</artifactId>
215 <version>${project.version}</version>
219 <groupId>org.onap.policy.common</groupId>
220 <artifactId>policy-endpoints</artifactId>
221 <version>${policy.common.version}</version>
225 <groupId>org.onap.policy.common</groupId>
226 <artifactId>utils</artifactId>
227 <version>${policy.common.version}</version>
231 <groupId>org.onap.policy.models</groupId>
232 <artifactId>policy-models-pdp</artifactId>
233 <version>${policy.models.version}</version>
237 <groupId>org.eclipse.jetty</groupId>
238 <artifactId>jetty-server</artifactId>
242 <groupId>org.eclipse.jetty</groupId>
243 <artifactId>jetty-servlet</artifactId>
247 <groupId>org.onap.policy.common</groupId>
248 <artifactId>gson</artifactId>
249 <version>${policy.common.version}</version>
253 <groupId>com.google.code.gson</groupId>
254 <artifactId>gson</artifactId>
258 <groupId>com.fatboyindustrial.gson-javatime-serialisers</groupId>
259 <artifactId>gson-javatime-serialisers</artifactId>
260 <version>1.1.1</version>
264 <groupId>com.jayway.jsonpath</groupId>
265 <artifactId>json-path</artifactId>
269 <groupId>org.apache.commons</groupId>
270 <artifactId>commons-collections4</artifactId>
271 <version>4.4</version>
274 <!-- if we don't explicitly specify the version here, we seem to end up
275 with version 1.4 (as a dependency to drools-core). This version is
276 not compatible with 'saClientLibrary' version 1.2.1-oss
279 <groupId>commons-codec</groupId>
280 <artifactId>commons-codec</artifactId>
284 <groupId>ch.qos.logback</groupId>
285 <artifactId>logback-classic</artifactId>
289 <groupId>junit</groupId>
290 <artifactId>junit</artifactId>
295 <groupId>org.mockito</groupId>
296 <artifactId>mockito-core</artifactId>
301 <groupId>org.springframework</groupId>
302 <artifactId>spring-test</artifactId>
307 <groupId>org.onap.policy.common</groupId>
308 <artifactId>utils-test</artifactId>
309 <version>${policy.common.version}</version>
314 The following dependencies are for features and drools
319 <groupId>org.mariadb.jdbc</groupId>
320 <artifactId>mariadb-java-client</artifactId>
324 <groupId>org.hibernate</groupId>
325 <artifactId>hibernate-core</artifactId>
327 Exclude this because it's incompatible with eclipselink, which already
328 includes the same classes.
332 <groupId>javax.persistence</groupId>
333 <artifactId>javax.persistence-api</artifactId>
339 <groupId>org.hibernate.common</groupId>
340 <artifactId>hibernate-commons-annotations</artifactId>
344 <groupId>commons-io</groupId>
345 <artifactId>commons-io</artifactId>
349 <groupId>io.prometheus</groupId>
350 <artifactId>simpleclient_logback</artifactId>
354 <groupId>org.assertj</groupId>
355 <artifactId>assertj-core</artifactId>
360 <groupId>org.awaitility</groupId>
361 <artifactId>awaitility</artifactId>
365 <!-- Swagger v3 annotations -->
367 <groupId>io.swagger.core.v3</groupId>
368 <artifactId>swagger-annotations</artifactId>
369 <version>${version.swagger.core.v3}</version>