227b09cfb738f9550b6f73ad760af435f0516e35
[portal/ric-dashboard.git] / dashboard / a1-med-client / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--<![CDATA[
3 ========================LICENSE_START=================================
4 O-RAN-SC
5 %%
6 Copyright (C) 2019 AT&T Intellectual Property
7 %%
8 Licensed under the Apache License, Version 2.0 (the "License");
9 you may not use this file except in compliance with the License.
10 You may obtain a copy of the License at
11
12      http://www.apache.org/licenses/LICENSE-2.0
13
14 Unless required by applicable law or agreed to in writing, software
15 distributed under the License is distributed on an "AS IS" BASIS,
16 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 See the License for the specific language governing permissions and
18 limitations under the License.
19 ========================LICENSE_END===================================
20 ]]>-->
21 <project xmlns="http://maven.apache.org/POM/4.0.0"
22         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
23         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>
25         <parent>
26                 <groupId>org.o-ran-sc.portal.ric-dashboard</groupId>
27                 <artifactId>ric-dash-parent</artifactId>
28                 <version>2.0.1-SNAPSHOT</version>
29         </parent>
30         <!-- This groupId will NOT allow deployment in LF -->
31         <groupId>org.o-ran-sc.ric.plt.a1med.client</groupId>
32         <artifactId>a1-med-client</artifactId>
33         <name>RIC A1 Mediator client</name>
34         <!-- Update to match submodule tag -->
35         <version>2.1.0-SNAPSHOT</version>
36         <properties>
37                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
38                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
39                 <!-- Jenkins invokes maven with -Dbuild.number=.. -->
40                 <build.number>0</build.number>
41                 <!-- same as groupId BUT without hyphens -->
42                 <client.base.package.name>org.oransc.ric.a1med.client</client.base.package.name>
43         </properties>
44         <!-- Successful compilation requires generated code dependencies -->
45         <dependencies>
46                 <!-- Required for Java 9 and later -->
47                 <dependency>
48                         <groupId>javax.annotation</groupId>
49                         <artifactId>javax.annotation-api</artifactId>
50                 </dependency>
51                 <dependency>
52                         <groupId>io.swagger.core.v3</groupId>
53                         <artifactId>swagger-annotations</artifactId>
54                         <version>2.0.8</version>
55                 </dependency>
56                 <dependency>
57                         <groupId>org.springframework</groupId>
58                         <artifactId>spring-context</artifactId>
59                 </dependency>
60                 <!-- HTTP client: Spring RestTemplate -->
61                 <dependency>
62                         <groupId>org.springframework</groupId>
63                         <artifactId>spring-web</artifactId>
64                 </dependency>
65                 <!-- JSON processing: jackson -->
66                 <dependency>
67                         <groupId>com.fasterxml.jackson.core</groupId>
68                         <artifactId>jackson-core</artifactId>
69                 </dependency>
70                 <dependency>
71                         <groupId>com.fasterxml.jackson.core</groupId>
72                         <artifactId>jackson-annotations</artifactId>
73                 </dependency>
74                 <dependency>
75                         <groupId>com.fasterxml.jackson.core</groupId>
76                         <artifactId>jackson-databind</artifactId>
77                 </dependency>
78                 <dependency>
79                         <groupId>com.fasterxml.jackson.jaxrs</groupId>
80                         <artifactId>jackson-jaxrs-json-provider</artifactId>
81                 </dependency>
82                 <dependency>
83                         <groupId>com.fasterxml.jackson.datatype</groupId>
84                         <artifactId>jackson-datatype-jsr310</artifactId>
85                 </dependency>
86                 <!-- test dependencies -->
87                 <dependency>
88                         <groupId>org.junit.jupiter</groupId>
89                         <artifactId>junit-jupiter-api</artifactId>
90                         <scope>test</scope>
91                 </dependency>
92         </dependencies>
93         <build>
94                 <plugins>
95                         <plugin>
96                                 <!-- This 2019 version is required for OpenAPI 3 -->
97                                 <groupId>io.swagger.codegen.v3</groupId>
98                                 <artifactId>swagger-codegen-maven-plugin</artifactId>
99                                 <version>3.0.8</version>
100                                 <executions>
101                                         <execution>
102                                                 <goals>
103                                                         <goal>generate</goal>
104                                                 </goals>
105                                                 <configuration>
106                                                         <inputSpec>${project.basedir}/ric-plt-a1/a1/openapi.yaml</inputSpec>
107                                                         <language>java</language>
108                                                         <packageName>${client.base.package.name}</packageName>
109                                                         <modelPackage>${client.base.package.name}.model</modelPackage>
110                                                         <apiPackage>${client.base.package.name}.api</apiPackage>
111                                                         <invokerPackage>${client.base.package.name}.invoker</invokerPackage>
112                                                         <configOptions>
113                                                                 <groupId>${project.groupId}</groupId>
114                                                                 <artifactId>${project.artifactId}</artifactId>
115                                                                 <artifactVersion>${project.version}</artifactVersion>
116                                                                 <library>resttemplate</library>
117                                                                 <java8>true</java8>
118                                                                 <dateLibrary>java8</dateLibrary>
119                                                                 <licenseName>Apache 2.0</licenseName>
120                                                                 <licenseUrl>https://www.apache.org/licenses/LICENSE-2.0</licenseUrl>
121                                                         </configOptions>
122                                                 </configuration>
123                                         </execution>
124                                 </executions>
125                         </plugin>
126                         <!-- add build information to manifest. Java provides access to the implementation 
127                                 version for a package, so cram the build number into there. -->
128                         <plugin>
129                                 <groupId>org.apache.maven.plugins</groupId>
130                                 <artifactId>maven-jar-plugin</artifactId>
131                                 <configuration>
132                                         <archive>
133                                                 <manifest>
134                                                         <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
135                                                 </manifest>
136                                                 <manifestEntries>
137                                                         <Implementation-Version>${project.version}-b${build.number}</Implementation-Version>
138                                                 </manifestEntries>
139                                         </archive>
140                                 </configuration>
141                         </plugin>
142                         <!-- Add generated source folder to Eclipse build path -->
143                         <plugin>
144                                 <groupId>org.codehaus.mojo</groupId>
145                                 <artifactId>build-helper-maven-plugin</artifactId>
146                                 <!--  version>1.7</version> -->
147                                 <executions>
148                                         <execution>
149                                                 <phase>generate-sources</phase>
150                                                 <goals>
151                                                         <goal>add-source</goal>
152                                                 </goals>
153                                                 <configuration>
154                                                         <sources>
155                                                                 <source>target/generated-sources/swagger/src/main/java</source>
156                                                         </sources>
157                                                 </configuration>
158                                         </execution>
159                                 </executions>
160                         </plugin>
161                 </plugins>
162                 <pluginManagement>
163                         <plugins>
164                                 <!--This plugin's configuration is used to store Eclipse m2e settings 
165                                         only. It has no influence on the Maven build itself. -->
166                                 <plugin>
167                                         <groupId>org.eclipse.m2e</groupId>
168                                         <artifactId>lifecycle-mapping</artifactId>
169                                         <version>1.0.0</version>
170                                         <configuration>
171                                                 <lifecycleMappingMetadata>
172                                                         <pluginExecutions>
173                                                                 <pluginExecution>
174                                                                         <pluginExecutionFilter>
175                                                                                 <groupId>io.swagger.codegen.v3</groupId>
176                                                                                 <artifactId>swagger-codegen-maven-plugin</artifactId>
177                                                                                 <versionRange>[1.0,)</versionRange>
178                                                                                 <goals>
179                                                                                         <goal>generate</goal>
180                                                                                 </goals>
181                                                                         </pluginExecutionFilter>
182                                                                         <action>
183                                                                                 <ignore />
184                                                                         </action>
185                                                                 </pluginExecution>
186                                                         </pluginExecutions>
187                                                 </lifecycleMappingMetadata>
188                                         </configuration>
189                                 </plugin>
190                         </plugins>
191                 </pluginManagement>
192         </build>
193 </project>