5970bafde5f40ae5476d1c451036c5fc43ef8942
[ccsdk/cds.git] /
1 /*\r
2  *  Copyright © 2017-2018 AT&T Intellectual Property.\r
3  *\r
4  *  Licensed under the Apache License, Version 2.0 (the "License");\r
5  *  you may not use this file except in compliance with the License.\r
6  *  You may obtain a copy of the License at\r
7  *\r
8  *      http://www.apache.org/licenses/LICENSE-2.0\r
9  *\r
10  *  Unless required by applicable law or agreed to in writing, software\r
11  *  distributed under the License is distributed on an "AS IS" BASIS,\r
12  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
13  *  See the License for the specific language governing permissions and\r
14  *  limitations under the License.\r
15  */\r
16 \r
17 package org.onap.ccsdk.apps.controllerblueprints;\r
18 \r
19 import org.slf4j.Logger;\r
20 import org.slf4j.LoggerFactory;\r
21 import org.springframework.context.annotation.Bean;\r
22 import org.springframework.context.annotation.Configuration;\r
23 import springfox.documentation.builders.PathSelectors;\r
24 import springfox.documentation.builders.RequestHandlerSelectors;\r
25 import springfox.documentation.service.ApiInfo;\r
26 import springfox.documentation.service.Contact;\r
27 import springfox.documentation.spi.DocumentationType;\r
28 import springfox.documentation.spring.web.plugins.Docket;\r
29 import springfox.documentation.swagger2.annotations.EnableSwagger2;\r
30 \r
31 import java.util.Arrays;\r
32 import java.util.Collections;\r
33 import java.util.HashSet;\r
34 import java.util.Set;\r
35 \r
36 /**\r
37  * SwaggerConfig\r
38  *\r
39  * @author Brinda Santh 8/13/2018\r
40  */\r
41 @Configuration\r
42 @EnableSwagger2\r
43 public class SwaggerConfig {\r
44     private static final Set<String> DEFAULT_PRODUCES_AND_CONSUMES =\r
45             new HashSet<String>(Arrays.asList("application/json",\r
46                     "application/xml"));\r
47     private static Logger log = LoggerFactory.getLogger(SwaggerConfig.class);\r
48 \r
49     @Bean\r
50     public Docket api() {\r
51         return new Docket(DocumentationType.SWAGGER_2)\r
52                 .select()\r
53                 .apis(RequestHandlerSelectors.any())\r
54                 .paths(PathSelectors.any())\r
55                 .build()\r
56                 .apiInfo(apiInfo());\r
57     }\r
58 \r
59     private ApiInfo apiInfo() {\r
60         return new ApiInfo(\r
61                 "Controller Blueprints API",\r
62                 "Controller blueprints API for VNF Self Service.",\r
63                 "1.0.0",\r
64                 "Terms of service",\r
65                 new Contact("Brinda Santh", "www.onap.com", "brindasanth@onap.com"),\r
66                 "Apache 2.0", "http://www.apache.org/licenses/LICENSE-2.0", Collections.emptyList());\r
67     }\r
68 \r
69 \r
70 }\r