diff --git a/modules/openapi-generator/pom.xml b/modules/openapi-generator/pom.xml index c8b85086c3b..60fac00f6dc 100644 --- a/modules/openapi-generator/pom.xml +++ b/modules/openapi-generator/pom.xml @@ -74,8 +74,8 @@ maven-compiler-plugin 3.5.1 - 1.7 - 1.7 + 1.8 + 1.8 @@ -195,6 +195,7 @@ 1.3.0 + 20.0 @@ -257,6 +258,11 @@ commons-cli ${commons-cli-version} + + com.google.guava + guava + ${guava-version} + org.testng testng diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index f55e82545ef..7f2d35fd160 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -1,6 +1,5 @@ package org.openapitools.codegen; -import javax.annotation.Nullable; import java.io.File; import java.util.*; import java.util.ArrayList; @@ -8,10 +7,9 @@ import java.util.LinkedHashMap; import java.util.Map.Entry; import java.util.regex.Matcher; import java.util.regex.Pattern; +import java.util.stream.Collectors; import com.fasterxml.jackson.core.JsonProcessingException; -import com.google.common.base.Function; -import com.google.common.collect.Lists; import com.samskivert.mustache.Mustache.Compiler; import io.swagger.models.Model; @@ -3208,13 +3206,9 @@ public class DefaultCodegen implements CodegenConfig { * @return camelized string */ protected String removeNonNameElementToCamelCase(final String name, final String nonNameElementPattern) { - String result = StringUtils.join(Lists.transform(Lists.newArrayList(name.split(nonNameElementPattern)), new Function() { - @Nullable - @Override - public String apply(String input) { - return StringUtils.capitalize(input); - } - }), ""); + String result = Arrays.stream(name.split(nonNameElementPattern)) + .map(StringUtils::capitalize) + .collect(Collectors.joining("")); if (result.length() > 0) { result = result.substring(0, 1).toLowerCase() + result.substring(1); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java index 8a0b45c2cbb..c3e2bc19bed 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java @@ -20,7 +20,6 @@ import io.swagger.v3.oas.models.tags.Tag; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; -import org.joda.time.DateTime; import org.openapitools.codegen.ignore.CodegenIgnoreProcessor; //import org.openapitools.codegen.languages.AbstractJavaCodegen; import org.openapitools.codegen.utils.ImplementationVersion; @@ -32,6 +31,7 @@ import org.slf4j.LoggerFactory; import java.io.*; import java.util.*; import java.net.*; +import java.time.ZonedDateTime; public class DefaultGenerator extends AbstractGenerator implements Generator { protected final Logger LOGGER = LoggerFactory.getLogger(DefaultGenerator.class); @@ -163,8 +163,8 @@ public class DefaultGenerator extends AbstractGenerator implements Generator { config.processOpts(); config.preprocessOpenAPI(openAPI); config.additionalProperties().put("generatorVersion", ImplementationVersion.read()); - config.additionalProperties().put("generatedDate", DateTime.now().toString()); - config.additionalProperties().put("generatedYear", String.valueOf(DateTime.now().getYear())); + config.additionalProperties().put("generatedDate", ZonedDateTime.now().toString()); + config.additionalProperties().put("generatedYear", String.valueOf(ZonedDateTime.now().getYear())); config.additionalProperties().put("generatorClass", config.getClass().getName()); config.additionalProperties().put("inputSpec", config.getInputSpec()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java index a632153634a..65fd29d0418 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java @@ -2,8 +2,6 @@ package org.openapitools.codegen.languages; import static java.util.Collections.sort; -import com.google.common.collect.LinkedListMultimap; - import org.openapitools.codegen.*; import org.openapitools.codegen.languages.features.BeanValidationFeatures; import org.openapitools.codegen.languages.features.GzipFeatures; @@ -515,12 +513,12 @@ public class JavaClientCodegen extends AbstractJavaCodegen } public static List> modelInheritanceSupportInGson(List allModels) { - LinkedListMultimap byParent = LinkedListMultimap.create(); - for (Object m : allModels) { - Map entry = (Map) m; - CodegenModel parent = ((CodegenModel) entry.get("model")).parentModel; - if (null != parent) { - byParent.put(parent, ((CodegenModel) entry.get("model"))); + Map> byParent = new LinkedHashMap<>(); + for (Object model : allModels) { + Map entry = (Map) model; + CodegenModel parent = ((CodegenModel)entry.get("model")).parentModel; + if(null!= parent) { + byParent.computeIfAbsent(parent, k -> new LinkedList<>()).add((CodegenModel)entry.get("model")); } } List> parentsList = new ArrayList<>(); diff --git a/pom.xml b/pom.xml index 24fa674b245..da644b08715 100644 --- a/pom.xml +++ b/pom.xml @@ -77,9 +77,9 @@ --> - 1.7 - 1.7 - 1.7 + 1.8 + 1.8 + 1.8 LF @@ -153,8 +153,8 @@ maven-compiler-plugin 3.6.1 - 1.7 - 1.7 + 1.8 + 1.8 @@ -189,7 +189,7 @@ 2.10.4 true - 1.7 + 1.8 UTF-8 1g ${javadoc.package.exclude} diff --git a/pom.xml.bash b/pom.xml.bash index 016d6aa78eb..b11979a7ff5 100644 --- a/pom.xml.bash +++ b/pom.xml.bash @@ -83,9 +83,9 @@ --> - 1.7 - 1.7 - 1.7 + 1.8 + 1.8 + 1.8 LF @@ -159,8 +159,8 @@ maven-compiler-plugin 3.6.1 - 1.7 - 1.7 + 1.8 + 1.8 @@ -195,7 +195,7 @@ 2.10.4 true - 1.7 + 1.8 UTF-8 1g ${javadoc.package.exclude} diff --git a/pom.xml.circleci b/pom.xml.circleci index 2c476af704b..0f784bfb041 100644 --- a/pom.xml.circleci +++ b/pom.xml.circleci @@ -81,9 +81,9 @@ --> - 1.7 - 1.7 - 1.7 + 1.8 + 1.8 + 1.8 LF @@ -157,8 +157,8 @@ maven-compiler-plugin 3.6.1 - 1.7 - 1.7 + 1.8 + 1.8 @@ -193,7 +193,7 @@ 2.10.4 true - 1.7 + 1.8 UTF-8 1g ${javadoc.package.exclude} diff --git a/pom.xml.circleci.java7 b/pom.xml.circleci.java7 index fc7c5946e59..0c3c1498de6 100644 --- a/pom.xml.circleci.java7 +++ b/pom.xml.circleci.java7 @@ -87,9 +87,9 @@ --> - 1.7 - 1.7 - 1.7 + 1.8 + 1.8 + 1.8 LF @@ -163,8 +163,8 @@ maven-compiler-plugin 3.6.1 - 1.7 - 1.7 + 1.8 + 1.8 @@ -199,7 +199,7 @@ 2.10.4 true - 1.7 + 1.8 UTF-8 1g ${javadoc.package.exclude} diff --git a/pom.xml.ios b/pom.xml.ios index 77cbc841ced..dce09c75973 100644 --- a/pom.xml.ios +++ b/pom.xml.ios @@ -83,9 +83,9 @@ --> - 1.7 - 1.7 - 1.7 + 1.8 + 1.8 + 1.8 LF @@ -159,8 +159,8 @@ maven-compiler-plugin 3.6.1 - 1.7 - 1.7 + 1.8 + 1.8 @@ -195,7 +195,7 @@ 2.10.4 true - 1.7 + 1.8 UTF-8 1g ${javadoc.package.exclude} diff --git a/pom.xml.shippable b/pom.xml.shippable index 2b2f00ecde9..5b9389020ef 100644 --- a/pom.xml.shippable +++ b/pom.xml.shippable @@ -77,9 +77,9 @@ --> - 1.7 - 1.7 - 1.7 + 1.8 + 1.8 + 1.8 LF @@ -153,8 +153,8 @@ maven-compiler-plugin 3.6.1 - 1.7 - 1.7 + 1.8 + 1.8 @@ -189,7 +189,7 @@ 2.10.4 true - 1.7 + 1.8 UTF-8 1g ${javadoc.package.exclude}