Skip to content

Commit d9e4d98

Browse files
committed
added hidden field for subresource support #633
1 parent 7a382d0 commit d9e4d98

File tree

8 files changed

+17
-50
lines changed

8 files changed

+17
-50
lines changed

modules/swagger-core/src/main/scala/com/wordnik/swagger/core/util/ReaderUtil.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ trait ReaderUtil {
2323
val tuples = listings.map(m => (m.resourcePath, m))
2424
val grouped = tuples.groupBy(_._1)
2525
(for (group <- grouped) yield {
26-
val apiDescriptions = (for(g <- group._2; api <- g._2.apis) yield api).toList
26+
val apiDescriptions = (for(g <- group._2; api <- g._2.apis) yield api).filter(_.hidden == false).toList
2727
val models = (for(g <- group._2; models <- g._2.models) yield models).flatten.toMap
2828
group._2(0)._2.copy(apis = apiDescriptions, models = Option(models))
2929
}).toList

modules/swagger-core/src/main/scala/com/wordnik/swagger/model/SwaggerModels.scala

+2-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,8 @@ case class ApiListing (
8585
case class ApiDescription (
8686
path: String,
8787
description: Option[String],
88-
operations: List[Operation] = List())
88+
operations: List[Operation] = List(),
89+
hidden: Boolean = false)
8990

9091
case class Operation (
9192
method: String,

modules/swagger-jaxrs/src/main/scala/com/wordnik/swagger/jaxrs/reader/BasicJaxrsReader.scala

+7-2
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,13 @@ class BasicJaxrsReader extends JaxrsApiReader {
2727
parentMethods: ListBuffer[Method]): Option[ApiListing] = {
2828
val api = cls.getAnnotation(classOf[Api])
2929
val pathAnnotation = cls.getAnnotation(classOf[Path])
30+
var hidden = false
3031

3132
val r = Option(api) match {
32-
case Some(api) => api.value
33+
case Some(api) => {
34+
hidden = api.hidden
35+
api.value
36+
}
3337
case None => Option(pathAnnotation) match {
3438
case Some(p) => p.value
3539
case None => null
@@ -108,7 +112,8 @@ class BasicJaxrsReader extends JaxrsApiReader {
108112
ApiDescription(
109113
addLeadingSlash(endpoint),
110114
None,
111-
orderedOperations.toList)
115+
orderedOperations.toList,
116+
hidden)
112117
}).toList
113118
val models = ModelUtil.modelsFromApis(apis)
114119
Some(ApiListing (

modules/swagger-jaxrs/src/main/scala/com/wordnik/swagger/jaxrs/reader/DefaultJaxrsReader.scala

+2-1
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,8 @@ class DefaultJaxrsApiReader extends JaxrsApiReader {
9090
ApiDescription(
9191
addLeadingSlash(endpoint),
9292
None,
93-
orderedOperations.toList)
93+
orderedOperations.toList,
94+
hidden = api.hidden)
9495
}).toList
9596

9697
val basePath = {

modules/swagger-jersey-jaxrs/src/main/scala/com/wordnik/swagger/jersey/JerseyApiReader.scala

+2-1
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,8 @@ class JerseyApiReader extends JaxrsApiReader {
116116
ApiDescription(
117117
addLeadingSlash(endpoint),
118118
None,
119-
orderedOperations.toList)
119+
orderedOperations.toList,
120+
api.hidden)
120121
}).toList
121122
val models = ModelUtil.modelsFromApis(apis)
122123
val basePath = {

modules/swagger-jersey2-jaxrs/src/main/scala/com/wordnik/swagger/jersey/JerseyApiReader.scala

+2-1
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,8 @@ class JerseyApiReader extends JaxrsApiReader {
116116
ApiDescription(
117117
addLeadingSlash(endpoint),
118118
None,
119-
orderedOperations.toList)
119+
orderedOperations.toList,
120+
api.hidden)
120121
}).toList
121122
val models = ModelUtil.modelsFromApis(apis)
122123
val basePath = {

samples/java-jaxrs-subresource/src/main/java/com/wordnik/swagger/sample/resource/OwnerResource.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import javax.ws.rs.*;
2525

2626
@Path("/owner")
27-
@Api(value = "/owner", description = "Operations about the owners", position = 1)
27+
@Api(hidden = true, value = "/owner", description = "Operations about the owners", position = 1)
2828
@Produces("application/json")
2929
public class OwnerResource {
3030
private String petId;

samples/java-jaxrs-subresource/src/test/scala/ResourceListingIT.scala

-42
This file was deleted.

0 commit comments

Comments
 (0)