Skip to content

Commit 39487d9

Browse files
committed
disabled outdated routes, made languages GET method dynamic
1 parent aa37542 commit 39487d9

File tree

1 file changed

+18
-28
lines changed

1 file changed

+18
-28
lines changed

modules/swagger-generator/src/main/java/com/wordnik/swagger/generator/resource/SwaggerResource.java

Lines changed: 18 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,20 @@
1818
public class SwaggerResource {
1919
private static Map<String, Generated> fileMap = new HashMap<String, Generated>();
2020

21+
static List<String> clients = new ArrayList<String>();
22+
static List<String> servers = new ArrayList<String>();
23+
static {
24+
List<CodegenConfig> extensions = Codegen.getExtensions();
25+
for(CodegenConfig config : extensions) {
26+
if(config.getTag().equals(CodegenType.CLIENT) || config.getTag().equals(CodegenType.DOCUMENTATION)) {
27+
clients.add(config.getName());
28+
}
29+
else if(config.getTag().equals(CodegenType.SERVER)) {
30+
servers.add(config.getName());
31+
}
32+
}
33+
}
34+
2135
@GET
2236
@Path("/download/{fileId}")
2337
@Produces({"application/zip", "application/json"})
@@ -70,46 +84,22 @@ public Response generateClient(
7084
response = String.class,
7185
responseContainer = "List")
7286
public Response clientOptions() {
73-
String[] languages = {"android", "java", "php", "objc", "docs"};
87+
String[] languages = new String[clients.size()];
88+
languages = clients.toArray(languages);
7489
return Response.ok().entity(languages).build();
7590
}
7691

77-
@GET
78-
@Path("/clients/{language}")
79-
@ApiOperation(value = "Gets options for a client generation",
80-
notes = "Values which are not required will use the provided default values",
81-
response = InputOption.class,
82-
responseContainer = "List")
83-
@ApiResponses(value = {
84-
@com.wordnik.swagger.annotations.ApiResponse(code = 400, message = "Invalid model supplied", response = ValidationMessage.class),
85-
})
86-
87-
public Response clientLibraryOptions(
88-
@ApiParam(value = "The target language for the client library", allowableValues = "android,java,php,objc,docs", required = true) @PathParam("language") String language) {
89-
return Response.ok().entity(Generator.clientOptions(language)).build();
90-
}
91-
9292
@GET
9393
@Path("/servers")
9494
@ApiOperation(value = "Gets languages supported by the server generator",
9595
response = String.class,
9696
responseContainer = "List")
9797
public Response serverOptions() {
98-
String[] languages = {"jaxrs","nodejs"};
98+
String[] languages = new String[servers.size()];
99+
languages = servers.toArray(languages);
99100
return Response.ok().entity(languages).build();
100101
}
101102

102-
@GET
103-
@Path("/servers/{language}")
104-
@ApiOperation(value = "Gets options for a server generation",
105-
notes = "Values which are not required will use the provided default values",
106-
response = InputOption.class,
107-
responseContainer = "List")
108-
public Response serverFrameworkOptions(
109-
@ApiParam(value = "The target framework for the client library", allowableValues = "jaxrs,nodejs", required = true) @PathParam("language") String framework) {
110-
return Response.ok().entity(Generator.serverOptions(framework)).build();
111-
}
112-
113103
@POST
114104
@Path("/servers/{framework}")
115105
@ApiOperation(value = "Generates a server library for the supplied server framework",

0 commit comments

Comments
 (0)