Add sample swagger.json for msb 37/14137/2
authorKanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>
Thu, 21 Sep 2017 07:26:39 +0000 (12:56 +0530)
committerKanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>
Thu, 21 Sep 2017 13:18:36 +0000 (18:48 +0530)
MSB-78

Change-Id: I0be949bb24d4ecc3a8fc55c808f848ecb8f74171
Signed-off-by: Kanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>
example/pom.xml
example/src/main/resources/swagger.json [new file with mode: 0644]
example/src/main/resources/swagger.properties [new file with mode: 0644]

index 1432950..01dace2 100644 (file)
 <?xml version="1.0" encoding="UTF-8" ?>
 <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/xsd/maven-4.0.0.xsd">
-       <modelVersion>4.0.0</modelVersion>
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
     <parent>
       <groupId>org.onap.oparent</groupId>
       <artifactId>oparent</artifactId>
       <version>1.0.0-SNAPSHOT</version>
     </parent>
-  
-       <groupId>org.onap.msb.java-sdk</groupId>
-       <artifactId>msb-java-sdk-example</artifactId>
-       <name>msb-java-sdk-example</name>
-       <version>1.0.0-SNAPSHOT</version>
-       <packaging>jar</packaging>
 
-       <dependencies>
+    <groupId>org.onap.msb.java-sdk</groupId>
+    <artifactId>msb-java-sdk-example</artifactId>
+    <name>msb-java-sdk-example</name>
+    <version>1.0.0-SNAPSHOT</version>
+    <packaging>jar</packaging>
+
+    <dependencies>
         <dependency>
           <groupId>org.onap.msb.java-sdk</groupId>
-                       <artifactId>msb-java-sdk</artifactId>
-                       <version>1.0.0-SNAPSHOT</version>
-        </dependency>    
-               <dependency>
-                       <groupId>io.dropwizard</groupId>
-                       <artifactId>dropwizard-core</artifactId>
-                       <version>0.8.0</version>
-               </dependency>   
-       </dependencies>
-       <build>
-               <plugins>
-                       <plugin>
-                               <artifactId>maven-compiler-plugin</artifactId>
-                               <configuration>
-                                       <source>1.8</source>
-                                       <target>1.8</target>
-                               </configuration>
-                       </plugin>
-               </plugins>
-       </build>
+            <artifactId>msb-java-sdk</artifactId>
+            <version>1.0.0-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>io.dropwizard</groupId>
+            <artifactId>dropwizard-core</artifactId>
+            <version>0.8.0</version>
+        </dependency>
+    </dependencies>
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <source>1.8</source>
+                    <target>1.8</target>
+                </configuration>
+            </plugin>
+                        <!-- JSON -->
+             <plugin>
+                    <groupId>org.codehaus.mojo</groupId>
+                    <artifactId>properties-maven-plugin</artifactId>
+                    <version>1.0.0</version>
+                      <executions>
+                          <execution>
+                            <phase>initialize</phase>
+                            <goals>
+                              <goal>read-project-properties</goal>
+                            </goals>
+                            <configuration>
+                              <files>
+                                <file>${basedir}/src/main/resources/swagger.properties</file>
+                              </files>
+                            </configuration>
+                          </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>com.github.kongchen</groupId>
+                    <artifactId>swagger-maven-plugin</artifactId>
+                    <version>3.1.4</version>
+                    <configuration>
+                        <apiSources>
+                          <apiSource>
+                                <locations>${api-rest-package}</locations>
+                                <schemes>http,https</schemes>
+                                <host>${api-host-ip}:${api-host-port}</host>
+                                <basePath>${api-base-path}</basePath>
+                                <info>
+                                    <title>${api-title}</title>
+                                    <version>${api-version}</version>
+                                    <description>${api-description}</description>
+                                    <license>
+                                        <name>${api-license}</name>
+                                    </license>
+                                </info>
+                                <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
+                            </apiSource>
+                        </apiSources>
+                    </configuration>
+                    <executions>
+                        <execution>
+                            <phase>compile</phase>
+                            <goals>
+                                <goal>generate</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-install-plugin</artifactId>
+                    <version>2.3.1</version>
+                    <executions>
+                        <execution>
+                            <id>install-file-id</id>
+                            <phase>install</phase>
+                            <goals>
+                                <goal>install-file</goal>
+                            </goals>
+                            <configuration>
+                                <file>${basedir}/src/main/resources/swagger.json</file>
+                                <groupId>${project.groupId}</groupId>
+                                <artifactId>${project.artifactId}-swagger-schema</artifactId>
+                                <version>${project.version}</version>
+                                <packaging>json</packaging>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+        </plugins>
+    </build>
 </project>
diff --git a/example/src/main/resources/swagger.json b/example/src/main/resources/swagger.json
new file mode 100644 (file)
index 0000000..cd66074
--- /dev/null
@@ -0,0 +1,14 @@
+{
+  "swagger" : "2.0",
+  "info" : {
+    "description" : "MicroService Bus rest API Sample",
+    "version" : "1.0.0",
+    "title" : "MicroService Bus rest API Sample",
+    "license" : {
+      "name" : "https://wiki.onap.org/display/DW/Apache+2.0+License"
+    }
+  },
+  "host" : "127.0.0.1:80",
+  "basePath" : "/api/microservices/v1",
+  "schemes" : [ "http", "https" ]
+}
\ No newline at end of file
diff --git a/example/src/main/resources/swagger.properties b/example/src/main/resources/swagger.properties
new file mode 100644 (file)
index 0000000..41eb5f0
--- /dev/null
@@ -0,0 +1,50 @@
+#    Copyright 2017 Huawei Technologies Co., Ltd.
+#
+#    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.
+
+# Used to do swagger configuration.
+# Open-O Service REST API version
+api-version=1.0.0
+
+# Open-O Service REST API swagger document title
+api-title=MicroService Bus rest API Sample
+
+# Open-O Service REST API swagger document description
+api-description=MicroService Bus rest API Sample
+
+# Open-O Service REST API supported protocols
+api-schemas=http,https
+
+# Open-O Service REST API ROOT URI
+api-base-path=/api/microservices/v1
+
+# swagger.json URI on top of api-base-path. so final URI would as follows
+#<api-base-path>/<api-swagger-uri>/swagger.json
+api-swagger-uri=
+
+# Set the root level java package path, where REST API implemented.
+api-rest-package=org.onap.msb.sdk.example.server
+
+# Enables swagger to scan the ROA defining the REST API
+api-rest-package-scan=true
+
+# License details emebeded in generated swagger.json
+api-license=https://wiki.onap.org/display/DW/Apache+2.0+License
+
+# if service-config-file-path does not have api-host-ip and api-host-port,
+# then ip and port defined here will be used as default
+api-host-ip=127.0.0.1
+api-host-port=80
+
+# Set the below file path to service specific configuration file path
+service-config-file-path=