com.github.moronicgeek.swagger:server

Parent pom providing dependency and plugin management for applications built with Maven

License

License

Categories

Categories

Swagger Program Interface REST Frameworks
GroupId

GroupId

com.github.moronicgeek.swagger
ArtifactId

ArtifactId

server
Last Version

Last Version

0.1
Release Date

Release Date

Type

Type

jar
Description

Description

Parent pom providing dependency and plugin management for applications built with Maven
Project Organization

Project Organization

Pivotal Software, Inc.
Source Code Management

Source Code Management

https://github.com/moronicgeek/SwaggerCloud

Download server

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.moronicgeek.swagger/server/ -->
<dependency>
    <groupId>com.github.moronicgeek.swagger</groupId>
    <artifactId>server</artifactId>
    <version>0.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.moronicgeek.swagger/server/
implementation 'com.github.moronicgeek.swagger:server:0.1'
// https://jarcasting.com/artifacts/com.github.moronicgeek.swagger/server/
implementation ("com.github.moronicgeek.swagger:server:0.1")
'com.github.moronicgeek.swagger:server:jar:0.1'
<dependency org="com.github.moronicgeek.swagger" name="server" rev="0.1">
  <artifact name="server" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.moronicgeek.swagger', module='server', version='0.1')
)
libraryDependencies += "com.github.moronicgeek.swagger" % "server" % "0.1"
[com.github.moronicgeek.swagger/server "0.1"]

Dependencies

compile (7)

Group / Artifact Type Version
com.github.moronicgeek.swagger : core jar 0.1
org.springframework.boot : spring-boot-starter-web jar 1.4.0.RELEASE
com.fasterxml.jackson.core : jackson-databind jar 2.8.1
io.swagger : swagger-parser jar 1.0.22
org.springframework.cloud : spring-cloud-starter-eureka jar
org.springframework.boot : spring-boot-autoconfigure jar 1.4.0.RELEASE
org.springframework.boot : spring-boot-configuration-processor Optional jar 1.4.0.RELEASE

runtime (1)

Group / Artifact Type Version
com.github.moronicgeek : server-ui jar 0.1

test (4)

Group / Artifact Type Version
org.springframework : spring-test jar 4.3.2.RELEASE
org.mockito : mockito-core jar 1.10.19
com.jayway.jsonpath : json-path jar 2.2.0
junit : junit jar 4.12

Project Modules

There are no modules declared in this project.

alt text Swagger Cloud

Travis CI Apache License 2 Codacy Badge codecov

An API document catalog. This project centralises your swagger documentation in one portal. If your api has a swagger json file then the swagger cloud server can consume that to consolidate all your api documentation. The project leverages of the swagger/swagger-ui project for the swagger interface. The server is a spring boot plugin that allows you to get up and running quickly.

What it is ?

It is a document cloud catalog. It catalogs your swagger applications documentation.

What it's not?

It's not an API Manager

Usage

Modes

Client(Standalone)

Simply add the following maven dependency to your project.

 <dependency>
            <groupId>com.github.moronicgeek.swagger</groupId>
            <artifactId>client</artifactId>
            <version>${project.version}</version>
  </dependency>

and add the following properties to your application.properties or application.yml


swagger.cloud.boot.client.name=IchiServerAPI
swagger.cloud.boot.client.swagger-url=http://{SWAGGER CLOUD SERVER}:{SWAGGER CLOUD PORT}/swagger.json
swagger.cloud.boot.admin.url=http://localhost:8084
swagger.cloud.boot.admin.apiPath=/test/register

See clients in example folder.

Client (Cloud)

Swagger Cloud supports any spring cloud enabled service discovery(Eureka) which allows the Server to discover clients as they are registered. The system reads the registry and pings clients for a success response at the /swaggercloud/properties endpoint.

Once discovered a delta is updated to swagger clouds registry. The server uses eureka to discover a client in an UP/DOWN state.

Server

The server requires a basic spring boot application with the (@EnableSwaggerCloudServer) annotation in your application config. The server could integrate with any other language as the server exposes a restful api for you to use. Please refer to the Server Api documentation in the wiki. Server API

  <dependency>
            <groupId>com.github.moronicgeek.swagger</groupId>
            <artifactId>server</artifactId>
            <version>0.1</version>
  </dependency>

add this annotation to your SpringBootApplication configuration

@EnableSwaggerCloud

Have a look at the server project in our samples project.

Get coding

Pull requests are always welcome.

Need to generate a swagger.json file?

Have a look at the following projects to auto generate a swagger definition for you

https://github.com/kongchen/swagger-maven-plugin

https://github.com/springfox/springfox

Versions

Version
0.1