├── settings.gradle
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── .gitignore
├── src
└── main
│ ├── resources
│ ├── swagger-ui
│ │ └── dist
│ │ │ ├── images
│ │ │ ├── expand.gif
│ │ │ ├── favicon.ico
│ │ │ ├── collapse.gif
│ │ │ ├── logo_small.png
│ │ │ ├── throbber.gif
│ │ │ ├── wordnik_api.png
│ │ │ ├── explorer_icons.png
│ │ │ ├── favicon-16x16.png
│ │ │ ├── favicon-32x32.png
│ │ │ └── pet_store_api.png
│ │ │ ├── fonts
│ │ │ ├── DroidSans.ttf
│ │ │ └── DroidSans-Bold.ttf
│ │ │ ├── lib
│ │ │ ├── jquery.slideto.min.js
│ │ │ ├── jquery.wiggle.min.js
│ │ │ ├── jquery.ba-bbq.min.js
│ │ │ ├── highlight.7.3.pack.js
│ │ │ ├── swagger-oauth.js
│ │ │ ├── underscore-min.js
│ │ │ ├── backbone-min.js
│ │ │ ├── underscore-min.map
│ │ │ └── marked.js
│ │ │ ├── css
│ │ │ ├── typography.css
│ │ │ ├── reset.css
│ │ │ └── style.css
│ │ │ ├── o2c.html
│ │ │ ├── lang
│ │ │ ├── translator.js
│ │ │ ├── zh-cn.js
│ │ │ ├── ja.js
│ │ │ ├── tr.js
│ │ │ ├── pl.js
│ │ │ ├── pt.js
│ │ │ ├── en.js
│ │ │ ├── ru.js
│ │ │ ├── es.js
│ │ │ ├── fr.js
│ │ │ └── it.js
│ │ │ └── index.html
│ ├── application.properties
│ ├── static
│ │ └── index.html
│ └── schema.sql
│ └── java
│ └── com
│ └── techietester
│ ├── app
│ ├── App.java
│ ├── WebConfig.java
│ └── AppResourceConfig.java
│ ├── model
│ └── VideoGame.java
│ └── resource
│ └── VideoGameResource.java
├── README.md
├── gradlew.bat
├── pom.xml
└── gradlew
/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'video-game-database'
2 |
3 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .classpath
2 | .project
3 | .gradle
4 | .idea
5 | .settings
6 | .DS_Store
7 | .cache
8 | *.iml
9 | gen_java
10 | build
11 | bin
12 | target
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/expand.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/expand.gif
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/favicon.ico
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/fonts/DroidSans.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/fonts/DroidSans.ttf
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/collapse.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/collapse.gif
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/logo_small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/logo_small.png
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/throbber.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/throbber.gif
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/wordnik_api.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/wordnik_api.png
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/fonts/DroidSans-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/fonts/DroidSans-Bold.ttf
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/explorer_icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/explorer_icons.png
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/favicon-16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/favicon-16x16.png
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/favicon-32x32.png
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/images/pet_store_api.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/james-willett/VideoGameDB/HEAD/src/main/resources/swagger-ui/dist/images/pet_store_api.png
--------------------------------------------------------------------------------
/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | logging.level.org.springframework=DEBUG
2 | spring.jersey.type=filter
3 | #multipart.maxFileSize=-1
4 | version=1.2
5 | server.port = 8080
6 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Oct 07 09:06:59 BST 2019
2 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip
3 | distributionBase=GRADLE_USER_HOME
4 | distributionPath=wrapper/dists
5 | zipStorePath=wrapper/dists
6 | zipStoreBase=GRADLE_USER_HOME
7 |
--------------------------------------------------------------------------------
/src/main/resources/static/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Welcome to Jersey (JAX-RS 2.0) examples project
4 |
5 |
6 | Welcome to Jersey (JAX-RS 2.0) examples project
7 | List of useful link
8 |
9 | - Test form data handling in jersey
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lib/jquery.slideto.min.js:
--------------------------------------------------------------------------------
1 | (function(b){b.fn.slideto=function(a){a=b.extend({slide_duration:"slow",highlight_duration:3E3,highlight:true,highlight_color:"#FFFF99"},a);return this.each(function(){obj=b(this);b("body").animate({scrollTop:obj.offset().top},a.slide_duration,function(){a.highlight&&b.ui.version&&obj.effect("highlight",{color:a.highlight_color},a.highlight_duration)})})}})(jQuery);
2 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/css/typography.css:
--------------------------------------------------------------------------------
1 | /* Google Font's Droid Sans */
2 | @font-face {
3 | font-family: 'Droid Sans';
4 | font-style: normal;
5 | font-weight: 400;
6 | src: local('Droid Sans'), local('DroidSans'), url('../fonts/DroidSans.ttf') format('truetype');
7 | }
8 | /* Google Font's Droid Sans Bold */
9 | @font-face {
10 | font-family: 'Droid Sans';
11 | font-style: normal;
12 | font-weight: 700;
13 | src: local('Droid Sans Bold'), local('DroidSans-Bold'), url('../fonts/DroidSans-Bold.ttf') format('truetype');
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/o2c.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/main/java/com/techietester/app/App.java:
--------------------------------------------------------------------------------
1 | package com.techietester.app;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 | import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
6 | import org.springframework.context.annotation.ComponentScan;
7 |
8 | @SpringBootApplication
9 | @ComponentScan(basePackages = { "com.techietester.app", "com.techietester.config"})
10 | public class App extends SpringBootServletInitializer {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(App.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # VideoGameDB
2 | Video Game Database application with API endpoints that support **JSON** and **XML**
3 |
4 | This application was developed to support my Udemy courses:
5 |
6 | - [REST Assured Fundamentals](https://www.udemy.com/course/rest-assured-fundamentals/)
7 | - [Gatling Fundamentals for Stress, Load & Performance Testing](https://www.udemy.com/course/gatling-fundamentals/)
8 |
9 | # Usage
10 | To run the application from the command line, you have two options:
11 |
12 | - **Gradle** - `./gradlew bootRun`
13 | - **Maven** - `mvn spring-boot:run`
14 |
15 | When the application is running, open a browser and go to [http://localhost:8080/swagger-ui/index.html#/](http://localhost:8080/swagger-ui/index.html#/) to explore the API endpoints
16 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lib/jquery.wiggle.min.js:
--------------------------------------------------------------------------------
1 | /*
2 | jQuery Wiggle
3 | Author: WonderGroup, Jordan Thomas
4 | URL: http://labs.wondergroup.com/demos/mini-ui/index.html
5 | License: MIT (http://en.wikipedia.org/wiki/MIT_License)
6 | */
7 | jQuery.fn.wiggle=function(o){var d={speed:50,wiggles:3,travel:5,callback:null};var o=jQuery.extend(d,o);return this.each(function(){var cache=this;var wrap=jQuery(this).wrap('').css("position","relative");var calls=0;for(i=1;i<=o.wiggles;i++){jQuery(this).animate({left:"-="+o.travel},o.speed).animate({left:"+="+o.travel*2},o.speed*2).animate({left:"-="+o.travel},o.speed,function(){calls++;if(jQuery(cache).parent().hasClass('wiggle-wrap')){jQuery(cache).parent().replaceWith(cache);}
8 | if(calls==o.wiggles&&jQuery.isFunction(o.callback)){o.callback();}});}});};
--------------------------------------------------------------------------------
/src/main/resources/schema.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE VIDEOGAME
2 | (ID INT PRIMARY KEY,
3 | NAME VARCHAR(100) DEFAULT '',
4 | RELEASED_ON DATETIME,
5 | REVIEW_SCORE INT,
6 | CATEGORY VARCHAR(100),
7 | RATING VARCHAR(100));
8 |
9 |
10 | insert into VIDEOGAME values (1, 'Resident Evil 4', '2005-10-01 23:59:59', 85, 'Shooter', 'Universal');
11 | insert into VIDEOGAME values (2, 'Gran Turismo 3', '2001-03-10 23:59:59', 91, 'Driving', 'Universal');
12 | insert into VIDEOGAME values (3, 'Tetris', '1984-06-25 23:59:59', 88, 'Puzzle', 'Universal');
13 | insert into VIDEOGAME values (4, 'Super Mario 64', '1996-10-20 23:59:59', 90, 'Platform', 'Universal');
14 | insert into VIDEOGAME values (5, 'The Legend of Zelda: Ocarina of Time', '1998-12-10 23:59:59', 93, 'Adventure', 'PG-13');
15 | insert into VIDEOGAME values (6, 'Doom', '1993-02-18 23:59:59', 81, 'Shooter', 'Mature');
16 | insert into VIDEOGAME values (7, 'Minecraft', '2011-12-05 23:59:59', 77, 'Puzzle', 'Universal');
17 | insert into VIDEOGAME values (8, 'SimCity 2000', '1994-09-11 23:59:59', 88, 'Strategy', 'Universal');
18 | insert into VIDEOGAME values (9, 'Final Fantasy VII', '1997-08-20 23:59:59', 97, 'RPG', 'PG-13');
19 | insert into VIDEOGAME values (10, 'Grand Theft Auto III', '2001-04-23 23:59:59', 90, 'Driving', 'Mature');
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/src/main/java/com/techietester/app/WebConfig.java:
--------------------------------------------------------------------------------
1 | package com.techietester.app;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.web.servlet.config.annotation.EnableWebMvc;
5 | import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
6 | import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
7 | import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
8 |
9 | @Configuration
10 | @EnableWebMvc
11 | public class WebConfig extends WebMvcConfigurerAdapter {
12 |
13 | @Override
14 | public void addResourceHandlers(ResourceHandlerRegistry registry) {
15 | registry.addResourceHandler("/swagger-ui/**").addResourceLocations("classpath:/swagger-ui/dist/");
16 | registry.addResourceHandler("/**").addResourceLocations(CLASSPATH_RESOURCE_LOCATIONS);
17 | }
18 |
19 | private static final String[] CLASSPATH_RESOURCE_LOCATIONS = {
20 | "classpath:/META-INF/resources/",
21 | "classpath:/resources/",
22 | "classpath:/static/",
23 | "classpath:/public/" };
24 |
25 |
26 | @Override
27 | public void addViewControllers(ViewControllerRegistry registry) {
28 | registry.addRedirectViewController("/", "/index.html");
29 | }
30 |
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/src/main/java/com/techietester/model/VideoGame.java:
--------------------------------------------------------------------------------
1 | package com.techietester.model;
2 |
3 | import javax.xml.bind.annotation.XmlAttribute;
4 | import javax.xml.bind.annotation.XmlRootElement;
5 | import java.util.Date;
6 | import java.util.List;
7 |
8 | @XmlRootElement
9 | public class VideoGame {
10 |
11 | private int id;
12 | private String name;
13 | private Date releaseDate;
14 | private int reviewScore;
15 | private String category;
16 | private String rating;
17 |
18 | public int getId() {
19 | return id;
20 | }
21 |
22 | public void setId(int id) {
23 | this.id = id;
24 | }
25 |
26 | public String getName() {
27 | return name;
28 | }
29 |
30 | public void setName(String name) {
31 | this.name = name;
32 | }
33 |
34 | public Date getReleaseDate() {
35 | return releaseDate;
36 | }
37 |
38 | public void setReleaseDate(Date releaseDate) {
39 | this.releaseDate = releaseDate;
40 | }
41 |
42 | public int getReviewScore() {
43 | return reviewScore;
44 | }
45 |
46 | public void setReviewScore(int reviewScore) {
47 | this.reviewScore = reviewScore;
48 | }
49 |
50 | @XmlAttribute
51 | public String getCategory() { return category; }
52 |
53 | public void setCategory(String category) { this.category = category; }
54 |
55 | @XmlAttribute
56 | public String getRating() { return rating; }
57 |
58 | public void setRating(String rating) { this.rating = rating; }
59 |
60 |
61 | }
62 |
--------------------------------------------------------------------------------
/src/main/java/com/techietester/app/AppResourceConfig.java:
--------------------------------------------------------------------------------
1 | package com.techietester.app;
2 |
3 | import com.techietester.resource.VideoGameResource;
4 | import io.swagger.jaxrs.config.BeanConfig;
5 | import io.swagger.jaxrs.listing.ApiListingResource;
6 | import org.glassfish.jersey.server.ResourceConfig;
7 | import org.springframework.stereotype.Component;
8 |
9 | import javax.ws.rs.ApplicationPath;
10 | import javax.ws.rs.core.MediaType;
11 |
12 | @Component
13 | @ApplicationPath("/app")
14 | public class AppResourceConfig extends ResourceConfig {
15 |
16 | public AppResourceConfig() {
17 |
18 | packages("in.techietester.resource", "in.techietester.app");
19 | register(VideoGameResource.class);
20 |
21 | configureSwagger();
22 | }
23 |
24 | private void configureSwagger() {
25 | register(ApiListingResource.class);
26 | BeanConfig beanConfig = new BeanConfig();
27 | beanConfig.setVersion("1.0.0");
28 | beanConfig.setSchemes(new String[] { "http", "https" });
29 | beanConfig.setBasePath("/app");
30 | beanConfig.setTitle("Video Game Database - Test Application");
31 | beanConfig.setDescription("https://github.com/TechieTester/VideoGameDB");
32 | beanConfig.getSwagger().addConsumes(MediaType.APPLICATION_JSON);
33 | beanConfig.getSwagger().addProduces(MediaType.APPLICATION_JSON);
34 | beanConfig.setContact("James Willett");
35 | beanConfig.setResourcePackage("com.techietester.resource");
36 | beanConfig.setPrettyPrint(false);
37 | beanConfig.setScan();
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/translator.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /**
4 | * Translator for documentation pages.
5 | *
6 | * To enable translation you should include one of language-files in your index.html
7 | * after .
8 | * For example -
9 | *
10 | * If you wish to translate some new texsts you should do two things:
11 | * 1. Add a new phrase pair ("New Phrase": "New Translation") into your language file (for example lang/ru.js). It will be great if you add it in other language files too.
12 | * 2. Mark that text it templates this way New Phrase or .
13 | * The main thing here is attribute data-sw-translate. Only inner html, title-attribute and value-attribute are going to translate.
14 | *
15 | */
16 | window.SwaggerTranslator = {
17 |
18 | _words:[],
19 |
20 | translate: function(sel) {
21 | var $this = this;
22 | sel = sel || '[data-sw-translate]';
23 |
24 | $(sel).each(function() {
25 | $(this).html($this._tryTranslate($(this).html()));
26 |
27 | $(this).val($this._tryTranslate($(this).val()));
28 | $(this).attr('title', $this._tryTranslate($(this).attr('title')));
29 | });
30 | },
31 |
32 | _tryTranslate: function(word) {
33 | return this._words[$.trim(word)] !== undefined ? this._words[$.trim(word)] : word;
34 | },
35 |
36 | learn: function(wordsMap) {
37 | this._words = wordsMap;
38 | }
39 | };
40 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/css/reset.css:
--------------------------------------------------------------------------------
1 | /* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 */
2 | html,
3 | body,
4 | div,
5 | span,
6 | applet,
7 | object,
8 | iframe,
9 | h1,
10 | h2,
11 | h3,
12 | h4,
13 | h5,
14 | h6,
15 | p,
16 | blockquote,
17 | pre,
18 | a,
19 | abbr,
20 | acronym,
21 | address,
22 | big,
23 | cite,
24 | code,
25 | del,
26 | dfn,
27 | em,
28 | img,
29 | ins,
30 | kbd,
31 | q,
32 | s,
33 | samp,
34 | small,
35 | strike,
36 | strong,
37 | sub,
38 | sup,
39 | tt,
40 | var,
41 | b,
42 | u,
43 | i,
44 | center,
45 | dl,
46 | dt,
47 | dd,
48 | ol,
49 | ul,
50 | li,
51 | fieldset,
52 | form,
53 | label,
54 | legend,
55 | table,
56 | caption,
57 | tbody,
58 | tfoot,
59 | thead,
60 | tr,
61 | th,
62 | td,
63 | article,
64 | aside,
65 | canvas,
66 | details,
67 | embed,
68 | figure,
69 | figcaption,
70 | footer,
71 | header,
72 | hgroup,
73 | menu,
74 | nav,
75 | output,
76 | ruby,
77 | section,
78 | summary,
79 | time,
80 | mark,
81 | audio,
82 | video {
83 | margin: 0;
84 | padding: 0;
85 | border: 0;
86 | font-size: 100%;
87 | font: inherit;
88 | vertical-align: baseline;
89 | }
90 | /* HTML5 display-role reset for older browsers */
91 | article,
92 | aside,
93 | details,
94 | figcaption,
95 | figure,
96 | footer,
97 | header,
98 | hgroup,
99 | menu,
100 | nav,
101 | section {
102 | display: block;
103 | }
104 | body {
105 | line-height: 1;
106 | }
107 | ol,
108 | ul {
109 | list-style: none;
110 | }
111 | blockquote,
112 | q {
113 | quotes: none;
114 | }
115 | blockquote:before,
116 | blockquote:after,
117 | q:before,
118 | q:after {
119 | content: '';
120 | content: none;
121 | }
122 | table {
123 | border-collapse: collapse;
124 | border-spacing: 0;
125 | }
126 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/zh-cn.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"警告:已过时",
6 | "Implementation Notes":"实现备注",
7 | "Response Class":"响应类",
8 | "Status":"状态",
9 | "Parameters":"参数",
10 | "Parameter":"参数",
11 | "Value":"值",
12 | "Description":"描述",
13 | "Parameter Type":"参数类型",
14 | "Data Type":"数据类型",
15 | "Response Messages":"响应消息",
16 | "HTTP Status Code":"HTTP状态码",
17 | "Reason":"原因",
18 | "Response Model":"响应模型",
19 | "Request URL":"请求URL",
20 | "Response Body":"响应体",
21 | "Response Code":"响应码",
22 | "Response Headers":"响应头",
23 | "Hide Response":"隐藏响应",
24 | "Headers":"头",
25 | "Try it out!":"试一下!",
26 | "Show/Hide":"显示/隐藏",
27 | "List Operations":"显示操作",
28 | "Expand Operations":"展开操作",
29 | "Raw":"原始",
30 | "can't parse JSON. Raw result":"无法解析JSON. 原始结果",
31 | "Model Schema":"模型架构",
32 | "Model":"模型",
33 | "apply":"应用",
34 | "Username":"用户名",
35 | "Password":"密码",
36 | "Terms of service":"服务条款",
37 | "Created by":"创建者",
38 | "See more at":"查看更多:",
39 | "Contact the developer":"联系开发者",
40 | "api version":"api版本",
41 | "Response Content Type":"响应Content Type",
42 | "fetching resource":"正在获取资源",
43 | "fetching resource list":"正在获取资源列表",
44 | "Explore":"浏览",
45 | "Show Swagger Petstore Example Apis":"显示 Swagger Petstore 示例 Apis",
46 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"无法从服务器读取。可能没有正确设置access-control-origin。",
47 | "Please specify the protocol for":"请指定协议:",
48 | "Can't read swagger JSON from":"无法读取swagger JSON于",
49 | "Finished Loading Resource Information. Rendering Swagger UI":"已加载资源信息。正在渲染Swagger UI",
50 | "Unable to read api":"无法读取api",
51 | "from path":"从路径",
52 | "server returned":"服务器返回"
53 | });
54 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/ja.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"警告: 廃止予定",
6 | "Implementation Notes":"実装メモ",
7 | "Response Class":"レスポンスクラス",
8 | "Status":"ステータス",
9 | "Parameters":"パラメータ群",
10 | "Parameter":"パラメータ",
11 | "Value":"値",
12 | "Description":"説明",
13 | "Parameter Type":"パラメータタイプ",
14 | "Data Type":"データタイプ",
15 | "Response Messages":"レスポンスメッセージ",
16 | "HTTP Status Code":"HTTPステータスコード",
17 | "Reason":"理由",
18 | "Response Model":"レスポンスモデル",
19 | "Request URL":"リクエストURL",
20 | "Response Body":"レスポンスボディ",
21 | "Response Code":"レスポンスコード",
22 | "Response Headers":"レスポンスヘッダ",
23 | "Hide Response":"レスポンスを隠す",
24 | "Headers":"ヘッダ",
25 | "Try it out!":"実際に実行!",
26 | "Show/Hide":"表示/非表示",
27 | "List Operations":"操作一覧",
28 | "Expand Operations":"操作の展開",
29 | "Raw":"Raw",
30 | "can't parse JSON. Raw result":"JSONへ解釈できません. 未加工の結果",
31 | "Model Schema":"モデルスキーマ",
32 | "Model":"モデル",
33 | "apply":"実行",
34 | "Username":"ユーザ名",
35 | "Password":"パスワード",
36 | "Terms of service":"サービス利用規約",
37 | "Created by":"Created by",
38 | "See more at":"See more at",
39 | "Contact the developer":"開発者に連絡",
40 | "api version":"APIバージョン",
41 | "Response Content Type":"レスポンス コンテンツタイプ",
42 | "fetching resource":"リソースの取得",
43 | "fetching resource list":"リソース一覧の取得",
44 | "Explore":"Explore",
45 | "Show Swagger Petstore Example Apis":"SwaggerペットストアAPIの表示",
46 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"サーバから読み込めません. 適切なaccess-control-origin設定を持っていない可能性があります.",
47 | "Please specify the protocol for":"プロトコルを指定してください",
48 | "Can't read swagger JSON from":"次からswagger JSONを読み込めません",
49 | "Finished Loading Resource Information. Rendering Swagger UI":"リソース情報の読み込みが完了しました. Swagger UIを描画しています",
50 | "Unable to read api":"APIを読み込めません",
51 | "from path":"次のパスから",
52 | "server returned":"サーバからの返答"
53 | });
54 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/tr.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"Uyarı: Deprecated",
6 | "Implementation Notes":"Gerçekleştirim Notları",
7 | "Response Class":"Dönen Sınıf",
8 | "Status":"Statü",
9 | "Parameters":"Parametreler",
10 | "Parameter":"Parametre",
11 | "Value":"Değer",
12 | "Description":"Açıklama",
13 | "Parameter Type":"Parametre Tipi",
14 | "Data Type":"Veri Tipi",
15 | "Response Messages":"Dönüş Mesajı",
16 | "HTTP Status Code":"HTTP Statü Kodu",
17 | "Reason":"Gerekçe",
18 | "Response Model":"Dönüş Modeli",
19 | "Request URL":"İstek URL",
20 | "Response Body":"Dönüş İçeriği",
21 | "Response Code":"Dönüş Kodu",
22 | "Response Headers":"Dönüş Üst Bilgileri",
23 | "Hide Response":"Dönüşü Gizle",
24 | "Headers":"Üst Bilgiler",
25 | "Try it out!":"Dene!",
26 | "Show/Hide":"Göster/Gizle",
27 | "List Operations":"Operasyonları Listele",
28 | "Expand Operations":"Operasyonları Aç",
29 | "Raw":"Ham",
30 | "can't parse JSON. Raw result":"JSON çözümlenemiyor. Ham sonuç",
31 | "Model Schema":"Model Şema",
32 | "Model":"Model",
33 | "apply":"uygula",
34 | "Username":"Kullanıcı Adı",
35 | "Password":"Parola",
36 | "Terms of service":"Servis şartları",
37 | "Created by":"Oluşturan",
38 | "See more at":"Daha fazlası için",
39 | "Contact the developer":"Geliştirici ile İletişime Geçin",
40 | "api version":"api versiyon",
41 | "Response Content Type":"Dönüş İçerik Tipi",
42 | "fetching resource":"kaynak getiriliyor",
43 | "fetching resource list":"kaynak listesi getiriliyor",
44 | "Explore":"Keşfet",
45 | "Show Swagger Petstore Example Apis":"Swagger Petstore Örnek Api'yi Gör",
46 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"Sunucudan okuma yapılamıyor. Sunucu access-control-origin ayarlarınızı kontrol edin.",
47 | "Please specify the protocol for":"Lütfen istenen adres için protokol belirtiniz",
48 | "Can't read swagger JSON from":"Swagger JSON bu kaynaktan okunamıyor",
49 | "Finished Loading Resource Information. Rendering Swagger UI":"Kaynak baglantısı tamamlandı. Swagger UI gösterime hazırlanıyor",
50 | "Unable to read api":"api okunamadı",
51 | "from path":"yoldan",
52 | "server returned":"sunucuya dönüldü"
53 | });
54 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/pl.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"Uwaga: Wycofane",
6 | "Implementation Notes":"Uwagi Implementacji",
7 | "Response Class":"Klasa Odpowiedzi",
8 | "Status":"Status",
9 | "Parameters":"Parametry",
10 | "Parameter":"Parametr",
11 | "Value":"Wartość",
12 | "Description":"Opis",
13 | "Parameter Type":"Typ Parametru",
14 | "Data Type":"Typ Danych",
15 | "Response Messages":"Wiadomości Odpowiedzi",
16 | "HTTP Status Code":"Kod Statusu HTTP",
17 | "Reason":"Przyczyna",
18 | "Response Model":"Model Odpowiedzi",
19 | "Request URL":"URL Wywołania",
20 | "Response Body":"Treść Odpowiedzi",
21 | "Response Code":"Kod Odpowiedzi",
22 | "Response Headers":"Nagłówki Odpowiedzi",
23 | "Hide Response":"Ukryj Odpowiedź",
24 | "Headers":"Nagłówki",
25 | "Try it out!":"Wypróbuj!",
26 | "Show/Hide":"Pokaż/Ukryj",
27 | "List Operations":"Lista Operacji",
28 | "Expand Operations":"Rozwiń Operacje",
29 | "Raw":"Nieprzetworzone",
30 | "can't parse JSON. Raw result":"nie można przetworzyć pliku JSON. Nieprzetworzone dane",
31 | "Model Schema":"Schemat Modelu",
32 | "Model":"Model",
33 | "apply":"użyj",
34 | "Username":"Nazwa użytkownika",
35 | "Password":"Hasło",
36 | "Terms of service":"Warunki używania",
37 | "Created by":"Utworzone przez",
38 | "See more at":"Zobacz więcej na",
39 | "Contact the developer":"Kontakt z deweloperem",
40 | "api version":"wersja api",
41 | "Response Content Type":"Typ Zasobu Odpowiedzi",
42 | "fetching resource":"ładowanie zasobu",
43 | "fetching resource list":"ładowanie listy zasobów",
44 | "Explore":"Eksploruj",
45 | "Show Swagger Petstore Example Apis":"Pokaż Przykładowe Api Swagger Petstore",
46 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"Brak połączenia z serwerem. Może on nie mieć odpowiednich ustawień access-control-origin.",
47 | "Please specify the protocol for":"Proszę podać protokół dla",
48 | "Can't read swagger JSON from":"Nie można odczytać swagger JSON z",
49 | "Finished Loading Resource Information. Rendering Swagger UI":"Ukończono Ładowanie Informacji o Zasobie. Renderowanie Swagger UI",
50 | "Unable to read api":"Nie można odczytać api",
51 | "from path":"ze ścieżki",
52 | "server returned":"serwer zwrócił"
53 | });
54 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/pt.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"Aviso: Depreciado",
6 | "Implementation Notes":"Notas de Implementação",
7 | "Response Class":"Classe de resposta",
8 | "Status":"Status",
9 | "Parameters":"Parâmetros",
10 | "Parameter":"Parâmetro",
11 | "Value":"Valor",
12 | "Description":"Descrição",
13 | "Parameter Type":"Tipo de parâmetro",
14 | "Data Type":"Tipo de dados",
15 | "Response Messages":"Mensagens de resposta",
16 | "HTTP Status Code":"Código de status HTTP",
17 | "Reason":"Razão",
18 | "Response Model":"Modelo resposta",
19 | "Request URL":"URL requisição",
20 | "Response Body":"Corpo da resposta",
21 | "Response Code":"Código da resposta",
22 | "Response Headers":"Cabeçalho da resposta",
23 | "Headers":"Cabeçalhos",
24 | "Hide Response":"Esconder resposta",
25 | "Try it out!":"Tente agora!",
26 | "Show/Hide":"Mostrar/Esconder",
27 | "List Operations":"Listar operações",
28 | "Expand Operations":"Expandir operações",
29 | "Raw":"Cru",
30 | "can't parse JSON. Raw result":"Falha ao analisar JSON. Resulto cru",
31 | "Model Schema":"Modelo esquema",
32 | "Model":"Modelo",
33 | "apply":"Aplicar",
34 | "Username":"Usuário",
35 | "Password":"Senha",
36 | "Terms of service":"Termos do serviço",
37 | "Created by":"Criado por",
38 | "See more at":"Veja mais em",
39 | "Contact the developer":"Contate o desenvolvedor",
40 | "api version":"Versão api",
41 | "Response Content Type":"Tipo de conteúdo da resposta",
42 | "fetching resource":"busca recurso",
43 | "fetching resource list":"buscando lista de recursos",
44 | "Explore":"Explorar",
45 | "Show Swagger Petstore Example Apis":"Show Swagger Petstore Example Apis",
46 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"Não é possível ler do servidor. Pode não ter as apropriadas configurações access-control-origin",
47 | "Please specify the protocol for":"Por favor especifique o protocolo",
48 | "Can't read swagger JSON from":"Não é possível ler o JSON Swagger de",
49 | "Finished Loading Resource Information. Rendering Swagger UI":"Carregar informação de recurso finalizada. Renderizando Swagger UI",
50 | "Unable to read api":"Não foi possível ler api",
51 | "from path":"do caminho",
52 | "server returned":"servidor retornou"
53 | });
54 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/en.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"Warning: Deprecated",
6 | "Implementation Notes":"Implementation Notes",
7 | "Response Class":"Response Class",
8 | "Status":"Status",
9 | "Parameters":"Parameters",
10 | "Parameter":"Parameter",
11 | "Value":"Value",
12 | "Description":"Description",
13 | "Parameter Type":"Parameter Type",
14 | "Data Type":"Data Type",
15 | "Response Messages":"Response Messages",
16 | "HTTP Status Code":"HTTP Status Code",
17 | "Reason":"Reason",
18 | "Response Model":"Response Model",
19 | "Request URL":"Request URL",
20 | "Response Body":"Response Body",
21 | "Response Code":"Response Code",
22 | "Response Headers":"Response Headers",
23 | "Hide Response":"Hide Response",
24 | "Headers":"Headers",
25 | "Try it out!":"Try it out!",
26 | "Show/Hide":"Show/Hide",
27 | "List Operations":"List Operations",
28 | "Expand Operations":"Expand Operations",
29 | "Raw":"Raw",
30 | "can't parse JSON. Raw result":"can't parse JSON. Raw result",
31 | "Model Schema":"Model Schema",
32 | "Model":"Model",
33 | "Click to set as parameter value":"Click to set as parameter value",
34 | "apply":"apply",
35 | "Username":"Username",
36 | "Password":"Password",
37 | "Terms of service":"Terms of service",
38 | "Created by":"Created by",
39 | "See more at":"See more at",
40 | "Contact the developer":"Contact the developer",
41 | "api version":"api version",
42 | "Response Content Type":"Response Content Type",
43 | "Parameter content type:":"Parameter content type:",
44 | "fetching resource":"fetching resource",
45 | "fetching resource list":"fetching resource list",
46 | "Explore":"Explore",
47 | "Show Swagger Petstore Example Apis":"Show Swagger Petstore Example Apis",
48 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"Can't read from server. It may not have the appropriate access-control-origin settings.",
49 | "Please specify the protocol for":"Please specify the protocol for",
50 | "Can't read swagger JSON from":"Can't read swagger JSON from",
51 | "Finished Loading Resource Information. Rendering Swagger UI":"Finished Loading Resource Information. Rendering Swagger UI",
52 | "Unable to read api":"Unable to read api",
53 | "from path":"from path",
54 | "server returned":"server returned"
55 | });
56 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/ru.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"Предупреждение: Устарело",
6 | "Implementation Notes":"Заметки",
7 | "Response Class":"Пример ответа",
8 | "Status":"Статус",
9 | "Parameters":"Параметры",
10 | "Parameter":"Параметр",
11 | "Value":"Значение",
12 | "Description":"Описание",
13 | "Parameter Type":"Тип параметра",
14 | "Data Type":"Тип данных",
15 | "HTTP Status Code":"HTTP код",
16 | "Reason":"Причина",
17 | "Response Model":"Структура ответа",
18 | "Request URL":"URL запроса",
19 | "Response Body":"Тело ответа",
20 | "Response Code":"HTTP код ответа",
21 | "Response Headers":"Заголовки ответа",
22 | "Hide Response":"Спрятать ответ",
23 | "Headers":"Заголовки",
24 | "Response Messages":"Что может прийти в ответ",
25 | "Try it out!":"Попробовать!",
26 | "Show/Hide":"Показать/Скрыть",
27 | "List Operations":"Операции кратко",
28 | "Expand Operations":"Операции подробно",
29 | "Raw":"В сыром виде",
30 | "can't parse JSON. Raw result":"Не удается распарсить ответ:",
31 | "Model Schema":"Структура",
32 | "Model":"Описание",
33 | "Click to set as parameter value":"Нажмите, чтобы испльзовать в качестве значения параметра",
34 | "apply":"применить",
35 | "Username":"Имя пользователя",
36 | "Password":"Пароль",
37 | "Terms of service":"Условия использования",
38 | "Created by":"Разработано",
39 | "See more at":"Еще тут",
40 | "Contact the developer":"Связаться с разработчиком",
41 | "api version":"Версия API",
42 | "Response Content Type":"Content Type ответа",
43 | "Parameter content type:":"Content Type параметра:",
44 | "fetching resource":"Получение ресурса",
45 | "fetching resource list":"Получение ресурсов",
46 | "Explore":"Показать",
47 | "Show Swagger Petstore Example Apis":"Показать примеры АПИ",
48 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"Не удается получить ответ от сервера. Возможно, проблема с настройками доступа",
49 | "Please specify the protocol for":"Пожалуйста, укажите протокол для",
50 | "Can't read swagger JSON from":"Не получается прочитать swagger json из",
51 | "Finished Loading Resource Information. Rendering Swagger UI":"Загрузка информации о ресурсах завершена. Рендерим",
52 | "Unable to read api":"Не удалось прочитать api",
53 | "from path":"по адресу",
54 | "server returned":"сервер сказал"
55 | });
56 |
--------------------------------------------------------------------------------
/gradlew.bat:
--------------------------------------------------------------------------------
1 | @if "%DEBUG%" == "" @echo off
2 | @rem ##########################################################################
3 | @rem
4 | @rem Gradle startup script for Windows
5 | @rem
6 | @rem ##########################################################################
7 |
8 | @rem Set local scope for the variables with windows NT shell
9 | if "%OS%"=="Windows_NT" setlocal
10 |
11 | set DIRNAME=%~dp0
12 | if "%DIRNAME%" == "" set DIRNAME=.
13 | set APP_BASE_NAME=%~n0
14 | set APP_HOME=%DIRNAME%
15 |
16 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
17 | set DEFAULT_JVM_OPTS="-Xmx64m"
18 |
19 | @rem Find java.exe
20 | if defined JAVA_HOME goto findJavaFromJavaHome
21 |
22 | set JAVA_EXE=java.exe
23 | %JAVA_EXE% -version >NUL 2>&1
24 | if "%ERRORLEVEL%" == "0" goto init
25 |
26 | echo.
27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
28 | echo.
29 | echo Please set the JAVA_HOME variable in your environment to match the
30 | echo location of your Java installation.
31 |
32 | goto fail
33 |
34 | :findJavaFromJavaHome
35 | set JAVA_HOME=%JAVA_HOME:"=%
36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
37 |
38 | if exist "%JAVA_EXE%" goto init
39 |
40 | echo.
41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
42 | echo.
43 | echo Please set the JAVA_HOME variable in your environment to match the
44 | echo location of your Java installation.
45 |
46 | goto fail
47 |
48 | :init
49 | @rem Get command-line arguments, handling Windows variants
50 |
51 | if not "%OS%" == "Windows_NT" goto win9xME_args
52 |
53 | :win9xME_args
54 | @rem Slurp the command line arguments.
55 | set CMD_LINE_ARGS=
56 | set _SKIP=2
57 |
58 | :win9xME_args_slurp
59 | if "x%~1" == "x" goto execute
60 |
61 | set CMD_LINE_ARGS=%*
62 |
63 | :execute
64 | @rem Setup the command line
65 |
66 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
67 |
68 | @rem Execute Gradle
69 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
70 |
71 | :end
72 | @rem End local scope for the variables with windows NT shell
73 | if "%ERRORLEVEL%"=="0" goto mainEnd
74 |
75 | :fail
76 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
77 | rem the _cmd.exe /c_ return code!
78 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
79 | exit /b 1
80 |
81 | :mainEnd
82 | if "%OS%"=="Windows_NT" endlocal
83 |
84 | :omega
85 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/es.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"Advertencia: Obsoleto",
6 | "Implementation Notes":"Notas de implementación",
7 | "Response Class":"Clase de la Respuesta",
8 | "Status":"Status",
9 | "Parameters":"Parámetros",
10 | "Parameter":"Parámetro",
11 | "Value":"Valor",
12 | "Description":"Descripción",
13 | "Parameter Type":"Tipo del Parámetro",
14 | "Data Type":"Tipo del Dato",
15 | "Response Messages":"Mensajes de la Respuesta",
16 | "HTTP Status Code":"Código de Status HTTP",
17 | "Reason":"Razón",
18 | "Response Model":"Modelo de la Respuesta",
19 | "Request URL":"URL de la Solicitud",
20 | "Response Body":"Cuerpo de la Respuesta",
21 | "Response Code":"Código de la Respuesta",
22 | "Response Headers":"Encabezados de la Respuesta",
23 | "Hide Response":"Ocultar Respuesta",
24 | "Try it out!":"Pruébalo!",
25 | "Show/Hide":"Mostrar/Ocultar",
26 | "List Operations":"Listar Operaciones",
27 | "Expand Operations":"Expandir Operaciones",
28 | "Raw":"Crudo",
29 | "can't parse JSON. Raw result":"no puede parsear el JSON. Resultado crudo",
30 | "Model Schema":"Esquema del Modelo",
31 | "Model":"Modelo",
32 | "apply":"aplicar",
33 | "Username":"Nombre de usuario",
34 | "Password":"Contraseña",
35 | "Terms of service":"Términos de Servicio",
36 | "Created by":"Creado por",
37 | "See more at":"Ver más en",
38 | "Contact the developer":"Contactar al desarrollador",
39 | "api version":"versión de la api",
40 | "Response Content Type":"Tipo de Contenido (Content Type) de la Respuesta",
41 | "fetching resource":"buscando recurso",
42 | "fetching resource list":"buscando lista del recurso",
43 | "Explore":"Explorar",
44 | "Show Swagger Petstore Example Apis":"Mostrar Api Ejemplo de Swagger Petstore",
45 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"No se puede leer del servidor. Tal vez no tiene la configuración de control de acceso de origen (access-control-origin) apropiado.",
46 | "Please specify the protocol for":"Por favor, especificar el protocola para",
47 | "Can't read swagger JSON from":"No se puede leer el JSON de swagger desde",
48 | "Finished Loading Resource Information. Rendering Swagger UI":"Finalizada la carga del recurso de Información. Mostrando Swagger UI",
49 | "Unable to read api":"No se puede leer la api",
50 | "from path":"desde ruta",
51 | "server returned":"el servidor retornó"
52 | });
53 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/fr.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"Avertissement : Obsolète",
6 | "Implementation Notes":"Notes d'implementation",
7 | "Response Class":"Classe de la réponse",
8 | "Status":"Statut",
9 | "Parameters":"Paramètres",
10 | "Parameter":"Paramètre",
11 | "Value":"Valeur",
12 | "Description":"Description",
13 | "Parameter Type":"Type du paramètre",
14 | "Data Type":"Type de données",
15 | "Response Messages":"Messages de la réponse",
16 | "HTTP Status Code":"Code de statut HTTP",
17 | "Reason":"Raison",
18 | "Response Model":"Modèle de réponse",
19 | "Request URL":"URL appelée",
20 | "Response Body":"Corps de la réponse",
21 | "Response Code":"Code de la réponse",
22 | "Response Headers":"En-têtes de la réponse",
23 | "Hide Response":"Cacher la réponse",
24 | "Headers":"En-têtes",
25 | "Try it out!":"Testez !",
26 | "Show/Hide":"Afficher/Masquer",
27 | "List Operations":"Liste des opérations",
28 | "Expand Operations":"Développer les opérations",
29 | "Raw":"Brut",
30 | "can't parse JSON. Raw result":"impossible de décoder le JSON. Résultat brut",
31 | "Model Schema":"Définition du modèle",
32 | "Model":"Modèle",
33 | "apply":"appliquer",
34 | "Username":"Nom d'utilisateur",
35 | "Password":"Mot de passe",
36 | "Terms of service":"Conditions de service",
37 | "Created by":"Créé par",
38 | "See more at":"Voir plus sur",
39 | "Contact the developer":"Contacter le développeur",
40 | "api version":"version de l'api",
41 | "Response Content Type":"Content Type de la réponse",
42 | "fetching resource":"récupération de la ressource",
43 | "fetching resource list":"récupération de la liste de ressources",
44 | "Explore":"Explorer",
45 | "Show Swagger Petstore Example Apis":"Montrer les Apis de l'exemple Petstore de Swagger",
46 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"Impossible de lire à partir du serveur. Il se peut que les réglages access-control-origin ne soient pas appropriés.",
47 | "Please specify the protocol for":"Veuillez spécifier un protocole pour",
48 | "Can't read swagger JSON from":"Impossible de lire le JSON swagger à partir de",
49 | "Finished Loading Resource Information. Rendering Swagger UI":"Chargement des informations terminé. Affichage de Swagger UI",
50 | "Unable to read api":"Impossible de lire l'api",
51 | "from path":"à partir du chemin",
52 | "server returned":"réponse du serveur"
53 | });
54 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lang/it.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* jshint quotmark: double */
4 | window.SwaggerTranslator.learn({
5 | "Warning: Deprecated":"Attenzione: Deprecato",
6 | "Implementation Notes":"Note di implementazione",
7 | "Response Class":"Classe della risposta",
8 | "Status":"Stato",
9 | "Parameters":"Parametri",
10 | "Parameter":"Parametro",
11 | "Value":"Valore",
12 | "Description":"Descrizione",
13 | "Parameter Type":"Tipo di parametro",
14 | "Data Type":"Tipo di dato",
15 | "Response Messages":"Messaggi della risposta",
16 | "HTTP Status Code":"Codice stato HTTP",
17 | "Reason":"Motivo",
18 | "Response Model":"Modello di risposta",
19 | "Request URL":"URL della richiesta",
20 | "Response Body":"Corpo della risposta",
21 | "Response Code":"Oggetto della risposta",
22 | "Response Headers":"Intestazioni della risposta",
23 | "Hide Response":"Nascondi risposta",
24 | "Try it out!":"Provalo!",
25 | "Show/Hide":"Mostra/Nascondi",
26 | "List Operations":"Mostra operazioni",
27 | "Expand Operations":"Espandi operazioni",
28 | "Raw":"Grezzo (raw)",
29 | "can't parse JSON. Raw result":"non è possibile parsare il JSON. Risultato grezzo (raw).",
30 | "Model Schema":"Schema del modello",
31 | "Model":"Modello",
32 | "apply":"applica",
33 | "Username":"Nome utente",
34 | "Password":"Password",
35 | "Terms of service":"Condizioni del servizio",
36 | "Created by":"Creato da",
37 | "See more at":"Informazioni aggiuntive:",
38 | "Contact the developer":"Contatta lo sviluppatore",
39 | "api version":"versione api",
40 | "Response Content Type":"Tipo di contenuto (content type) della risposta",
41 | "fetching resource":"recuperando la risorsa",
42 | "fetching resource list":"recuperando lista risorse",
43 | "Explore":"Esplora",
44 | "Show Swagger Petstore Example Apis":"Mostra le api di esempio di Swagger Petstore",
45 | "Can't read from server. It may not have the appropriate access-control-origin settings.":"Non è possibile leggere dal server. Potrebbe non avere le impostazioni di controllo accesso origine (access-control-origin) appropriate.",
46 | "Please specify the protocol for":"Si prega di specificare il protocollo per",
47 | "Can't read swagger JSON from":"Impossibile leggere JSON swagger da:",
48 | "Finished Loading Resource Information. Rendering Swagger UI":"Lettura informazioni risorse termianta. Swagger UI viene mostrata",
49 | "Unable to read api":"Impossibile leggere la api",
50 | "from path":"da cartella",
51 | "server returned":"il server ha restituito"
52 | });
53 |
--------------------------------------------------------------------------------
/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 | com.techietester
8 | videogamedb
9 | 1.0-SNAPSHOT
10 |
11 |
12 | 2.1.9.RELEASE
13 |
14 |
15 |
16 | org.springframework.boot
17 | spring-boot-starter-parent
18 | 2.1.9.RELEASE
19 |
20 |
21 |
22 |
23 | org.springframework.boot
24 | spring-boot-starter-web
25 |
26 |
27 | org.springframework.boot
28 | spring-boot-starter-jersey
29 |
30 |
31 | org.springframework.boot
32 | spring-boot-starter-jdbc
33 |
34 |
35 | com.h2database
36 | h2
37 | 1.4.199
38 |
39 |
40 | io.swagger
41 | swagger-jersey2-jaxrs
42 | 1.5.10
43 |
44 |
45 |
46 | javax.xml.bind
47 | jaxb-api
48 | 2.3.1
49 |
50 |
51 | com.sun.xml.bind
52 | jaxb-core
53 | 2.3.0.1
54 |
55 |
56 | com.sun.xml.bind
57 | jaxb-impl
58 | 2.3.1
59 |
60 |
61 | javax.activation
62 | activation
63 | 1.1.1
64 |
65 |
66 |
67 | junit
68 | junit
69 | 4.12
70 |
71 |
72 | org.springframework.boot
73 | spring-boot-starter-test
74 |
75 |
76 |
77 | org.springframework.boot
78 | spring-boot-maven-plugin
79 | ${spring.boot.version}
80 |
81 |
82 | org.springframework.boot
83 | spring-boot-devtools
84 | true
85 |
86 |
87 |
88 |
89 |
90 |
91 | org.springframework.boot
92 | spring-boot-maven-plugin
93 |
94 |
95 |
96 | repackage
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lib/jquery.ba-bbq.min.js:
--------------------------------------------------------------------------------
1 | /*
2 | * jQuery BBQ: Back Button & Query Library - v1.2.1 - 2/17/2010
3 | * http://benalman.com/projects/jquery-bbq-plugin/
4 | *
5 | * Copyright (c) 2010 "Cowboy" Ben Alman
6 | * Dual licensed under the MIT and GPL licenses.
7 | * http://benalman.com/about/license/
8 | */
9 | (function($,p){var i,m=Array.prototype.slice,r=decodeURIComponent,a=$.param,c,l,v,b=$.bbq=$.bbq||{},q,u,j,e=$.event.special,d="hashchange",A="querystring",D="fragment",y="elemUrlAttr",g="location",k="href",t="src",x=/^.*\?|#.*$/g,w=/^.*\#/,h,C={};function E(F){return typeof F==="string"}function B(G){var F=m.call(arguments,1);return function(){return G.apply(this,F.concat(m.call(arguments)))}}function n(F){return F.replace(/^[^#]*#?(.*)$/,"$1")}function o(F){return F.replace(/(?:^[^?#]*\?([^#]*).*$)?.*/,"$1")}function f(H,M,F,I,G){var O,L,K,N,J;if(I!==i){K=F.match(H?/^([^#]*)\#?(.*)$/:/^([^#?]*)\??([^#]*)(#?.*)/);J=K[3]||"";if(G===2&&E(I)){L=I.replace(H?w:x,"")}else{N=l(K[2]);I=E(I)?l[H?D:A](I):I;L=G===2?I:G===1?$.extend({},I,N):$.extend({},N,I);L=a(L);if(H){L=L.replace(h,r)}}O=K[1]+(H?"#":L||!K[1]?"?":"")+L+J}else{O=M(F!==i?F:p[g][k])}return O}a[A]=B(f,0,o);a[D]=c=B(f,1,n);c.noEscape=function(G){G=G||"";var F=$.map(G.split(""),encodeURIComponent);h=new RegExp(F.join("|"),"g")};c.noEscape(",/");$.deparam=l=function(I,F){var H={},G={"true":!0,"false":!1,"null":null};$.each(I.replace(/\+/g," ").split("&"),function(L,Q){var K=Q.split("="),P=r(K[0]),J,O=H,M=0,R=P.split("]["),N=R.length-1;if(/\[/.test(R[0])&&/\]$/.test(R[N])){R[N]=R[N].replace(/\]$/,"");R=R.shift().split("[").concat(R);N=R.length-1}else{N=0}if(K.length===2){J=r(K[1]);if(F){J=J&&!isNaN(J)?+J:J==="undefined"?i:G[J]!==i?G[J]:J}if(N){for(;M<=N;M++){P=R[M]===""?O.length:R[M];O=O[P]=M').hide().insertAfter("body")[0].contentWindow;q=function(){return a(n.document[c][l])};o=function(u,s){if(u!==s){var t=n.document;t.open().close();t[c].hash="#"+u}};o(a())}}m.start=function(){if(r){return}var t=a();o||p();(function s(){var v=a(),u=q(t);if(v!==t){o(t=v,u);$(i).trigger(d)}else{if(u!==t){i[c][l]=i[c][l].replace(/#.*/,"")+"#"+u}}r=setTimeout(s,$[d+"Delay"])})()};m.stop=function(){if(!n){r&&clearTimeout(r);r=0}};return m})()})(jQuery,this);
--------------------------------------------------------------------------------
/src/main/java/com/techietester/resource/VideoGameResource.java:
--------------------------------------------------------------------------------
1 | package com.techietester.resource;
2 |
3 | import com.techietester.model.VideoGame;
4 | import io.swagger.annotations.Api;
5 | import io.swagger.annotations.ApiOperation;
6 | import io.swagger.annotations.ApiParam;
7 | import io.swagger.annotations.Tag;
8 | import org.springframework.beans.factory.annotation.Autowired;
9 | import org.springframework.jdbc.core.RowMapper;
10 | import org.springframework.jdbc.core.namedparam.BeanPropertySqlParameterSource;
11 | import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
12 | import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
13 | import org.springframework.jdbc.core.namedparam.SqlParameterSource;
14 |
15 | import javax.ws.rs.*;
16 | import javax.ws.rs.core.MediaType;
17 | import java.sql.ResultSet;
18 | import java.sql.SQLException;
19 | import java.util.ArrayList;
20 | import java.util.List;
21 |
22 | @Path("/videogames")
23 | @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON,})
24 | @Consumes({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON,})
25 | @Api(value = "Video Games")
26 | public class VideoGameResource {
27 |
28 | private final NamedParameterJdbcTemplate namedParameterJdbcTemplate;
29 |
30 | @Autowired
31 | public VideoGameResource(NamedParameterJdbcTemplate namedParameterJdbcTemplate) {
32 | this.namedParameterJdbcTemplate = namedParameterJdbcTemplate;
33 | }
34 |
35 | @GET
36 | @ApiOperation(value = "Get List of all Video Games", notes = "Returns all the videos games in the DB", response = VideoGame.class, responseContainer = "List")
37 | public List listVideoGames() {
38 |
39 | String sql = "select * from VIDEOGAME";
40 |
41 | return namedParameterJdbcTemplate.query(sql, new VideoGameMapper());
42 | }
43 |
44 | @GET
45 | @Path("/{videoGameId}")
46 | @ApiOperation(value = "Get a single video game by ID", notes = "Returns the details of a single game by ID", response = VideoGame.class)
47 | public VideoGame getVideoGame(
48 | @ApiParam(value = "The video game ID", required = true) @PathParam("videoGameId") Integer videoGameId)
49 | {
50 | String sql = "select * from VIDEOGAME where id=:videoGameId";
51 | SqlParameterSource namedParameters = new MapSqlParameterSource("videoGameId", videoGameId);
52 | return namedParameterJdbcTemplate.query(sql, namedParameters, new VideoGameMapper()).get(0);
53 | }
54 |
55 | @POST
56 | @ApiOperation(value = "Add a new video game", notes = "Add a new video game to the DB")
57 | public String createVideoGame(final VideoGame videoGame) {
58 | String sql = "insert into VIDEOGAME values(:id, :name, :releaseDate, :reviewScore, :category, :rating)";
59 | SqlParameterSource namedParameters = new BeanPropertySqlParameterSource(videoGame);
60 | this.namedParameterJdbcTemplate.update(sql, namedParameters);
61 | return "{\"status\": \"Record Added Successfully\"}";
62 | }
63 |
64 | @PUT
65 | @Path("/{videoGameId}")
66 | @ApiOperation(value = "Update a video game", notes = "Update an existing video game in the DB by specifying a new body ", response = VideoGame.class)
67 | public VideoGame editVideoGame(final VideoGame videoGame, @PathParam("videoGameId") Integer videoGameId ) {
68 | String sql = "update VIDEOGAME set id=:id, name=:name, released_on=:releaseDate, review_score=:reviewScore, category=:category, rating=:rating where id=:id";
69 | SqlParameterSource namedParameters = new BeanPropertySqlParameterSource(videoGame);
70 | this.namedParameterJdbcTemplate.update(sql, namedParameters);
71 |
72 | sql = "select * from VIDEOGAME where id=:videoGameId";
73 | SqlParameterSource namedParameters2 = new MapSqlParameterSource("videoGameId", videoGameId);
74 | return namedParameterJdbcTemplate.query(sql, namedParameters2, new VideoGameMapper()).get(0);
75 | }
76 |
77 | @DELETE
78 | @Path("/{videoGameId}")
79 | @ApiOperation(value = "Delete a video game", notes = "Deletes a video game from the DB by ID")
80 | public String deleteVideoGame(
81 | @ApiParam(value = "The video game ID", required = true) @PathParam("videoGameId") Integer videoGameId)
82 | {
83 | String sql = "delete from VIDEOGAME where id =:videoGameId";
84 | SqlParameterSource namedParameters = new MapSqlParameterSource("videoGameId", videoGameId);
85 | this.namedParameterJdbcTemplate.update(sql, namedParameters);
86 | return "{\"status\": \"Record Deleted Successfully\"}";
87 | }
88 |
89 |
90 | private static final class VideoGameMapper implements RowMapper {
91 | public VideoGame mapRow(ResultSet rs, int rowNum) throws SQLException {
92 |
93 | VideoGame videoGame = new VideoGame();
94 | videoGame.setId(rs.getInt("id"));
95 | videoGame.setName(rs.getString("name"));
96 | videoGame.setReleaseDate(rs.getDate("released_on"));
97 | videoGame.setReviewScore(rs.getInt("review_score"));
98 | videoGame.setCategory(rs.getString("category"));
99 | videoGame.setRating(rs.getString("rating"));
100 | return videoGame;
101 | }
102 | }
103 | }
104 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Video Game DB - Swagger UI
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
109 |
110 |
111 |
112 |
122 |
123 |
124 |
125 |
126 |
127 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/css/style.css:
--------------------------------------------------------------------------------
1 | .swagger-section #header a#logo {
2 | font-size: 1.5em;
3 | font-weight: bold;
4 | text-decoration: none;
5 | background: transparent url(../images/logo.png) no-repeat left center;
6 | padding: 20px 0 20px 40px;
7 | }
8 | #text-head {
9 | font-size: 80px;
10 | font-family: 'Roboto', sans-serif;
11 | color: #ffffff;
12 | float: right;
13 | margin-right: 20%;
14 | }
15 | .navbar-fixed-top .navbar-nav {
16 | height: auto;
17 | }
18 | .navbar-fixed-top .navbar-brand {
19 | height: auto;
20 | }
21 | .navbar-header {
22 | height: auto;
23 | }
24 | .navbar-inverse {
25 | background-color: #000;
26 | border-color: #000;
27 | }
28 | #navbar-brand {
29 | margin-left: 20%;
30 | }
31 | .navtext {
32 | font-size: 10px;
33 | }
34 | .h1,
35 | h1 {
36 | font-size: 60px;
37 | }
38 | .navbar-default .navbar-header .navbar-brand {
39 | color: #a2dfee;
40 | }
41 | /* tag titles */
42 | .swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a {
43 | color: #393939;
44 | font-family: 'Arvo', serif;
45 | font-size: 1.5em;
46 | }
47 | .swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a:hover {
48 | color: black;
49 | }
50 | .swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 {
51 | color: #525252;
52 | padding-left: 0px;
53 | display: block;
54 | clear: none;
55 | float: left;
56 | font-family: 'Arvo', serif;
57 | font-weight: bold;
58 | }
59 | .navbar-default .navbar-collapse,
60 | .navbar-default .navbar-form {
61 | border-color: #0A0A0A;
62 | }
63 | .container1 {
64 | width: 1500px;
65 | margin: auto;
66 | margin-top: 0;
67 | background-image: url('../images/shield.png');
68 | background-repeat: no-repeat;
69 | background-position: -40px -20px;
70 | margin-bottom: 210px;
71 | }
72 | .container-inner {
73 | width: 1200px;
74 | margin: auto;
75 | background-color: rgba(223, 227, 228, 0.75);
76 | padding-bottom: 40px;
77 | padding-top: 40px;
78 | border-radius: 15px;
79 | }
80 | .header-content {
81 | padding: 0;
82 | width: 1000px;
83 | }
84 | .title1 {
85 | font-size: 80px;
86 | font-family: 'Vollkorn', serif;
87 | color: #404040;
88 | text-align: center;
89 | padding-top: 40px;
90 | padding-bottom: 100px;
91 | }
92 | #icon {
93 | margin-top: -18px;
94 | }
95 | .subtext {
96 | font-size: 25px;
97 | font-style: italic;
98 | color: #08b;
99 | text-align: right;
100 | padding-right: 250px;
101 | }
102 | .bg-primary {
103 | background-color: #00468b;
104 | }
105 | .navbar-default .nav > li > a,
106 | .navbar-default .nav > li > a:focus {
107 | color: #08b;
108 | }
109 | .navbar-default .nav > li > a,
110 | .navbar-default .nav > li > a:hover {
111 | color: #08b;
112 | }
113 | .navbar-default .nav > li > a,
114 | .navbar-default .nav > li > a:focus:hover {
115 | color: #08b;
116 | }
117 | .text-faded {
118 | font-size: 25px;
119 | font-family: 'Vollkorn', serif;
120 | }
121 | .section-heading {
122 | font-family: 'Vollkorn', serif;
123 | font-size: 45px;
124 | padding-bottom: 10px;
125 | }
126 | hr {
127 | border-color: #00468b;
128 | padding-bottom: 10px;
129 | }
130 | .description {
131 | margin-top: 20px;
132 | padding-bottom: 200px;
133 | }
134 | .description li {
135 | font-family: 'Vollkorn', serif;
136 | font-size: 25px;
137 | color: #525252;
138 | margin-left: 28%;
139 | padding-top: 5px;
140 | }
141 | .gap {
142 | margin-top: 200px;
143 | }
144 | .troubleshootingtext {
145 | color: rgba(255, 255, 255, 0.7);
146 | padding-left: 30%;
147 | }
148 | .troubleshootingtext li {
149 | list-style-type: circle;
150 | font-size: 25px;
151 | padding-bottom: 5px;
152 | }
153 | .overlay {
154 | position: absolute;
155 | top: 0;
156 | left: 0;
157 | width: 100%;
158 | height: 100%;
159 | z-index: 1000;
160 | }
161 | .block.response_body.json:hover {
162 | cursor: pointer;
163 | }
164 | .backdrop {
165 | color: blue;
166 | }
167 | #myModal {
168 | height: 100%;
169 | }
170 | .modal-backdrop {
171 | bottom: 0;
172 | position: fixed;
173 | }
174 | .curl {
175 | padding: 10px;
176 | font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
177 | font-size: 0.9em;
178 | max-height: 400px;
179 | margin-top: 5px;
180 | overflow-y: auto;
181 | background-color: #fcf6db;
182 | border: 1px solid #e5e0c6;
183 | border-radius: 4px;
184 | }
185 | .curl_title {
186 | font-size: 1.1em;
187 | margin: 0;
188 | padding: 15px 0 5px;
189 | font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif;
190 | font-weight: 500;
191 | line-height: 1.1;
192 | }
193 | .footer {
194 | display: none;
195 | }
196 | .swagger-section .swagger-ui-wrap h2 {
197 | padding: 0;
198 | }
199 | h2 {
200 | margin: 0;
201 | margin-bottom: 5px;
202 | }
203 | .markdown p {
204 | font-size: 15px;
205 | font-family: 'Arvo', serif;
206 | }
207 | .swagger-section .swagger-ui-wrap .code {
208 | font-size: 15px;
209 | font-family: 'Arvo', serif;
210 | }
211 | .swagger-section .swagger-ui-wrap b {
212 | font-family: 'Arvo', serif;
213 | }
214 | #signin:hover {
215 | cursor: pointer;
216 | }
217 | .dropdown-menu {
218 | padding: 15px;
219 | }
220 | .navbar-right .dropdown-menu {
221 | left: 0;
222 | right: auto;
223 | }
224 | #signinbutton {
225 | width: 100%;
226 | height: 32px;
227 | font-size: 13px;
228 | font-weight: bold;
229 | color: #08b;
230 | }
231 | .navbar-default .nav > li .details {
232 | color: #000000;
233 | text-transform: none;
234 | font-size: 15px;
235 | font-weight: normal;
236 | font-family: 'Open Sans', sans-serif;
237 | font-style: italic;
238 | line-height: 20px;
239 | top: -2px;
240 | }
241 | .navbar-default .nav > li .details:hover {
242 | color: black;
243 | }
244 | #signout {
245 | width: 100%;
246 | height: 32px;
247 | font-size: 13px;
248 | font-weight: bold;
249 | color: #08b;
250 | }
251 |
--------------------------------------------------------------------------------
/gradlew:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 |
3 | ##############################################################################
4 | ##
5 | ## Gradle start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Attempt to set APP_HOME
10 | # Resolve links: $0 may be a link
11 | PRG="$0"
12 | # Need this for relative symlinks.
13 | while [ -h "$PRG" ] ; do
14 | ls=`ls -ld "$PRG"`
15 | link=`expr "$ls" : '.*-> \(.*\)$'`
16 | if expr "$link" : '/.*' > /dev/null; then
17 | PRG="$link"
18 | else
19 | PRG=`dirname "$PRG"`"/$link"
20 | fi
21 | done
22 | SAVED="`pwd`"
23 | cd "`dirname \"$PRG\"`/" >/dev/null
24 | APP_HOME="`pwd -P`"
25 | cd "$SAVED" >/dev/null
26 |
27 | APP_NAME="Gradle"
28 | APP_BASE_NAME=`basename "$0"`
29 |
30 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
31 | DEFAULT_JVM_OPTS='"-Xmx64m"'
32 |
33 | # Use the maximum available, or set MAX_FD != -1 to use that value.
34 | MAX_FD="maximum"
35 |
36 | warn () {
37 | echo "$*"
38 | }
39 |
40 | die () {
41 | echo
42 | echo "$*"
43 | echo
44 | exit 1
45 | }
46 |
47 | # OS specific support (must be 'true' or 'false').
48 | cygwin=false
49 | msys=false
50 | darwin=false
51 | nonstop=false
52 | case "`uname`" in
53 | CYGWIN* )
54 | cygwin=true
55 | ;;
56 | Darwin* )
57 | darwin=true
58 | ;;
59 | MINGW* )
60 | msys=true
61 | ;;
62 | NONSTOP* )
63 | nonstop=true
64 | ;;
65 | esac
66 |
67 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
68 |
69 | # Determine the Java command to use to start the JVM.
70 | if [ -n "$JAVA_HOME" ] ; then
71 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
72 | # IBM's JDK on AIX uses strange locations for the executables
73 | JAVACMD="$JAVA_HOME/jre/sh/java"
74 | else
75 | JAVACMD="$JAVA_HOME/bin/java"
76 | fi
77 | if [ ! -x "$JAVACMD" ] ; then
78 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
79 |
80 | Please set the JAVA_HOME variable in your environment to match the
81 | location of your Java installation."
82 | fi
83 | else
84 | JAVACMD="java"
85 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
86 |
87 | Please set the JAVA_HOME variable in your environment to match the
88 | location of your Java installation."
89 | fi
90 |
91 | # Increase the maximum file descriptors if we can.
92 | if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
93 | MAX_FD_LIMIT=`ulimit -H -n`
94 | if [ $? -eq 0 ] ; then
95 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
96 | MAX_FD="$MAX_FD_LIMIT"
97 | fi
98 | ulimit -n $MAX_FD
99 | if [ $? -ne 0 ] ; then
100 | warn "Could not set maximum file descriptor limit: $MAX_FD"
101 | fi
102 | else
103 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
104 | fi
105 | fi
106 |
107 | # For Darwin, add options to specify how the application appears in the dock
108 | if $darwin; then
109 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
110 | fi
111 |
112 | # For Cygwin, switch paths to Windows format before running java
113 | if $cygwin ; then
114 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
115 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
116 | JAVACMD=`cygpath --unix "$JAVACMD"`
117 |
118 | # We build the pattern for arguments to be converted via cygpath
119 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
120 | SEP=""
121 | for dir in $ROOTDIRSRAW ; do
122 | ROOTDIRS="$ROOTDIRS$SEP$dir"
123 | SEP="|"
124 | done
125 | OURCYGPATTERN="(^($ROOTDIRS))"
126 | # Add a user-defined pattern to the cygpath arguments
127 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then
128 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
129 | fi
130 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
131 | i=0
132 | for arg in "$@" ; do
133 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
134 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
135 |
136 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
137 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
138 | else
139 | eval `echo args$i`="\"$arg\""
140 | fi
141 | i=$((i+1))
142 | done
143 | case $i in
144 | (0) set -- ;;
145 | (1) set -- "$args0" ;;
146 | (2) set -- "$args0" "$args1" ;;
147 | (3) set -- "$args0" "$args1" "$args2" ;;
148 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
149 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
150 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
151 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
152 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
153 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
154 | esac
155 | fi
156 |
157 | # Escape application args
158 | save () {
159 | for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
160 | echo " "
161 | }
162 | APP_ARGS=$(save "$@")
163 |
164 | # Collect all arguments for the java command, following the shell quoting and substitution rules
165 | eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
166 |
167 | # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
168 | if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
169 | cd "$(dirname "$0")"
170 | fi
171 |
172 | exec "$JAVACMD" "$@"
173 |
--------------------------------------------------------------------------------
/src/main/resources/swagger-ui/dist/lib/highlight.7.3.pack.js:
--------------------------------------------------------------------------------
1 | var hljs=new function(){function l(o){return o.replace(/&/gm,"&").replace(//gm,">")}function b(p){for(var o=p.firstChild;o;o=o.nextSibling){if(o.nodeName=="CODE"){return o}if(!(o.nodeType==3&&o.nodeValue.match(/\s+/))){break}}}function h(p,o){return Array.prototype.map.call(p.childNodes,function(q){if(q.nodeType==3){return o?q.nodeValue.replace(/\n/g,""):q.nodeValue}if(q.nodeName=="BR"){return"\n"}return h(q,o)}).join("")}function a(q){var p=(q.className+" "+q.parentNode.className).split(/\s+/);p=p.map(function(r){return r.replace(/^language-/,"")});for(var o=0;o"}while(x.length||v.length){var u=t().splice(0,1)[0];y+=l(w.substr(p,u.offset-p));p=u.offset;if(u.event=="start"){y+=s(u.node);r.push(u.node)}else{if(u.event=="stop"){var o,q=r.length;do{q--;o=r[q];y+=(""+o.nodeName.toLowerCase()+">")}while(o!=u.node);r.splice(q,1);while(q'+L[0]+""}else{r+=L[0]}N=A.lR.lastIndex;L=A.lR.exec(K)}return r+K.substr(N)}function z(){if(A.sL&&!e[A.sL]){return l(w)}var r=A.sL?d(A.sL,w):g(w);if(A.r>0){v+=r.keyword_count;B+=r.r}return''+r.value+""}function J(){return A.sL!==undefined?z():G()}function I(L,r){var K=L.cN?'':"";if(L.rB){x+=K;w=""}else{if(L.eB){x+=l(r)+K;w=""}else{x+=K;w=r}}A=Object.create(L,{parent:{value:A}});B+=L.r}function C(K,r){w+=K;if(r===undefined){x+=J();return 0}var L=o(r,A);if(L){x+=J();I(L,r);return L.rB?0:r.length}var M=s(A,r);if(M){if(!(M.rE||M.eE)){w+=r}x+=J();do{if(A.cN){x+=""}A=A.parent}while(A!=M.parent);if(M.eE){x+=l(r)}w="";if(M.starts){I(M.starts,"")}return M.rE?0:r.length}if(t(r,A)){throw"Illegal"}w+=r;return r.length||1}var F=e[D];f(F);var A=F;var w="";var B=0;var v=0;var x="";try{var u,q,p=0;while(true){A.t.lastIndex=p;u=A.t.exec(E);if(!u){break}q=C(E.substr(p,u.index-p),u[0]);p=u.index+q}C(E.substr(p));return{r:B,keyword_count:v,value:x,language:D}}catch(H){if(H=="Illegal"){return{r:0,keyword_count:0,value:l(E)}}else{throw H}}}function g(s){var o={keyword_count:0,r:0,value:l(s)};var q=o;for(var p in e){if(!e.hasOwnProperty(p)){continue}var r=d(p,s);r.language=p;if(r.keyword_count+r.r>q.keyword_count+q.r){q=r}if(r.keyword_count+r.r>o.keyword_count+o.r){q=o;o=r}}if(q.language){o.second_best=q}return o}function i(q,p,o){if(p){q=q.replace(/^((<[^>]+>|\t)+)/gm,function(r,v,u,t){return v.replace(/\t/g,p)})}if(o){q=q.replace(/\n/g,"
")}return q}function m(r,u,p){var v=h(r,p);var t=a(r);if(t=="no-highlight"){return}var w=t?d(t,v):g(v);t=w.language;var o=c(r);if(o.length){var q=document.createElement("pre");q.innerHTML=w.value;w.value=j(o,c(q),v)}w.value=i(w.value,u,p);var s=r.className;if(!s.match("(\\s|^)(language-)?"+t+"(\\s|$)")){s=s?(s+" "+t):t}r.innerHTML=w.value;r.className=s;r.result={language:t,kw:w.keyword_count,re:w.r};if(w.second_best){r.second_best={language:w.second_best.language,kw:w.second_best.keyword_count,re:w.second_best.r}}}function n(){if(n.called){return}n.called=true;Array.prototype.map.call(document.getElementsByTagName("pre"),b).filter(Boolean).forEach(function(o){m(o,hljs.tabReplace)})}function k(){window.addEventListener("DOMContentLoaded",n,false);window.addEventListener("load",n,false)}var e={};this.LANGUAGES=e;this.highlight=d;this.highlightAuto=g;this.fixMarkup=i;this.highlightBlock=m;this.initHighlighting=n;this.initHighlightingOnLoad=k;this.IR="[a-zA-Z][a-zA-Z0-9_]*";this.UIR="[a-zA-Z_][a-zA-Z0-9_]*";this.NR="\\b\\d+(\\.\\d+)?";this.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)";this.BNR="\\b(0b[01]+)";this.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|\\.|-|-=|/|/=|:|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~";this.BE={b:"\\\\[\\s\\S]",r:0};this.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[this.BE],r:0};this.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[this.BE],r:0};this.CLCM={cN:"comment",b:"//",e:"$"};this.CBLCLM={cN:"comment",b:"/\\*",e:"\\*/"};this.HCM={cN:"comment",b:"#",e:"$"};this.NM={cN:"number",b:this.NR,r:0};this.CNM={cN:"number",b:this.CNR,r:0};this.BNM={cN:"number",b:this.BNR,r:0};this.inherit=function(q,r){var o={};for(var p in q){o[p]=q[p]}if(r){for(var p in r){o[p]=r[p]}}return o}}();hljs.LANGUAGES.xml=function(a){var c="[A-Za-z0-9\\._:-]+";var b={eW:true,c:[{cN:"attribute",b:c,r:0},{b:'="',rB:true,e:'"',c:[{cN:"value",b:'"',eW:true}]},{b:"='",rB:true,e:"'",c:[{cN:"value",b:"'",eW:true}]},{b:"=",c:[{cN:"value",b:"[^\\s/>]+"}]}]};return{cI:true,c:[{cN:"pi",b:"<\\?",e:"\\?>",r:10},{cN:"doctype",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},{cN:"comment",b:"",r:10},{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"",rE:true,sL:"css"}},{cN:"tag",b:"