Skip to content

Commit 7d82b05

Browse files
committed
Moving instantiationTypes, typeMappings, languageSpecificPrimitives, additionalProperties, and reservedWordsMappings out of configOptions and converting it into a list, rather than being a comma-separated string.
1 parent c1825b4 commit 7d82b05

File tree

1 file changed

+85
-6
lines changed
  • modules/swagger-codegen-maven-plugin/src/main/java/io/swagger/codegen/plugin

1 file changed

+85
-6
lines changed

modules/swagger-codegen-maven-plugin/src/main/java/io/swagger/codegen/plugin/CodeGenMojo.java

Lines changed: 85 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -178,9 +178,42 @@ public class CodeGenMojo extends AbstractMojo {
178178
@Parameter(name = "configOptions")
179179
private Map<?, ?> configOptions;
180180

181+
/**
182+
* A map of classes and the import that should be used for that class
183+
*/
184+
@Parameter(name = "instantiationTypes")
185+
private List<String> instantiationTypes;
186+
187+
/**
188+
* A map of classes and the import that should be used for that class
189+
*/
181190
@Parameter(name = "importMappings")
182191
private List<String> importMappings;
183192

193+
/**
194+
* A map of classes and the import that should be used for that class
195+
*/
196+
@Parameter(name = "typeMappings")
197+
private List<String> typeMappings;
198+
199+
/**
200+
* A map of classes and the import that should be used for that class
201+
*/
202+
@Parameter(name = "languageSpecificPrimitives")
203+
private List<String> languageSpecificPrimitives;
204+
205+
/**
206+
* A map of classes and the import that should be used for that class
207+
*/
208+
@Parameter(name = "additionalProperties")
209+
private List<String> additionalProperties;
210+
211+
/**
212+
* A map of classes and the import that should be used for that class
213+
*/
214+
@Parameter(name = "reservedWordsMappings")
215+
private List<String> reservedWordsMappings;
216+
184217
/**
185218
* Generate the apis
186219
*/
@@ -390,44 +423,90 @@ public void execute() throws MojoExecutionException {
390423
System.setProperty("withXml", withXml.toString());
391424

392425
if (configOptions != null) {
393-
394-
if (configOptions.containsKey("instantiation-types")) {
426+
// Retained for backwards-compataibility with configOptions -> instantiation-types
427+
if (instantiationTypes == null && configOptions.containsKey("instantiation-types")) {
395428
applyInstantiationTypesKvp(configOptions.get("instantiation-types").toString(),
396429
configurator);
397430
}
398431

432+
// Retained for backwards-compataibility with configOptions -> import-mappings
399433
if (importMappings == null && configOptions.containsKey("import-mappings")) {
400434
applyImportMappingsKvp(configOptions.get("import-mappings").toString(),
401435
configurator);
402436
}
403437

404-
if (configOptions.containsKey("type-mappings")) {
438+
// Retained for backwards-compataibility with configOptions -> type-mappings
439+
if (typeMappings == null && configOptions.containsKey("type-mappings")) {
405440
applyTypeMappingsKvp(configOptions.get("type-mappings").toString(), configurator);
406441
}
407442

408-
if (configOptions.containsKey("language-specific-primitives")) {
443+
// Retained for backwards-compataibility with configOptions -> language-specific-primitives
444+
if (languageSpecificPrimitives == null && configOptions.containsKey("language-specific-primitives")) {
409445
applyLanguageSpecificPrimitivesCsv(configOptions
410446
.get("language-specific-primitives").toString(), configurator);
411447
}
412448

413-
if (configOptions.containsKey("additional-properties")) {
449+
// Retained for backwards-compataibility with configOptions -> additional-properties
450+
if (additionalProperties == null && configOptions.containsKey("additional-properties")) {
414451
applyAdditionalPropertiesKvp(configOptions.get("additional-properties").toString(),
415452
configurator);
416453
}
417454

418-
if (configOptions.containsKey("reserved-words-mappings")) {
455+
// Retained for backwards-compataibility with configOptions -> reserved-words-mappings
456+
if (reservedWordsMappings == null && configOptions.containsKey("reserved-words-mappings")) {
419457
applyReservedWordsMappingsKvp(configOptions.get("reserved-words-mappings")
420458
.toString(), configurator);
421459
}
422460
}
423461

462+
//Apply Instantiation Types
463+
if (instantiationTypes != null && !configOptions.containsKey("instantiation-types")) {
464+
String instantiationTypesAsString = instantiationTypes.toString();
465+
applyInstantiationTypesKvp(
466+
instantiationTypesAsString.substring(0, instantiationTypesAsString.length() - 1),
467+
configurator);
468+
}
469+
470+
//Apply Import Mappings
424471
if (importMappings != null && !configOptions.containsKey("import-mappings")) {
425472
String importMappingsAsString = importMappings.toString();
426473
applyImportMappingsKvp(
427474
importMappingsAsString.substring(0, importMappingsAsString.length() - 1),
428475
configurator);
429476
}
430477

478+
//Apply Type Mappings
479+
if (typeMappings != null && !configOptions.containsKey("type-mappings")) {
480+
String typeMappingsAsString = typeMappings.toString();
481+
applyTypeMappingsKvp(
482+
typeMappingsAsString.substring(0, typeMappingsAsString.length() - 1),
483+
configurator);
484+
}
485+
486+
//Apply Language Specific Primitives
487+
if (languageSpecificPrimitives != null && !configOptions.containsKey("language-specific-primitives")) {
488+
String languageSpecificPrimitivesAsString = languageSpecificPrimitives.toString();
489+
applyLanguageSpecificPrimitivesCsv(
490+
languageSpecificPrimitivesAsString.substring(0,languageSpecificPrimitivesAsString.length() - 1),
491+
configurator);
492+
}
493+
494+
//Apply Additional Properties
495+
if (additionalProperties != null && !configOptions.containsKey("additional-properties")) {
496+
String additionalPropertiesAsString = additionalProperties.toString();
497+
applyAdditionalPropertiesKvp(
498+
additionalPropertiesAsString.substring(0, additionalPropertiesAsString.length() - 1),
499+
configurator);
500+
}
501+
502+
//Apply Reserved Words Mappings
503+
if (reservedWordsMappings != null && !configOptions.containsKey("reserved-words-mappings")) {
504+
String reservedWordsMappingsAsString = reservedWordsMappings.toString();
505+
applyReservedWordsMappingsKvp(
506+
reservedWordsMappingsAsString.substring(0, reservedWordsMappingsAsString.length() - 1),
507+
configurator);
508+
}
509+
431510
if (environmentVariables != null) {
432511

433512
for (String key : environmentVariables.keySet()) {

0 commit comments

Comments
 (0)