This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push: new ccc5108 CAMEL-17151: Eliminated double slash in api-doc path. (#6360) ccc5108 is described below commit ccc51089f26769fe719cee01c5e26f3b81955d54 Author: Steve Storck <steve...@gmail.com> AuthorDate: Mon Nov 1 01:49:57 2021 -0400 CAMEL-17151: Eliminated double slash in api-doc path. (#6360) CAMEL-17151: Eliminated double slash in api-doc path. --- .../openapi/DefaultRestDefinitionsResolver.java | 2 +- .../org/apache/camel/openapi/OpenApiHelper.java | 2 +- .../camel/openapi/OpenApiRestProducerFactory.java | 15 +++++--------- .../apache/camel/openapi/RestModelConverters.java | 2 +- .../apache/camel/openapi/RestOpenApiReader.java | 2 +- .../apache/camel/openapi/RestOpenApiSupport.java | 23 +++++++++------------- 6 files changed, 18 insertions(+), 28 deletions(-) diff --git a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/DefaultRestDefinitionsResolver.java b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/DefaultRestDefinitionsResolver.java index 8fe28c5..3b228c5 100644 --- a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/DefaultRestDefinitionsResolver.java +++ b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/DefaultRestDefinitionsResolver.java @@ -42,7 +42,7 @@ public class DefaultRestDefinitionsResolver implements RestDefinitionsResolver { @Override public List<String> findCamelContexts() throws Exception { - return Collections.EMPTY_LIST; + return Collections.emptyList(); } } diff --git a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiHelper.java b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiHelper.java index 8574ef7..55b767e 100644 --- a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiHelper.java +++ b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiHelper.java @@ -93,7 +93,7 @@ public final class OpenApiHelper { } private static Map<HttpMethod, OasOperation> getOperationMap(OasPathItem path) { - Map<HttpMethod, OasOperation> result = new LinkedHashMap<HttpMethod, OasOperation>(); + Map<HttpMethod, OasOperation> result = new LinkedHashMap<>(); if (path.get != null) { result.put(HttpMethod.GET, path.get); diff --git a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiRestProducerFactory.java b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiRestProducerFactory.java index 0933d19..9051f10 100644 --- a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiRestProducerFactory.java +++ b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiRestProducerFactory.java @@ -92,9 +92,8 @@ public class OpenApiRestProducerFactory implements RestProducerFactory { String componentName = (String) parameters.get("componentName"); - Producer producer = createHttpProducer(camelContext, openApi, operation, host, verb, path, queryParameters, + return createHttpProducer(camelContext, openApi, operation, host, verb, path, queryParameters, produces, consumes, componentName, parameters); - return producer; } OasDocument loadOpenApiModel(CamelContext camelContext, String apiDoc) throws Exception { @@ -168,9 +167,7 @@ public class OpenApiRestProducerFactory implements RestProducerFactory { Oas30Operation oas30Operation = (Oas30Operation) operation; for (OasResponse response : oas30Operation.responses.getResponses()) { Oas30Response oas30Response = (Oas30Response) response; - for (String ct : oas30Response.content.keySet()) { - list.add(ct); - } + list.addAll(oas30Response.content.keySet()); } } @@ -195,9 +192,7 @@ public class OpenApiRestProducerFactory implements RestProducerFactory { Oas30Operation oas30Operation = (Oas30Operation) operation; if (oas30Operation.requestBody != null && oas30Operation.requestBody.content != null) { - for (String ct : oas30Operation.requestBody.content.keySet()) { - list.add(ct); - } + list.addAll(oas30Operation.requestBody.content.keySet()); } } @@ -214,8 +209,8 @@ public class OpenApiRestProducerFactory implements RestProducerFactory { consumes = consumesBuilder.length() == 0 ? null : consumesBuilder.toString(); } - String basePath = null; - String uriTemplate = null; + String basePath; + String uriTemplate; if (host == null) { //if no explicit host has been configured then use host and base path from the openApi api-doc diff --git a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestModelConverters.java b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestModelConverters.java index 9cc6c3e..0959922 100644 --- a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestModelConverters.java +++ b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestModelConverters.java @@ -97,7 +97,7 @@ public class RestModelConverters { oasDocument.definitions = oasDocument.createDefinitions(); } - Map<String, Schema> swaggerModel = MODEL_CONVERTERS.getInstance().readAll(clazz); + Map<String, Schema> swaggerModel = ModelConverters.getInstance().readAll(clazz); swaggerModel.forEach((key, schema) -> { Oas20SchemaDefinition model = oasDocument.definitions.createSchemaDefinition(key); oasDocument.definitions.addDefinition(key, model); diff --git a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestOpenApiReader.java b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestOpenApiReader.java index 29ce035..e2b40dc 100644 --- a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestOpenApiReader.java +++ b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestOpenApiReader.java @@ -467,7 +467,7 @@ public class RestOpenApiReader { private String buildBasePath(CamelContext camelContext, RestDefinition rest) { // used during gathering of apis - String basePath = getValue(camelContext, rest.getPath()); + String basePath = FileUtil.stripLeadingSeparator(getValue(camelContext, rest.getPath())); // is there any context-path which we must use in base path for each rest service String cp = camelContext.getRestConfiguration() != null ? camelContext.getRestConfiguration().getContextPath() : null; diff --git a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestOpenApiSupport.java b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestOpenApiSupport.java index 0280614..86a89ca 100644 --- a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestOpenApiSupport.java +++ b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/RestOpenApiSupport.java @@ -130,7 +130,7 @@ public class RestOpenApiSupport { String trimmedScheme = scheme.trim(); if (ObjectHelper.isNotEmpty(trimmedScheme)) { if (((Oas20Document) openApi).schemes == null) { - ((Oas20Document) openApi).schemes = new ArrayList(); + ((Oas20Document) openApi).schemes = new ArrayList<>(); } ((Oas20Document) openApi).schemes.add(trimmedScheme.toLowerCase()); } @@ -159,8 +159,7 @@ public class RestOpenApiSupport { String[] schemes = proto.split(","); for (String schema : schemes) { String trimmedScheme = schema.trim(); - String serverUrl = new StringBuilder().append(trimmedScheme.toLowerCase()).append("://").append(host) - .append(basePath).toString(); + String serverUrl = String.format("%s://%s%s", trimmedScheme.toLowerCase(), host, basePath); ((Oas30Document) openApi).addServer(serverUrl, null); } @@ -210,11 +209,8 @@ public class RestOpenApiSupport { URL serverUrl = new URL( parseVariables(((Oas30Document) openapi).getServers().get(0).url, (Oas30Server) ((Oas30Document) openapi).getServers().get(0))); - basePath = serverUrl.getPath(); - if (basePath.indexOf("//") == 0) { - // strip off the first "/" if double "/" exists - basePath = basePath.substring(1); - } + // strip off the first "/" if double "/" exists + basePath = serverUrl.getPath().replaceAll("//", "/"); if ("/".equals(basePath)) { basePath = ""; } @@ -232,7 +228,7 @@ public class RestOpenApiSupport { } public static String parseVariables(String url, Oas30Server server) { - Pattern p = Pattern.compile("\\{(.*?)\\}"); + Pattern p = Pattern.compile("\\{(.*?)}"); Matcher m = p.matcher(url); while (m.find()) { String var = m.group(1); @@ -286,7 +282,6 @@ public class RestOpenApiSupport { String contactEmail = (String) config.get("api.contact.email"); if (!openApiConfig.isOpenApi3()) { - setInfoOas20(openApiConfig, version, title, description, termsOfService, licenseName, licenseUrl, contactName, contactUrl, contactEmail); } else { @@ -396,8 +391,8 @@ public class RestOpenApiSupport { .getOrDefault("api.specification.contentType.json", "application/json")); // read the rest-dsl into openApi model - OasDocument openApi - = reader.read(camelContext, rests, openApiConfig, camelContext.getName(), classResolver); + OasDocument openApi = reader.read( + camelContext, rests, openApiConfig, camelContext.getName(), classResolver); if (configuration.isUseXForwardHeaders()) { setupXForwardedHeaders(openApi, headers); } @@ -417,8 +412,8 @@ public class RestOpenApiSupport { .getOrDefault("api.specification.contentType.yaml", "text/yaml")); // read the rest-dsl into openApi model - OasDocument openApi - = reader.read(camelContext, rests, openApiConfig, camelContext.getName(), classResolver); + OasDocument openApi = reader.read( + camelContext, rests, openApiConfig, camelContext.getName(), classResolver); if (configuration.isUseXForwardHeaders()) { setupXForwardedHeaders(openApi, headers); }