Merge remote-tracking branch 'origin/master' into 3.3.x

This commit is contained in:
William Cheng
2018-08-23 18:21:44 +08:00
1132 changed files with 20804 additions and 17446 deletions

View File

@@ -24,6 +24,8 @@ import io.airlift.airline.ParseOptionMissingException;
import io.airlift.airline.ParseOptionMissingValueException;
import org.openapitools.codegen.cmd.*;
import java.util.Locale;
/**
* User: lanwen Date: 24.03.15 Time: 17:56
* <p>
@@ -40,6 +42,7 @@ public class OpenAPIGenerator {
Cli.<Runnable>builder("openapi-generator-cli")
.withDescription(
String.format(
Locale.ROOT,
"OpenAPI generator CLI (version %s).",
version))
.withDefaultCommand(ListGenerators.class)
@@ -69,10 +72,10 @@ public class OpenAPIGenerator {
System.exit(1);
}
} catch (ParseArgumentsUnexpectedException e) {
System.err.printf("[error] %s%n%nSee 'openapi-generator-cli help' for usage.%n", e.getMessage());
System.err.printf(Locale.ROOT,"[error] %s%n%nSee 'openapi-generator-cli help' for usage.%n", e.getMessage());
System.exit(1);
} catch (ParseOptionMissingException | ParseOptionMissingValueException e) {
System.err.printf("[error] %s%n", e.getMessage());
System.err.printf(Locale.ROOT,"[error] %s%n", e.getMessage());
System.exit(1);
}
}

View File

@@ -17,6 +17,8 @@
package org.openapitools.codegen.cmd;
import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.core.spi.FilterAttachable;
import io.airlift.airline.Command;
import io.airlift.airline.Option;
import org.openapitools.codegen.ClientOptInput;
@@ -32,6 +34,7 @@ import static org.apache.commons.lang3.StringUtils.isNotEmpty;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Stream;
/**
* User: lanwen Date: 24.03.15 Time: 20:22
@@ -199,8 +202,23 @@ public class Generate implements Runnable {
description = "Skips the default behavior of validating an input specification.")
private Boolean skipValidateSpec;
@Option(name = {"--log-to-stderr"},
title = "Log to STDERR",
description = "write all log messages (not just errors) to STDOUT."
+ " Useful for piping the JSON output of debug options (e.g. `-DdebugOperations`) to an external parser directly while testing a generator.")
private Boolean logToStderr;
@Override
public void run() {
if (logToStderr != null) {
LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
Stream.of(Logger.ROOT_LOGGER_NAME, "io.swagger", "org.openapitools")
.map(lc::getLogger)
.peek(logger -> logger.detachAppender("STDOUT"))
.reduce((logger, next) -> logger.getName().equals(Logger.ROOT_LOGGER_NAME) ? logger : next)
.map(root -> root.getAppender("STDERR"))
.ifPresent(FilterAttachable::clearAllFilters);
}
// attempt to read from config file
CodegenConfigurator configurator = CodegenConfigurator.fromFile(configFile);

View File

@@ -21,6 +21,8 @@ import ch.lambdaj.collection.LambdaIterable;
import io.airlift.airline.Command;
import org.openapitools.codegen.CodegenConfig;
import java.util.Locale;
import static ch.lambdaj.Lambda.on;
import static ch.lambdaj.collection.LambdaCollections.with;
import static java.util.ServiceLoader.load;
@@ -34,6 +36,6 @@ public class Langs implements Runnable {
public void run() {
LambdaIterable<String> langs =
with(load(CodegenConfig.class)).extract(on(CodegenConfig.class).getName());
System.out.printf("Available languages (generators): %s%n", langs);
System.out.printf(Locale.ROOT, "Available languages (generators): %s%n", langs);
}
}

View File

@@ -9,6 +9,7 @@ import org.openapitools.codegen.CodegenType;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
import java.util.Locale;
// NOTE: List can later have subcommands such as list languages, list types, list frameworks, etc.
@Command(name = "list", description = "Lists the available generators")
@@ -53,6 +54,6 @@ public class ListGenerators implements Runnable {
}
}
System.out.printf("%s%n", sb.toString());
System.out.printf(Locale.ROOT,"%s%n", sb.toString());
}
}