Skip to content

Commit f8485f2

Browse files
committed
Merge pull request #1317 from cbornet/online_options
Add options to online generator
2 parents ea1c280 + 984b645 commit f8485f2

File tree

1 file changed

+19
-2
lines changed
  • modules/swagger-generator/src/main/java/io/swagger/generator/online

1 file changed

+19
-2
lines changed

modules/swagger-generator/src/main/java/io/swagger/generator/online/Generator.java

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import io.swagger.codegen.ClientOpts;
66
import io.swagger.codegen.Codegen;
77
import io.swagger.codegen.CodegenConfig;
8+
import io.swagger.codegen.CodegenConfigLoader;
89
import io.swagger.generator.exception.ApiException;
910
import io.swagger.generator.exception.BadRequestException;
1011
import io.swagger.generator.model.GeneratorInput;
@@ -16,6 +17,8 @@
1617
import org.slf4j.Logger;
1718
import org.slf4j.LoggerFactory;
1819

20+
import static org.apache.commons.lang3.StringUtils.isNotEmpty;
21+
1922
import java.io.File;
2023
import java.util.ArrayList;
2124
import java.util.List;
@@ -52,10 +55,24 @@ public static String generateClient(String language, GeneratorInput opts) throws
5255
.opts(clientOpts)
5356
.swagger(swagger);
5457

55-
CodegenConfig codegenConfig = Codegen.getConfig(language);
56-
if (codegenConfig == null) {
58+
CodegenConfig codegenConfig=null;
59+
try {
60+
codegenConfig = CodegenConfigLoader.forName(language);
61+
} catch(RuntimeException e) {
5762
throw new BadRequestException(400, "Unsupported target " + language + " supplied");
5863
}
64+
65+
if (opts.getOptions() != null) {
66+
for(String key : new String[]{"apiPackage", "modelPackage", "invokerPackage", "groupId", "artifactId", "artifactVersion"}) {
67+
if(isNotEmpty(opts.getOptions().get(key))) {
68+
codegenConfig.additionalProperties().put(key , opts.getOptions().get(key));
69+
}
70+
}
71+
72+
if (isNotEmpty(opts.getOptions().get("library"))) {
73+
codegenConfig.setLibrary(opts.getOptions().get("library"));
74+
}
75+
}
5976

6077
codegenConfig.setOutputDir(outputFolder);
6178

0 commit comments

Comments
 (0)