Split URL properties into prefix/suffix
[portal/ric-dashboard.git] / e2-mgr-client / pom.xml
index 57d9405..021fe68 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--<![CDATA[
 ========================LICENSE_START=================================
-ORAN-OSC
+O-RAN-SC
 %%
 Copyright (C) 2019 AT&T Intellectual Property and Nokia
 %%
@@ -23,26 +23,34 @@ limitations under the License.
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <parent>
-               <groupId>org.oranosc.ric.portal.dashboard</groupId>
+               <groupId>org.o-ran-sc.portal.ric-dashboard</groupId>
                <artifactId>ric-dash-parent</artifactId>
-               <version>1.0.0-SNAPSHOT</version>
+               <version>1.2.0-SNAPSHOT</version>
        </parent>
-       <groupId>org.oranosc.ric.e2mgr.client</groupId>
+       <!-- This groupId will NOT allow deployment in LF -->
+       <groupId>org.o-ran-sc.ric.plt.e2mgr.client</groupId>
        <artifactId>e2-mgr-client</artifactId>
        <name>RIC E2 Manager client</name>
-       <version>0.0.1-SNAPSHOT</version>
+       <version>20190703-SNAPSHOT</version>
        <properties>
                <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
                <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-               <swagger-annotations-version>1.5.15</swagger-annotations-version>
-               <client.base.package.name>org.oranosc.ric.e2mgr.client</client.base.package.name>
+               <!-- Jenkins invokes maven with -Dbuild.number=.. -->
+               <build.number>0</build.number>
+               <!-- same as groupId BUT without hyphens -->
+               <client.base.package.name>org.oransc.ric.e2mgr.client</client.base.package.name>
        </properties>
        <!-- Successful compilation requires generated code dependencies -->
        <dependencies>
+               <!-- Required for Java 9 and later -->
                <dependency>
-                       <groupId>io.swagger</groupId>
+                       <groupId>javax.annotation</groupId>
+                       <artifactId>javax.annotation-api</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>io.swagger.core.v3</groupId>
                        <artifactId>swagger-annotations</artifactId>
-                       <version>${swagger-annotations-version}</version>
+                       <version>2.0.8</version>
                </dependency>
                <dependency>
                        <groupId>org.springframework</groupId>
@@ -91,82 +99,83 @@ limitations under the License.
        <build>
                <plugins>
                        <plugin>
-                               <groupId>io.swagger</groupId>
+                               <!-- This 2019 version is required for OpenAPI 3 -->
+                               <groupId>io.swagger.codegen.v3</groupId>
                                <artifactId>swagger-codegen-maven-plugin</artifactId>
-                               <version>2.3.1</version>
+                               <version>3.0.8</version>
                                <executions>
                                        <execution>
                                                <goals>
                                                        <goal>generate</goal>
                                                </goals>
                                                <configuration>
-                                                       <inputSpec>${project.basedir}/src/main/resources/e2_mgr_rest_api_v0_0_1.yaml</inputSpec>
+                                                       <inputSpec>${project.basedir}/src/main/resources/E2M_API_2019-07-03.yaml</inputSpec>
                                                        <language>java</language>
+                                                       <packageName>${client.base.package.name}</packageName>
+                                                       <modelPackage>${client.base.package.name}.model</modelPackage>
+                                                       <apiPackage>${client.base.package.name}.api</apiPackage>
+                                                       <invokerPackage>${client.base.package.name}.invoker</invokerPackage>
                                                        <configOptions>
                                                                <groupId>${project.groupId}</groupId>
                                                                <artifactId>${project.artifactId}</artifactId>
                                                                <artifactVersion>${project.version}</artifactVersion>
-                                                               <artifactUrl>www.oran-osc.org</artifactUrl>
-                                                               <artifactDescription>E2 manager client library</artifactDescription>
                                                                <library>resttemplate</library>
                                                                <java8>true</java8>
                                                                <dateLibrary>java8</dateLibrary>
                                                                <licenseName>Apache 2.0</licenseName>
                                                                <licenseUrl>https://www.apache.org/licenses/LICENSE-2.0</licenseUrl>
-                                                               <scmConnection></scmConnection>
-                                                               <scmDeveloperConnection></scmDeveloperConnection>
-                                                               <scmUrl>http://gerrit.oran-osc.org</scmUrl>
-                                                               <developerName>RIC Team</developerName>
-                                                               <developerEmail></developerEmail>
-                                                               <developerOrganization>AT&amp;T and Nokia</developerOrganization>
-                                                               <developerOrganizationUrl></developerOrganizationUrl>
                                                        </configOptions>
-                                                       <packageName>${client.base.package.name}</packageName>
-                                                       <modelPackage>${client.base.package.name}.model</modelPackage>
-                                                       <apiPackage>${client.base.package.name}.api</apiPackage>
-                                                       <invokerPackage>${client.base.package.name}.invoker</invokerPackage>
                                                </configuration>
                                        </execution>
                                </executions>
                        </plugin>
-                       <!-- Require Java 1.8 -->
+                       <!-- add build information to manifest. Java provides access to the implementation 
+                               version for a package, so cram the build number into there. -->
                        <plugin>
                                <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-compiler-plugin</artifactId>
-                               <!-- Spring sets the <version></version> -->
+                               <artifactId>maven-jar-plugin</artifactId>
+                               <!-- version>2.5</version> -->
                                <configuration>
-                                       <source>1.8</source>
-                                       <target>1.8</target>
+                                       <archive>
+                                               <manifest>
+                                                       <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+                                               </manifest>
+                                               <manifestEntries>
+                                                       <Implementation-Version>${project.version}-b${build.number}</Implementation-Version>
+                                               </manifestEntries>
+                                       </archive>
                                </configuration>
                        </plugin>
-                       <!-- Generate javadoc jar; see profile for Java 8 -->
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-javadoc-plugin</artifactId>
-                               <!-- <version>2.10.3</version> -->
-                               <executions>
-                                       <execution>
-                                               <id>attach-javadocs</id>
-                                               <goals>
-                                                       <goal>jar</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                       </plugin>
-                       <!-- Generate source jar -->
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-source-plugin</artifactId>
-                               <!-- <version>3.0.0</version> -->
-                               <executions>
-                                       <execution>
-                                               <id>attach-sources</id>
-                                               <goals>
-                                                       <goal>jar</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                       </plugin>
                </plugins>
+               <pluginManagement>
+                       <plugins>
+                               <!--This plugin's configuration is used to store Eclipse m2e settings 
+                                       only. It has no influence on the Maven build itself. -->
+                               <plugin>
+                                       <groupId>org.eclipse.m2e</groupId>
+                                       <artifactId>lifecycle-mapping</artifactId>
+                                       <version>1.0.0</version>
+                                       <configuration>
+                                               <lifecycleMappingMetadata>
+                                                       <pluginExecutions>
+                                                               <pluginExecution>
+                                                                       <pluginExecutionFilter>
+                                                                               <groupId>io.swagger.codegen.v3</groupId>
+                                                                               <artifactId>swagger-codegen-maven-plugin</artifactId>
+                                                                               <versionRange>[1.0,)</versionRange>
+                                                                               <goals>
+                                                                                       <goal>generate</goal>
+                                                                               </goals>
+                                                                       </pluginExecutionFilter>
+                                                                       <action>
+                                                                               <ignore />
+                                                                       </action>
+                                                               </pluginExecution>
+                                                       </pluginExecutions>
+                                               </lifecycleMappingMetadata>
+                                       </configuration>
+                               </plugin>
+                       </plugins>
+               </pluginManagement>
        </build>
 </project>