forked from ayush/swagger-play2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
44 lines (34 loc) · 2.03 KB
/
README
1
2
3
4
5
6
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
33
34
35
36
37
38
39
40
41
42
43
44
Swagger for Play 2.0 Apps
>>>>>INSTALLATION
0. This works with Play 2.0
1. Clone, build and deploy this fork of swagger-core using "ant deploy". This fork works with scala 2.9.1 which Play 2.0 requires and has additional annotations for supporting Play 2.0 style controllers.
https://github.com/ayush/swagger-core
2. Clone swagger-play2 from https://github.com/ayush/swagger-play2
3. Deploy swagger-play2 using play2's publish-local command
4. In YOUR APP's Build.scala, add this dependency
"swagger-play2" %% "swagger-play2" % "1.0"
5. In YOUR APP, do reload/update and swagger-play2 should be present.
>>>>>USAGE - routes file
in YOUR APP's routes add these lines:
# Swagger - Root Resources Listing
GET /resources.json controllers.ApiHelpController.getResources
GET /resources.xml controllers.ApiHelpController.getResources
# Swagger - Resources
GET /admin.json controllers.ApiHelpController.getResource(path = "/admin")
GET /admin.xml controllers.ApiHelpController.getResource(path = "/admin")
GET /admin.json/health controllers.AdminController.getHealth()
GET /admin.xml/health controllers.AdminController.getHealth()
GET /admin.json/ping controllers.AdminController.ping()
GET /admin.xml/ping controllers.AdminController.ping()
>>>>>USAGE - controllers
For Swagger to recognize your controller methods as API point, you can add the following annotations to a controller method:
@Path("/add-employee")
@ApiOperation(value = "Add a new employee", notes = "", responseClass = "string", httpMethod = "POST")
@ApiParamsImplicit(Array(
new ApiParamImplicit(name = "id", value = "id of employee", required = true, dataType = "string", paramType = "query"),
new ApiParamImplicit(name = "name", value = "Name of employee", required = true, dataType = "string", paramType = "query"),
new ApiParamImplicit(name = "salary", value = "The salary which the poor soul gets", required = true, dataType = "string", paramType = "query")
))
def addEmployee() = Action { implicit request =>
// get the params and do the jig
}