You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2020/11/23 12:31:08 UTC

[camel] 05/06: CAMEL-15858: remove openapi dependency

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit f5509b77ed4fd3819c30c050c32645e16c4ef0dd
Author: ex324 <ch...@helsana.ch>
AuthorDate: Mon Nov 23 11:28:29 2020 +0100

    CAMEL-15858: remove openapi dependency
---
 camel-dependencies/pom.xml                         |  1 -
 parent/pom.xml                                     |  1 -
 tooling/maven/camel-restdsl-openapi-plugin/pom.xml |  5 ----
 .../generator/openapi/AbstractGenerateMojo.java    | 31 ++++++++++++++++++----
 4 files changed, 26 insertions(+), 12 deletions(-)

diff --git a/camel-dependencies/pom.xml b/camel-dependencies/pom.xml
index bb3dee3..a3cf169 100644
--- a/camel-dependencies/pom.xml
+++ b/camel-dependencies/pom.xml
@@ -457,7 +457,6 @@
     <okclient-version>3.14.9</okclient-version>
     <olingo2-version>2.0.11</olingo2-version>
     <olingo4-version>4.7.1</olingo4-version>
-    <openapi-generator-version>4.3.1</openapi-generator-version>
     <openjpa-version>3.1.2</openjpa-version>
     <openstack4j-version>3.8</openstack4j-version>
     <opentelemetry-version>0.8.0</opentelemetry-version>
diff --git a/parent/pom.xml b/parent/pom.xml
index 88c9020..674ded0 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -439,7 +439,6 @@
         <networknt-json-schema-validator-version>1.0.44</networknt-json-schema-validator-version>
         <nimbus-jose-jwt>8.9</nimbus-jose-jwt>
         <nitrite-version>3.4.2</nitrite-version>
-        <openapi-generator-version>4.3.1</openapi-generator-version>
         <!-- should be in-sync with deltaspike -->
         <openwebbeans1-version>1.2.7</openwebbeans1-version>
         <openwebbeans-version>1.7.3</openwebbeans-version>
diff --git a/tooling/maven/camel-restdsl-openapi-plugin/pom.xml b/tooling/maven/camel-restdsl-openapi-plugin/pom.xml
index d2e1d7a..da41363 100644
--- a/tooling/maven/camel-restdsl-openapi-plugin/pom.xml
+++ b/tooling/maven/camel-restdsl-openapi-plugin/pom.xml
@@ -56,11 +56,6 @@
             <version>${snakeyaml-version}</version>
         </dependency>
         <dependency>
-            <groupId>org.openapitools</groupId>
-            <artifactId>openapi-generator</artifactId>
-            <version>${openapi-generator-version}</version>
-        </dependency>
-        <dependency>
             <groupId>org.apache.maven</groupId>
             <artifactId>maven-core</artifactId>
         </dependency>
diff --git a/tooling/maven/camel-restdsl-openapi-plugin/src/main/java/org/apache/camel/maven/generator/openapi/AbstractGenerateMojo.java b/tooling/maven/camel-restdsl-openapi-plugin/src/main/java/org/apache/camel/maven/generator/openapi/AbstractGenerateMojo.java
index 2ed0dc7..0123beb 100644
--- a/tooling/maven/camel-restdsl-openapi-plugin/src/main/java/org/apache/camel/maven/generator/openapi/AbstractGenerateMojo.java
+++ b/tooling/maven/camel-restdsl-openapi-plugin/src/main/java/org/apache/camel/maven/generator/openapi/AbstractGenerateMojo.java
@@ -21,26 +21,29 @@ import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
 import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.net.URLClassLoader;
 import java.net.URLConnection;
+import java.net.URLDecoder;
 import java.nio.channels.Channels;
 import java.nio.channels.FileChannel;
 import java.nio.channels.ReadableByteChannel;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Map.Entry;
 import java.util.Optional;
 
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import io.apicurio.datamodels.Library;
 import io.apicurio.datamodels.openapi.models.OasDocument;
-import io.swagger.v3.parser.core.models.AuthorizationValue;
 import org.apache.camel.generator.openapi.DestinationGenerator;
 import org.apache.camel.util.IOHelper;
 import org.apache.camel.util.ObjectHelper;
@@ -52,7 +55,6 @@ import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.project.MavenProject;
-import org.openapitools.codegen.auth.AuthParser;
 import org.twdata.maven.mojoexecutor.MojoExecutor;
 import org.yaml.snakeyaml.Yaml;
 
@@ -304,9 +306,9 @@ abstract class AbstractGenerateMojo extends AbstractMojo {
 
             URLConnection conn = inputSpecRemoteUrl.openConnection();
             if (isNotEmpty(auth)) {
-                List<AuthorizationValue> authList = AuthParser.parse(auth);
-                for (AuthorizationValue a : authList) {
-                    conn.setRequestProperty(a.getKeyName(), a.getValue());
+                Map<String, String> authList = parse(auth);
+                for (Entry<String, String> a : authList.entrySet()) {
+                    conn.setRequestProperty(a.getKey(), a.getValue());
                 }
             }
             try (ReadableByteChannel readableByteChannel = Channels.newChannel(conn.getInputStream())) {
@@ -377,4 +379,23 @@ abstract class AbstractGenerateMojo extends AbstractMojo {
             return null;
         }
     }
+    
+    private Map<String, String> parse(String urlEncodedAuthStr) {
+    	Map<String, String> auths = new HashMap<String, String>();
+        if (isNotEmpty(urlEncodedAuthStr)) {
+            String[] parts = urlEncodedAuthStr.split(",");
+            for (String part : parts) {
+                String[] kvPair = part.split(":");
+                if (kvPair.length == 2) {
+                    try {
+                        auths.put(URLDecoder.decode(kvPair[0], "UTF-8"), URLDecoder.decode(kvPair[1], "UTF-8"));
+                    } catch (UnsupportedEncodingException e) {
+                    	getLog().warn(e.getMessage());
+                    }
+                }
+            }
+        }
+        return auths;
+    }
+
 }