-
Notifications
You must be signed in to change notification settings - Fork 6
/
README
56 lines (40 loc) · 2.37 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
45
46
47
48
49
50
51
52
53
54
55
56
NOTE: This is not longer maintained
We've moved the official swagger-play2 module to here:
https://github.com/wordnik/swagger-core/tree/master/modules/swagger-play2
There is also a sample project to get you started:
https://github.com/wordnik/swagger-core/tree/master/samples/scala-play2
****************************************************
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
}