forked from loafle/openapi-generator-original
		
	added sample
This commit is contained in:
		
							parent
							
								
									ba2ccf788c
								
							
						
					
					
						commit
						33c87e8e72
					
				
							
								
								
									
										11
									
								
								samples/server/petstore/spring-mvc/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								samples/server/petstore/spring-mvc/README.md
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,11 @@
 | 
			
		||||
# Swagger generated server
 | 
			
		||||
 | 
			
		||||
Spring MVC Server
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## Overview
 | 
			
		||||
This server was generated by the [swagger-codegen](https://github.com/swagger-api/swagger-codegen) project.  By using the [swagger-spec](https://github.com/swagger-api/swagger-core), you can easily generate a server stub.  This is an example of building a swagger-enabled server in Java using the Spring MVC framework.
 | 
			
		||||
 | 
			
		||||
The underlying library integrating swagger to Spring-MVC is [springfox](https://github.com/springfox/springfox)
 | 
			
		||||
 | 
			
		||||
You can view the server in swagger-ui by pointing to http://localhost:8002/v2/swagger.json
 | 
			
		||||
							
								
								
									
										227
									
								
								samples/server/petstore/spring-mvc/pom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										227
									
								
								samples/server/petstore/spring-mvc/pom.xml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,227 @@
 | 
			
		||||
<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">
 | 
			
		||||
  <modelVersion>4.0.0</modelVersion>
 | 
			
		||||
  <groupId>io.swagger</groupId>
 | 
			
		||||
  <artifactId>swagger-spring-mvc-server</artifactId>
 | 
			
		||||
  <packaging>jar</packaging>
 | 
			
		||||
  <name>swagger-spring-mvc-server</name>
 | 
			
		||||
  <version>1.0.0</version>
 | 
			
		||||
  <build>
 | 
			
		||||
    <sourceDirectory>src/main/java</sourceDirectory>
 | 
			
		||||
    <plugins>
 | 
			
		||||
      <plugin>
 | 
			
		||||
        <groupId>org.apache.maven.plugins</groupId>
 | 
			
		||||
        <artifactId>maven-war-plugin</artifactId>
 | 
			
		||||
        <version>2.1.1</version>
 | 
			
		||||
      </plugin>
 | 
			
		||||
      <plugin>
 | 
			
		||||
        <artifactId>maven-failsafe-plugin</artifactId>
 | 
			
		||||
        <version>2.6</version>
 | 
			
		||||
        <executions>
 | 
			
		||||
          <execution>
 | 
			
		||||
            <goals>
 | 
			
		||||
              <goal>integration-test</goal>
 | 
			
		||||
              <goal>verify</goal>
 | 
			
		||||
            </goals>
 | 
			
		||||
          </execution>
 | 
			
		||||
        </executions>
 | 
			
		||||
      </plugin>
 | 
			
		||||
      <plugin>
 | 
			
		||||
        <groupId>org.mortbay.jetty</groupId>
 | 
			
		||||
        <artifactId>jetty-maven-plugin</artifactId>
 | 
			
		||||
        <version>${jetty-version}</version>
 | 
			
		||||
        <configuration>
 | 
			
		||||
          <webAppConfig>
 | 
			
		||||
            <contextPath>/v2</contextPath>
 | 
			
		||||
          </webAppConfig>
 | 
			
		||||
          <webAppSourceDirectory>target/${project.artifactId}-${project-version}</webAppSourceDirectory>
 | 
			
		||||
          <webDefaultXml>${project.basedir}/conf/jetty/webdefault.xml</webDefaultXml>
 | 
			
		||||
          <stopPort>8079</stopPort>
 | 
			
		||||
          <stopKey>stopit</stopKey>
 | 
			
		||||
          <connectors>
 | 
			
		||||
            <connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
 | 
			
		||||
              <port>8002</port>
 | 
			
		||||
              <maxIdleTime>60000</maxIdleTime>
 | 
			
		||||
              <confidentialPort>8443</confidentialPort>
 | 
			
		||||
            </connector>
 | 
			
		||||
          </connectors>
 | 
			
		||||
        </configuration>
 | 
			
		||||
        <executions>
 | 
			
		||||
          <execution>
 | 
			
		||||
            <id>start-jetty</id>
 | 
			
		||||
            <phase>pre-integration-test</phase>
 | 
			
		||||
            <goals>
 | 
			
		||||
              <goal>run</goal>
 | 
			
		||||
            </goals>
 | 
			
		||||
            <configuration>
 | 
			
		||||
              <scanIntervalSeconds>0</scanIntervalSeconds>
 | 
			
		||||
              <daemon>true</daemon>
 | 
			
		||||
            </configuration>
 | 
			
		||||
          </execution>
 | 
			
		||||
          <execution>
 | 
			
		||||
            <id>stop-jetty</id>
 | 
			
		||||
            <phase>post-integration-test</phase>
 | 
			
		||||
            <goals>
 | 
			
		||||
              <goal>stop</goal>
 | 
			
		||||
            </goals>
 | 
			
		||||
          </execution>
 | 
			
		||||
        </executions>
 | 
			
		||||
      </plugin>
 | 
			
		||||
      <plugin>
 | 
			
		||||
        <groupId>com.googlecode.maven-download-plugin</groupId>
 | 
			
		||||
        <artifactId>download-maven-plugin</artifactId>
 | 
			
		||||
        <version>1.2.1</version>
 | 
			
		||||
        <executions>
 | 
			
		||||
          <execution>
 | 
			
		||||
            <id>swagger-ui</id>
 | 
			
		||||
            <goals>
 | 
			
		||||
              <goal>wget</goal>
 | 
			
		||||
            </goals>
 | 
			
		||||
            <configuration>
 | 
			
		||||
              <url>https://github.com/swagger-api/swagger-ui/archive/v${swagger-ui-version}.tar.gz</url>
 | 
			
		||||
              <unpack>true</unpack>
 | 
			
		||||
              <outputDirectory>${project.build.directory}</outputDirectory>
 | 
			
		||||
            </configuration>
 | 
			
		||||
          </execution>
 | 
			
		||||
        </executions>
 | 
			
		||||
      </plugin>
 | 
			
		||||
      <plugin>
 | 
			
		||||
        <artifactId>maven-resources-plugin</artifactId>
 | 
			
		||||
        <version>2.6</version>
 | 
			
		||||
        <executions>
 | 
			
		||||
          <execution>
 | 
			
		||||
            <id>copy-resources</id>
 | 
			
		||||
            <phase>validate</phase>
 | 
			
		||||
            <goals>
 | 
			
		||||
              <goal>copy-resources</goal>
 | 
			
		||||
            </goals>
 | 
			
		||||
            <configuration>
 | 
			
		||||
              <outputDirectory>target/${project.artifactId}-${project.version}</outputDirectory>
 | 
			
		||||
              <resources>
 | 
			
		||||
                <resource>
 | 
			
		||||
                  <directory>${project.build.directory}/swagger-ui-${swagger-ui-version}/dist</directory>
 | 
			
		||||
                  <filtering>true</filtering>
 | 
			
		||||
                  <excludes>
 | 
			
		||||
                    <exclude>index.html</exclude>
 | 
			
		||||
                  </excludes>
 | 
			
		||||
                </resource>
 | 
			
		||||
              </resources>
 | 
			
		||||
            </configuration>
 | 
			
		||||
          </execution>
 | 
			
		||||
        </executions>
 | 
			
		||||
      </plugin>
 | 
			
		||||
    </plugins>
 | 
			
		||||
  </build>
 | 
			
		||||
  <dependencies>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>com.wordnik</groupId>
 | 
			
		||||
      <artifactId>swagger-jersey-jaxrs</artifactId>
 | 
			
		||||
      <version>${swagger-core-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>org.slf4j</groupId>
 | 
			
		||||
      <artifactId>slf4j-log4j12</artifactId>
 | 
			
		||||
      <version>${slf4j-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>com.sun.jersey</groupId>
 | 
			
		||||
      <artifactId>jersey-core</artifactId>
 | 
			
		||||
      <version>${jersey-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>com.sun.jersey</groupId>
 | 
			
		||||
      <artifactId>jersey-json</artifactId>
 | 
			
		||||
      <version>${jersey-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>com.sun.jersey</groupId>
 | 
			
		||||
      <artifactId>jersey-servlet</artifactId>
 | 
			
		||||
      <version>${jersey-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>com.sun.jersey.contribs</groupId>
 | 
			
		||||
      <artifactId>jersey-multipart</artifactId>
 | 
			
		||||
      <version>${jersey-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>com.sun.jersey</groupId>
 | 
			
		||||
      <artifactId>jersey-server</artifactId>
 | 
			
		||||
      <version>${jersey-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
 | 
			
		||||
    <!--Spring dependencies -->
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>org.springframework</groupId>
 | 
			
		||||
      <artifactId>spring-core</artifactId>
 | 
			
		||||
      <version>${spring-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>org.springframework</groupId>
 | 
			
		||||
      <artifactId>spring-webmvc</artifactId>
 | 
			
		||||
      <version>${spring-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>org.springframework</groupId>
 | 
			
		||||
      <artifactId>spring-web</artifactId>
 | 
			
		||||
      <version>${spring-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
 | 
			
		||||
    <!--SpringFox dependencies-->
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>io.springfox</groupId>
 | 
			
		||||
      <artifactId>springfox-core</artifactId>
 | 
			
		||||
      <version>${springfox-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>io.springfox</groupId>
 | 
			
		||||
      <artifactId>springfox-spi</artifactId>
 | 
			
		||||
      <version>${springfox-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>io.springfox</groupId>
 | 
			
		||||
      <artifactId>springfox-spring-web</artifactId>
 | 
			
		||||
      <version>${springfox-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>io.springfox</groupId>
 | 
			
		||||
      <artifactId>springfox-swagger2</artifactId>
 | 
			
		||||
      <version>${springfox-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>org.scalatest</groupId>
 | 
			
		||||
      <artifactId>scalatest_2.9.1</artifactId>
 | 
			
		||||
      <version>${scala-test-version}</version>
 | 
			
		||||
      <scope>test</scope>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>junit</groupId>
 | 
			
		||||
      <artifactId>junit</artifactId>
 | 
			
		||||
      <version>${junit-version}</version>
 | 
			
		||||
      <scope>test</scope>
 | 
			
		||||
    </dependency>
 | 
			
		||||
    <dependency>
 | 
			
		||||
      <groupId>javax.servlet</groupId>
 | 
			
		||||
      <artifactId>servlet-api</artifactId>
 | 
			
		||||
      <version>${servlet-api-version}</version>
 | 
			
		||||
    </dependency>
 | 
			
		||||
  </dependencies>
 | 
			
		||||
  <repositories>
 | 
			
		||||
    <repository>
 | 
			
		||||
      <id>jcenter-snapshots</id>
 | 
			
		||||
      <name>jcenter</name>
 | 
			
		||||
      <url>http://oss.jfrog.org/artifactory/oss-snapshot-local/</url>
 | 
			
		||||
    </repository>
 | 
			
		||||
  </repositories>
 | 
			
		||||
  <properties>
 | 
			
		||||
    <swagger-core-version>1.5.3-M1-SNAPSHOT</swagger-core-version>
 | 
			
		||||
    <jetty-version>8.1.11.v20130520</jetty-version>
 | 
			
		||||
    <swagger-ui-version>2.1.0-M2</swagger-ui-version>
 | 
			
		||||
    <jersey-version>1.13</jersey-version>
 | 
			
		||||
    <slf4j-version>1.6.3</slf4j-version>
 | 
			
		||||
    <scala-test-version>1.6.1</scala-test-version>
 | 
			
		||||
    <junit-version>4.8.1</junit-version>
 | 
			
		||||
    <servlet-api-version>2.5</servlet-api-version>
 | 
			
		||||
    <springfox-version>2.0.0-SNAPSHOT</springfox-version>
 | 
			
		||||
    <spring-version>4.0.9.RELEASE</spring-version>
 | 
			
		||||
  </properties>
 | 
			
		||||
</project>
 | 
			
		||||
@ -0,0 +1,9 @@
 | 
			
		||||
package io.swagger.api;
 | 
			
		||||
 | 
			
		||||
public class ApiException extends Exception{
 | 
			
		||||
	private int code;
 | 
			
		||||
	public ApiException (int code, String msg) {
 | 
			
		||||
		super(msg);
 | 
			
		||||
		this.code = code;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,26 @@
 | 
			
		||||
package io.swagger.api;
 | 
			
		||||
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
 | 
			
		||||
import javax.servlet.*;
 | 
			
		||||
import javax.servlet.http.HttpServletResponse;
 | 
			
		||||
 | 
			
		||||
public class ApiOriginFilter implements javax.servlet.Filter {
 | 
			
		||||
	@Override
 | 
			
		||||
	public void doFilter(ServletRequest request, ServletResponse response,
 | 
			
		||||
			FilterChain chain) throws IOException, ServletException {
 | 
			
		||||
		HttpServletResponse res = (HttpServletResponse) response;
 | 
			
		||||
		res.addHeader("Access-Control-Allow-Origin", "*");
 | 
			
		||||
		res.addHeader("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT");
 | 
			
		||||
		res.addHeader("Access-Control-Allow-Headers", "Content-Type");
 | 
			
		||||
		chain.doFilter(request, response);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Override
 | 
			
		||||
	public void destroy() {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Override
 | 
			
		||||
	public void init(FilterConfig filterConfig) throws ServletException {
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,68 @@
 | 
			
		||||
package io.swagger.api;
 | 
			
		||||
 | 
			
		||||
import javax.xml.bind.annotation.XmlTransient;
 | 
			
		||||
 | 
			
		||||
@javax.xml.bind.annotation.XmlRootElement
 | 
			
		||||
public class ApiResponseMessage {
 | 
			
		||||
	public static final int ERROR = 1;
 | 
			
		||||
	public static final int WARNING = 2;
 | 
			
		||||
	public static final int INFO = 3;
 | 
			
		||||
	public static final int OK = 4;
 | 
			
		||||
	public static final int TOO_BUSY = 5;
 | 
			
		||||
 | 
			
		||||
	int code;
 | 
			
		||||
	String type;
 | 
			
		||||
	String message;
 | 
			
		||||
	
 | 
			
		||||
	public ApiResponseMessage(){}
 | 
			
		||||
	
 | 
			
		||||
	public ApiResponseMessage(int code, String message){
 | 
			
		||||
		this.code = code;
 | 
			
		||||
		switch(code){
 | 
			
		||||
		case ERROR:
 | 
			
		||||
			setType("error");
 | 
			
		||||
			break;
 | 
			
		||||
		case WARNING:
 | 
			
		||||
			setType("warning");
 | 
			
		||||
			break;
 | 
			
		||||
		case INFO:
 | 
			
		||||
			setType("info");
 | 
			
		||||
			break;
 | 
			
		||||
		case OK:
 | 
			
		||||
			setType("ok");
 | 
			
		||||
			break;
 | 
			
		||||
		case TOO_BUSY:
 | 
			
		||||
			setType("too busy");
 | 
			
		||||
			break;
 | 
			
		||||
		default:
 | 
			
		||||
			setType("unknown");
 | 
			
		||||
			break;
 | 
			
		||||
		}
 | 
			
		||||
		this.message = message;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@XmlTransient
 | 
			
		||||
	public int getCode() {
 | 
			
		||||
		return code;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public void setCode(int code) {
 | 
			
		||||
		this.code = code;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public String getType() {
 | 
			
		||||
		return type;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public void setType(String type) {
 | 
			
		||||
		this.type = type;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public String getMessage() {
 | 
			
		||||
		return message;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public void setMessage(String message) {
 | 
			
		||||
		this.message = message;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,9 @@
 | 
			
		||||
package io.swagger.api;
 | 
			
		||||
 | 
			
		||||
public class NotFoundException extends ApiException {
 | 
			
		||||
	private int code;
 | 
			
		||||
	public NotFoundException (int code, String msg) {
 | 
			
		||||
		super(code, msg);
 | 
			
		||||
		this.code = code;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,169 @@
 | 
			
		||||
package io.swagger.api;
 | 
			
		||||
 | 
			
		||||
import io.swagger.model.*;
 | 
			
		||||
 | 
			
		||||
import io.swagger.model.Pet;
 | 
			
		||||
import java.io.File;
 | 
			
		||||
 | 
			
		||||
import com.wordnik.swagger.annotations.Api;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiOperation;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiParam;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiResponse;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiResponses;
 | 
			
		||||
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.http.ResponseEntity;
 | 
			
		||||
import org.springframework.stereotype.Controller;
 | 
			
		||||
import org.springframework.web.bind.annotation.PathVariable;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestBody;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestHeader;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMapping;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMethod;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestParam;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestPart;
 | 
			
		||||
import org.springframework.web.multipart.MultipartFile;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
import static org.springframework.http.MediaType.*;
 | 
			
		||||
 | 
			
		||||
@Controller
 | 
			
		||||
@RequestMapping(value = "/pet", produces = {APPLICATION_JSON_VALUE})
 | 
			
		||||
@Api(value = "/pet", description = "the pet API")
 | 
			
		||||
public class PetApi {
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Update an existing pet", notes = "", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 405, message = "Validation exception"),
 | 
			
		||||
    @ApiResponse(code = 404, message = "Pet not found"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid ID supplied") })
 | 
			
		||||
  @RequestMapping(value = "", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    consumes = { "application/json", "application/xml",  },
 | 
			
		||||
    method = RequestMethod.PUT)
 | 
			
		||||
  public ResponseEntity<Void> updatePet(@ApiParam(value = "Pet object that needs to be added to the store"  ) Pet body)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Add a new pet to the store", notes = "", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 405, message = "Invalid input") })
 | 
			
		||||
  @RequestMapping(value = "", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    consumes = { "application/json", "application/xml",  },
 | 
			
		||||
    method = RequestMethod.POST)
 | 
			
		||||
  public ResponseEntity<Void> addPet(@ApiParam(value = "Pet object that needs to be added to the store"  ) Pet body)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Finds Pets by status", notes = "Multiple status values can be provided with comma seperated strings", response = Pet.class, responseContainer = "List")
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 200, message = "successful operation"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid status value") })
 | 
			
		||||
  @RequestMapping(value = "/findByStatus", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.GET)
 | 
			
		||||
  public ResponseEntity<Pet> findPetsByStatus(@ApiParam(value = "Status values that need to be considered for filter") @RequestParam("status") List<String> status)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Pet>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Finds Pets by tags", notes = "Muliple tags can be provided with comma seperated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List")
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 200, message = "successful operation"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid tag value") })
 | 
			
		||||
  @RequestMapping(value = "/findByTags", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.GET)
 | 
			
		||||
  public ResponseEntity<Pet> findPetsByTags(@ApiParam(value = "Tags to filter by") @RequestParam("tags") List<String> tags)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Pet>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Find pet by ID", notes = "Returns a pet when ID < 10.  ID > 10 or nonintegers will simulate API error conditions", response = Pet.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 404, message = "Pet not found"),
 | 
			
		||||
    @ApiResponse(code = 200, message = "successful operation"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid ID supplied") })
 | 
			
		||||
  @RequestMapping(value = "/{petId}", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.GET)
 | 
			
		||||
  public ResponseEntity<Pet> getPetById(@ApiParam(value = "ID of pet that needs to be fetched",required=true ) @PathVariable("petId") Long petId)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Pet>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Updates a pet in the store with form data", notes = "", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 405, message = "Invalid input") })
 | 
			
		||||
  @RequestMapping(value = "/{petId}", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    consumes = { "application/x-www-form-urlencoded",  },
 | 
			
		||||
    method = RequestMethod.POST)
 | 
			
		||||
  public ResponseEntity<Void> updatePetWithForm(@ApiParam(value = "ID of pet that needs to be updated",required=true ) @PathVariable("petId") String petId,
 | 
			
		||||
    
 | 
			
		||||
@ApiParam(value = "Updated name of the pet" )@RequestPart("name")  String name,
 | 
			
		||||
    
 | 
			
		||||
@ApiParam(value = "Updated status of the pet" )@RequestPart("status")  String status)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Deletes a pet", notes = "", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid pet value") })
 | 
			
		||||
  @RequestMapping(value = "/{petId}", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.DELETE)
 | 
			
		||||
  public ResponseEntity<Void> deletePet(@ApiParam(value = ""  )@RequestHeader("apiKey") String apiKey,
 | 
			
		||||
    @ApiParam(value = "Pet id to delete",required=true ) @PathVariable("petId") Long petId)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "uploads an image", notes = "", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 0, message = "successful operation") })
 | 
			
		||||
  @RequestMapping(value = "/{petId}/uploadImage", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    consumes = { "multipart/form-data",  },
 | 
			
		||||
    method = RequestMethod.POST)
 | 
			
		||||
  public ResponseEntity<Void> uploadFile(@ApiParam(value = "ID of pet to update",required=true ) @PathVariable("petId") Long petId,
 | 
			
		||||
    
 | 
			
		||||
@ApiParam(value = "Additional data to pass to server" )@RequestPart("additionalMetadata")  String additionalMetadata,
 | 
			
		||||
    @ApiParam(value = "file detail") @RequestPart("file") MultipartFile fileDetail)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,99 @@
 | 
			
		||||
package io.swagger.api;
 | 
			
		||||
 | 
			
		||||
import io.swagger.model.*;
 | 
			
		||||
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
import io.swagger.model.Order;
 | 
			
		||||
 | 
			
		||||
import com.wordnik.swagger.annotations.Api;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiOperation;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiParam;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiResponse;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiResponses;
 | 
			
		||||
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.http.ResponseEntity;
 | 
			
		||||
import org.springframework.stereotype.Controller;
 | 
			
		||||
import org.springframework.web.bind.annotation.PathVariable;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestBody;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestHeader;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMapping;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMethod;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestParam;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestPart;
 | 
			
		||||
import org.springframework.web.multipart.MultipartFile;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
import static org.springframework.http.MediaType.*;
 | 
			
		||||
 | 
			
		||||
@Controller
 | 
			
		||||
@RequestMapping(value = "/store", produces = {APPLICATION_JSON_VALUE})
 | 
			
		||||
@Api(value = "/store", description = "the store API")
 | 
			
		||||
public class StoreApi {
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Returns pet inventories by status", notes = "Returns a map of status codes to quantities", response = Integer.class, responseContainer = "map")
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 200, message = "successful operation") })
 | 
			
		||||
  @RequestMapping(value = "/inventory", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.GET)
 | 
			
		||||
  public ResponseEntity<Integer> getInventory()
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Integer>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Place an order for a pet", notes = "", response = Order.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 200, message = "successful operation"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid Order") })
 | 
			
		||||
  @RequestMapping(value = "/order", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.POST)
 | 
			
		||||
  public ResponseEntity<Order> placeOrder(@ApiParam(value = "order placed for purchasing the pet"  ) Order body)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Order>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Find purchase order by ID", notes = "For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions", response = Order.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 404, message = "Order not found"),
 | 
			
		||||
    @ApiResponse(code = 200, message = "successful operation"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid ID supplied") })
 | 
			
		||||
  @RequestMapping(value = "/order/{orderId}", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.GET)
 | 
			
		||||
  public ResponseEntity<Order> getOrderById(@ApiParam(value = "ID of pet that needs to be fetched",required=true ) @PathVariable("orderId") String orderId)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Order>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Delete purchase order by ID", notes = "For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 404, message = "Order not found"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid ID supplied") })
 | 
			
		||||
  @RequestMapping(value = "/order/{orderId}", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.DELETE)
 | 
			
		||||
  public ResponseEntity<Void> deleteOrder(@ApiParam(value = "ID of the order that needs to be deleted",required=true ) @PathVariable("orderId") String orderId)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,162 @@
 | 
			
		||||
package io.swagger.api;
 | 
			
		||||
 | 
			
		||||
import io.swagger.model.*;
 | 
			
		||||
 | 
			
		||||
import io.swagger.model.User;
 | 
			
		||||
import java.util.*;
 | 
			
		||||
 | 
			
		||||
import com.wordnik.swagger.annotations.Api;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiOperation;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiParam;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiResponse;
 | 
			
		||||
import com.wordnik.swagger.annotations.ApiResponses;
 | 
			
		||||
 | 
			
		||||
import org.springframework.http.HttpStatus;
 | 
			
		||||
import org.springframework.http.ResponseEntity;
 | 
			
		||||
import org.springframework.stereotype.Controller;
 | 
			
		||||
import org.springframework.web.bind.annotation.PathVariable;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestBody;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestHeader;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMapping;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMethod;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestParam;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestPart;
 | 
			
		||||
import org.springframework.web.multipart.MultipartFile;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
import static org.springframework.http.MediaType.*;
 | 
			
		||||
 | 
			
		||||
@Controller
 | 
			
		||||
@RequestMapping(value = "/user", produces = {APPLICATION_JSON_VALUE})
 | 
			
		||||
@Api(value = "/user", description = "the user API")
 | 
			
		||||
public class UserApi {
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Create user", notes = "This can only be done by the logged in user.", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 0, message = "successful operation") })
 | 
			
		||||
  @RequestMapping(value = "", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.POST)
 | 
			
		||||
  public ResponseEntity<Void> createUser(@ApiParam(value = "Created user object"  ) User body)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Creates list of users with given input array", notes = "", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 0, message = "successful operation") })
 | 
			
		||||
  @RequestMapping(value = "/createWithArray", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.POST)
 | 
			
		||||
  public ResponseEntity<Void> createUsersWithArrayInput(@ApiParam(value = "List of user object"  ) List<User> body)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Creates list of users with given input array", notes = "", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 0, message = "successful operation") })
 | 
			
		||||
  @RequestMapping(value = "/createWithList", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.POST)
 | 
			
		||||
  public ResponseEntity<Void> createUsersWithListInput(@ApiParam(value = "List of user object"  ) List<User> body)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Logs user into the system", notes = "", response = String.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 200, message = "successful operation"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid username/password supplied") })
 | 
			
		||||
  @RequestMapping(value = "/login", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.GET)
 | 
			
		||||
  public ResponseEntity<String> loginUser(@ApiParam(value = "The user name for login") @RequestParam("username") String username,
 | 
			
		||||
    @ApiParam(value = "The password for login in clear text") @RequestParam("password") String password)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<String>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Logs out current logged in user session", notes = "", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 0, message = "successful operation") })
 | 
			
		||||
  @RequestMapping(value = "/logout", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.GET)
 | 
			
		||||
  public ResponseEntity<Void> logoutUser()
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Get user by user name", notes = "", response = User.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 404, message = "User not found"),
 | 
			
		||||
    @ApiResponse(code = 200, message = "successful operation"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid username supplied") })
 | 
			
		||||
  @RequestMapping(value = "/{username}", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.GET)
 | 
			
		||||
  public ResponseEntity<User> getUserByName(@ApiParam(value = "The name that needs to be fetched. Use user1 for testing. ",required=true ) @PathVariable("username") String username)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<User>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Updated user", notes = "This can only be done by the logged in user.", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 404, message = "User not found"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid user supplied") })
 | 
			
		||||
  @RequestMapping(value = "/{username}", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.PUT)
 | 
			
		||||
  public ResponseEntity<Void> updateUser(@ApiParam(value = "name that need to be deleted",required=true ) @PathVariable("username") String username,
 | 
			
		||||
    @ApiParam(value = "Updated user object"  ) User body)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @ApiOperation(value = "Delete user", notes = "This can only be done by the logged in user.", response = Void.class)
 | 
			
		||||
  @ApiResponses(value = { 
 | 
			
		||||
    @ApiResponse(code = 404, message = "User not found"),
 | 
			
		||||
    @ApiResponse(code = 400, message = "Invalid username supplied") })
 | 
			
		||||
  @RequestMapping(value = "/{username}", 
 | 
			
		||||
    produces = { "application/json", "application/xml" }, 
 | 
			
		||||
    
 | 
			
		||||
    method = RequestMethod.DELETE)
 | 
			
		||||
  public ResponseEntity<Void> deleteUser(@ApiParam(value = "The name that needs to be deleted",required=true ) @PathVariable("username") String username)
 | 
			
		||||
      throws NotFoundException {
 | 
			
		||||
      // do some magic!
 | 
			
		||||
      return new ResponseEntity<Void>(HttpStatus.OK);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,39 @@
 | 
			
		||||
package io.swagger.configuration;
 | 
			
		||||
 | 
			
		||||
import org.springframework.context.annotation.Bean;
 | 
			
		||||
import org.springframework.context.annotation.ComponentScan;
 | 
			
		||||
import org.springframework.context.annotation.Configuration;
 | 
			
		||||
import org.springframework.context.annotation.PropertySource;
 | 
			
		||||
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
 | 
			
		||||
import springfox.documentation.service.ApiInfo;
 | 
			
		||||
import springfox.documentation.spi.DocumentationType;
 | 
			
		||||
import springfox.documentation.spring.web.plugins.Docket;
 | 
			
		||||
import springfox.documentation.swagger2.annotations.EnableSwagger2;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@Configuration
 | 
			
		||||
@ComponentScan(basePackages = "io.swagger.api")
 | 
			
		||||
@EnableWebMvc
 | 
			
		||||
@EnableSwagger2 //Loads the spring beans required by the framework
 | 
			
		||||
@PropertySource("classpath:swagger.properties")
 | 
			
		||||
public class SwaggerConfig {
 | 
			
		||||
 | 
			
		||||
    @Bean
 | 
			
		||||
    ApiInfo apiInfo() {
 | 
			
		||||
        ApiInfo apiInfo = new ApiInfo(
 | 
			
		||||
        "Swagger Petstore",
 | 
			
		||||
        "This is a sample server Petstore server.  You can find out more about Swagger at <a href=\"http://swagger.io\">http://swagger.io</a> or on irc.freenode.net, #swagger.  For this sample, you can use the api key \"special-key\" to test the authorization filters",
 | 
			
		||||
        "1.0.0",
 | 
			
		||||
        "",
 | 
			
		||||
        "apiteam@wordnik.com",
 | 
			
		||||
        "Apache 2.0",
 | 
			
		||||
        "http://www.apache.org/licenses/LICENSE-2.0.html" );
 | 
			
		||||
        return apiInfo;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Bean
 | 
			
		||||
    public Docket customImplementation(){
 | 
			
		||||
        return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,21 @@
 | 
			
		||||
package io.swagger.configuration;
 | 
			
		||||
 | 
			
		||||
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
 | 
			
		||||
 | 
			
		||||
public class WebApplication extends AbstractAnnotationConfigDispatcherServletInitializer {
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    protected Class<?>[] getRootConfigClasses() {
 | 
			
		||||
        return new Class[] { SwaggerConfig.class };
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    protected Class<?>[] getServletConfigClasses() {
 | 
			
		||||
        return new Class<?>[] { WebMvcConfiguration.class };
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    protected String[] getServletMappings() {
 | 
			
		||||
        return new String[] { "/" };
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,11 @@
 | 
			
		||||
package io.swagger.configuration;
 | 
			
		||||
 | 
			
		||||
import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
 | 
			
		||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
 | 
			
		||||
 | 
			
		||||
public class WebMvcConfiguration extends WebMvcConfigurationSupport {
 | 
			
		||||
    @Override
 | 
			
		||||
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
 | 
			
		||||
        configurer.enable();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,50 @@
 | 
			
		||||
package io.swagger.model;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
import com.wordnik.swagger.annotations.*;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonProperty;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ApiModel(description = "")
 | 
			
		||||
public class Category  {
 | 
			
		||||
  
 | 
			
		||||
  private Long id = null;
 | 
			
		||||
  private String name = null;
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("id")
 | 
			
		||||
  public Long getId() {
 | 
			
		||||
    return id;
 | 
			
		||||
  }
 | 
			
		||||
  public void setId(Long id) {
 | 
			
		||||
    this.id = id;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("name")
 | 
			
		||||
  public String getName() {
 | 
			
		||||
    return name;
 | 
			
		||||
  }
 | 
			
		||||
  public void setName(String name) {
 | 
			
		||||
    this.name = name;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
  public String toString()  {
 | 
			
		||||
    StringBuilder sb = new StringBuilder();
 | 
			
		||||
    sb.append("class Category {\n");
 | 
			
		||||
    
 | 
			
		||||
    sb.append("  id: ").append(id).append("\n");
 | 
			
		||||
    sb.append("  name: ").append(name).append("\n");
 | 
			
		||||
    sb.append("}\n");
 | 
			
		||||
    return sb.toString();
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,111 @@
 | 
			
		||||
package io.swagger.model;
 | 
			
		||||
 | 
			
		||||
import java.util.Date;
 | 
			
		||||
 | 
			
		||||
import com.wordnik.swagger.annotations.*;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonProperty;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ApiModel(description = "")
 | 
			
		||||
public class Order  {
 | 
			
		||||
  
 | 
			
		||||
  private Long id = null;
 | 
			
		||||
  private Long petId = null;
 | 
			
		||||
  private Integer quantity = null;
 | 
			
		||||
  private Date shipDate = null;
 | 
			
		||||
  public enum StatusEnum {
 | 
			
		||||
     placed,  approved,  delivered, 
 | 
			
		||||
  };
 | 
			
		||||
  private StatusEnum status = null;
 | 
			
		||||
  private Boolean complete = null;
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("id")
 | 
			
		||||
  public Long getId() {
 | 
			
		||||
    return id;
 | 
			
		||||
  }
 | 
			
		||||
  public void setId(Long id) {
 | 
			
		||||
    this.id = id;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("petId")
 | 
			
		||||
  public Long getPetId() {
 | 
			
		||||
    return petId;
 | 
			
		||||
  }
 | 
			
		||||
  public void setPetId(Long petId) {
 | 
			
		||||
    this.petId = petId;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("quantity")
 | 
			
		||||
  public Integer getQuantity() {
 | 
			
		||||
    return quantity;
 | 
			
		||||
  }
 | 
			
		||||
  public void setQuantity(Integer quantity) {
 | 
			
		||||
    this.quantity = quantity;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("shipDate")
 | 
			
		||||
  public Date getShipDate() {
 | 
			
		||||
    return shipDate;
 | 
			
		||||
  }
 | 
			
		||||
  public void setShipDate(Date shipDate) {
 | 
			
		||||
    this.shipDate = shipDate;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   * Order Status
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "Order Status")
 | 
			
		||||
  @JsonProperty("status")
 | 
			
		||||
  public StatusEnum getStatus() {
 | 
			
		||||
    return status;
 | 
			
		||||
  }
 | 
			
		||||
  public void setStatus(StatusEnum status) {
 | 
			
		||||
    this.status = status;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("complete")
 | 
			
		||||
  public Boolean getComplete() {
 | 
			
		||||
    return complete;
 | 
			
		||||
  }
 | 
			
		||||
  public void setComplete(Boolean complete) {
 | 
			
		||||
    this.complete = complete;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
  public String toString()  {
 | 
			
		||||
    StringBuilder sb = new StringBuilder();
 | 
			
		||||
    sb.append("class Order {\n");
 | 
			
		||||
    
 | 
			
		||||
    sb.append("  id: ").append(id).append("\n");
 | 
			
		||||
    sb.append("  petId: ").append(petId).append("\n");
 | 
			
		||||
    sb.append("  quantity: ").append(quantity).append("\n");
 | 
			
		||||
    sb.append("  shipDate: ").append(shipDate).append("\n");
 | 
			
		||||
    sb.append("  status: ").append(status).append("\n");
 | 
			
		||||
    sb.append("  complete: ").append(complete).append("\n");
 | 
			
		||||
    sb.append("}\n");
 | 
			
		||||
    return sb.toString();
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,113 @@
 | 
			
		||||
package io.swagger.model;
 | 
			
		||||
 | 
			
		||||
import io.swagger.model.Category;
 | 
			
		||||
import io.swagger.model.Tag;
 | 
			
		||||
import java.util.*;
 | 
			
		||||
 | 
			
		||||
import com.wordnik.swagger.annotations.*;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonProperty;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ApiModel(description = "")
 | 
			
		||||
public class Pet  {
 | 
			
		||||
  
 | 
			
		||||
  private Long id = null;
 | 
			
		||||
  private Category category = null;
 | 
			
		||||
  private String name = null;
 | 
			
		||||
  private List<String> photoUrls = new ArrayList<String>() ;
 | 
			
		||||
  private List<Tag> tags = new ArrayList<Tag>() ;
 | 
			
		||||
  public enum StatusEnum {
 | 
			
		||||
     available,  pending,  sold, 
 | 
			
		||||
  };
 | 
			
		||||
  private StatusEnum status = null;
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("id")
 | 
			
		||||
  public Long getId() {
 | 
			
		||||
    return id;
 | 
			
		||||
  }
 | 
			
		||||
  public void setId(Long id) {
 | 
			
		||||
    this.id = id;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("category")
 | 
			
		||||
  public Category getCategory() {
 | 
			
		||||
    return category;
 | 
			
		||||
  }
 | 
			
		||||
  public void setCategory(Category category) {
 | 
			
		||||
    this.category = category;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(required = true, value = "")
 | 
			
		||||
  @JsonProperty("name")
 | 
			
		||||
  public String getName() {
 | 
			
		||||
    return name;
 | 
			
		||||
  }
 | 
			
		||||
  public void setName(String name) {
 | 
			
		||||
    this.name = name;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(required = true, value = "")
 | 
			
		||||
  @JsonProperty("photoUrls")
 | 
			
		||||
  public List<String> getPhotoUrls() {
 | 
			
		||||
    return photoUrls;
 | 
			
		||||
  }
 | 
			
		||||
  public void setPhotoUrls(List<String> photoUrls) {
 | 
			
		||||
    this.photoUrls = photoUrls;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("tags")
 | 
			
		||||
  public List<Tag> getTags() {
 | 
			
		||||
    return tags;
 | 
			
		||||
  }
 | 
			
		||||
  public void setTags(List<Tag> tags) {
 | 
			
		||||
    this.tags = tags;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   * pet status in the store
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "pet status in the store")
 | 
			
		||||
  @JsonProperty("status")
 | 
			
		||||
  public StatusEnum getStatus() {
 | 
			
		||||
    return status;
 | 
			
		||||
  }
 | 
			
		||||
  public void setStatus(StatusEnum status) {
 | 
			
		||||
    this.status = status;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
  public String toString()  {
 | 
			
		||||
    StringBuilder sb = new StringBuilder();
 | 
			
		||||
    sb.append("class Pet {\n");
 | 
			
		||||
    
 | 
			
		||||
    sb.append("  id: ").append(id).append("\n");
 | 
			
		||||
    sb.append("  category: ").append(category).append("\n");
 | 
			
		||||
    sb.append("  name: ").append(name).append("\n");
 | 
			
		||||
    sb.append("  photoUrls: ").append(photoUrls).append("\n");
 | 
			
		||||
    sb.append("  tags: ").append(tags).append("\n");
 | 
			
		||||
    sb.append("  status: ").append(status).append("\n");
 | 
			
		||||
    sb.append("}\n");
 | 
			
		||||
    return sb.toString();
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,50 @@
 | 
			
		||||
package io.swagger.model;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
import com.wordnik.swagger.annotations.*;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonProperty;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ApiModel(description = "")
 | 
			
		||||
public class Tag  {
 | 
			
		||||
  
 | 
			
		||||
  private Long id = null;
 | 
			
		||||
  private String name = null;
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("id")
 | 
			
		||||
  public Long getId() {
 | 
			
		||||
    return id;
 | 
			
		||||
  }
 | 
			
		||||
  public void setId(Long id) {
 | 
			
		||||
    this.id = id;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("name")
 | 
			
		||||
  public String getName() {
 | 
			
		||||
    return name;
 | 
			
		||||
  }
 | 
			
		||||
  public void setName(String name) {
 | 
			
		||||
    this.name = name;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
  public String toString()  {
 | 
			
		||||
    StringBuilder sb = new StringBuilder();
 | 
			
		||||
    sb.append("class Tag {\n");
 | 
			
		||||
    
 | 
			
		||||
    sb.append("  id: ").append(id).append("\n");
 | 
			
		||||
    sb.append("  name: ").append(name).append("\n");
 | 
			
		||||
    sb.append("}\n");
 | 
			
		||||
    return sb.toString();
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,135 @@
 | 
			
		||||
package io.swagger.model;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
import com.wordnik.swagger.annotations.*;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonProperty;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ApiModel(description = "")
 | 
			
		||||
public class User  {
 | 
			
		||||
  
 | 
			
		||||
  private Long id = null;
 | 
			
		||||
  private String username = null;
 | 
			
		||||
  private String firstName = null;
 | 
			
		||||
  private String lastName = null;
 | 
			
		||||
  private String email = null;
 | 
			
		||||
  private String password = null;
 | 
			
		||||
  private String phone = null;
 | 
			
		||||
  private Integer userStatus = null;
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("id")
 | 
			
		||||
  public Long getId() {
 | 
			
		||||
    return id;
 | 
			
		||||
  }
 | 
			
		||||
  public void setId(Long id) {
 | 
			
		||||
    this.id = id;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("username")
 | 
			
		||||
  public String getUsername() {
 | 
			
		||||
    return username;
 | 
			
		||||
  }
 | 
			
		||||
  public void setUsername(String username) {
 | 
			
		||||
    this.username = username;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("firstName")
 | 
			
		||||
  public String getFirstName() {
 | 
			
		||||
    return firstName;
 | 
			
		||||
  }
 | 
			
		||||
  public void setFirstName(String firstName) {
 | 
			
		||||
    this.firstName = firstName;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("lastName")
 | 
			
		||||
  public String getLastName() {
 | 
			
		||||
    return lastName;
 | 
			
		||||
  }
 | 
			
		||||
  public void setLastName(String lastName) {
 | 
			
		||||
    this.lastName = lastName;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("email")
 | 
			
		||||
  public String getEmail() {
 | 
			
		||||
    return email;
 | 
			
		||||
  }
 | 
			
		||||
  public void setEmail(String email) {
 | 
			
		||||
    this.email = email;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("password")
 | 
			
		||||
  public String getPassword() {
 | 
			
		||||
    return password;
 | 
			
		||||
  }
 | 
			
		||||
  public void setPassword(String password) {
 | 
			
		||||
    this.password = password;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "")
 | 
			
		||||
  @JsonProperty("phone")
 | 
			
		||||
  public String getPhone() {
 | 
			
		||||
    return phone;
 | 
			
		||||
  }
 | 
			
		||||
  public void setPhone(String phone) {
 | 
			
		||||
    this.phone = phone;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
  /**
 | 
			
		||||
   * User Status
 | 
			
		||||
   **/
 | 
			
		||||
  @ApiModelProperty(value = "User Status")
 | 
			
		||||
  @JsonProperty("userStatus")
 | 
			
		||||
  public Integer getUserStatus() {
 | 
			
		||||
    return userStatus;
 | 
			
		||||
  }
 | 
			
		||||
  public void setUserStatus(Integer userStatus) {
 | 
			
		||||
    this.userStatus = userStatus;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
  public String toString()  {
 | 
			
		||||
    StringBuilder sb = new StringBuilder();
 | 
			
		||||
    sb.append("class User {\n");
 | 
			
		||||
    
 | 
			
		||||
    sb.append("  id: ").append(id).append("\n");
 | 
			
		||||
    sb.append("  username: ").append(username).append("\n");
 | 
			
		||||
    sb.append("  firstName: ").append(firstName).append("\n");
 | 
			
		||||
    sb.append("  lastName: ").append(lastName).append("\n");
 | 
			
		||||
    sb.append("  email: ").append(email).append("\n");
 | 
			
		||||
    sb.append("  password: ").append(password).append("\n");
 | 
			
		||||
    sb.append("  phone: ").append(phone).append("\n");
 | 
			
		||||
    sb.append("  userStatus: ").append(userStatus).append("\n");
 | 
			
		||||
    sb.append("}\n");
 | 
			
		||||
    return sb.toString();
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1 @@
 | 
			
		||||
springfox.documentation.swagger.v2.path=/swagger.json
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user