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 2019/12/20 09:01:31 UTC

[camel] 02/06: CAMEL-14303: Separate out httpRestrictMethod in utils.

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 2c07349cae45ba8fcffe4c6515872ea1d2b63a19
Author: Bob Paulin <bo...@bobpaulin.com>
AuthorDate: Thu Dec 19 21:13:59 2019 -0600

    CAMEL-14303: Separate out httpRestrictMethod in utils.
---
 .../camel/component/jetty/JettyHttpComponent.java  |  4 +++-
 .../component/netty/http/NettyHttpComponent.java   |  4 +++-
 .../camel/component/servlet/ServletComponent.java  |  6 ++++--
 .../apache/camel/support/RestComponentHelper.java  | 25 ++++++----------------
 4 files changed, 17 insertions(+), 22 deletions(-)

diff --git a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
index e586571..3540dd0 100644
--- a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
+++ b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
@@ -1086,8 +1086,10 @@ public abstract class JettyHttpComponent extends HttpCommonComponent implements
         if (api) {
             map.put("matchOnUriPrefix", "true");
         }
+        
+        RestComponentHelper.addHttpRestrictParam(map, verb, cors);
 
-        String url = RestComponentHelper.createRestConsumerUrl("jetty", verb, scheme, host, port, path, cors, map);
+        String url = RestComponentHelper.createRestConsumerUrl("jetty", scheme, host, port, path, map);
 
         JettyHttpEndpoint endpoint = camelContext.getEndpoint(url, JettyHttpEndpoint.class);
         setProperties(camelContext, endpoint, parameters);
diff --git a/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpComponent.java b/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpComponent.java
index 91516f3..a53a21e 100644
--- a/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpComponent.java
+++ b/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpComponent.java
@@ -385,8 +385,10 @@ public class NettyHttpComponent extends NettyComponent implements HeaderFilterSt
         if (api) {
             map.put("matchOnUriPrefix", "true");
         }
+        
+        RestComponentHelper.addHttpRestrictParam(map, verb, cors);
 
-        String url = RestComponentHelper.createRestConsumerUrl("netty-http", verb, scheme, host, port, path, cors, map);
+        String url = RestComponentHelper.createRestConsumerUrl("netty-http", scheme, host, port, path, map);
 
         NettyHttpEndpoint endpoint = camelContext.getEndpoint(url, NettyHttpEndpoint.class);
         setProperties(camelContext, endpoint, parameters);
diff --git a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/ServletComponent.java b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/ServletComponent.java
index de4b955..7e25c79 100644
--- a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/ServletComponent.java
+++ b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/ServletComponent.java
@@ -290,9 +290,11 @@ public class ServletComponent extends HttpCommonComponent implements RestConsume
         
         if (api) {
             map.put("matchOnUriPrefix", "true");
-        } 
+        }
+        
+        RestComponentHelper.addHttpRestrictParam(map, verb, cors);
 
-        String url = RestComponentHelper.createRestConsumerUrl("servlet", verb, path, cors, map);  
+        String url = RestComponentHelper.createRestConsumerUrl("servlet", path, map);  
 
         ServletEndpoint endpoint = camelContext.getEndpoint(url, ServletEndpoint.class);
         setProperties(camelContext, endpoint, parameters);
diff --git a/core/camel-support/src/main/java/org/apache/camel/support/RestComponentHelper.java b/core/camel-support/src/main/java/org/apache/camel/support/RestComponentHelper.java
index 39c0632..aa20d9a 100644
--- a/core/camel-support/src/main/java/org/apache/camel/support/RestComponentHelper.java
+++ b/core/camel-support/src/main/java/org/apache/camel/support/RestComponentHelper.java
@@ -38,12 +38,12 @@ public final class RestComponentHelper {
      * 
      * @param queryMap the map of Endpoint options to apply the HTTP restrict settings to
      * @param verb the HTTP verb for the route
-     * @param cors is cors enabled/disabled
+     * @param addOptions should OPTIONS verb be added.
      * @return the map of Endpoint Properties with HTTP Restrict Options set
      */
-    public static Map<String, Object> addHttpRestrictParam(Map<String, Object> queryMap, String verb, Boolean cors) {
+    public static Map<String, Object> addHttpRestrictParam(Map<String, Object> queryMap, String verb, boolean addOptions) {
         String restrict = verb.toUpperCase(Locale.US);
-        if (cors) {
+        if (addOptions) {
             restrict += ",OPTIONS";
         }
         queryMap.put("httpMethodRestrict", restrict);
@@ -95,15 +95,13 @@ public final class RestComponentHelper {
      * Creates the Rest consumers url based on component and url options.
      * 
      * @param componentName the name of the rest component
-     * @param verb the HTTP verb for the route
      * @param path the HTTP path of the route
-     * @param cors is cors enabled/disabled
      * @param queryMap the endpoint query options
      * @return a string of the component route url
      * @throws URISyntaxException - is thrown if uri has invalid syntax.
      */
-    public static String createRestConsumerUrl(String componentName, String verb, String path, Boolean cors, Map<String, Object> queryMap) throws URISyntaxException {
-        String query = generateComponentQueryString(verb, cors, queryMap);
+    public static String createRestConsumerUrl(String componentName, String path, Map<String, Object> queryMap) throws URISyntaxException {
+        String query = URISupport.createQueryString(queryMap);
         return applyFormatAndQuery("%s:/%s", query, componentName, path);
     }
     
@@ -112,29 +110,20 @@ public final class RestComponentHelper {
      * Creates the Rest consumers url based on component and url options.
      * 
      * @param componentName the name of the rest component
-     * @param verb the HTTP verb for the route
      * @param scheme the scheme of the HTTP route http/https
      * @param host the host of the HTTP route
      * @param port the port the route will be exposed through
      * @param path the HTTP path of the route
-     * @param cors is cors enabled/disabled
      * @param queryMap the endpoint query options
      * @return a string of the component route url
      * @throws URISyntaxException - is thrown if uri has invalid syntax.
      */
-    public static String createRestConsumerUrl(String componentName, String verb, String scheme, String host, int port, String path, Boolean cors, Map<String, Object> queryMap) throws URISyntaxException {
+    public static String createRestConsumerUrl(String componentName, String scheme, String host, int port, String path, Map<String, Object> queryMap) throws URISyntaxException {
         
-        String query = generateComponentQueryString(verb, cors, queryMap);
+        String query = URISupport.createQueryString(queryMap);
         
         return applyFormatAndQuery("%s:%s://%s:%s/%s", query, componentName, scheme, host, port, path);
     }
-
-    private static String generateComponentQueryString(String verb, Boolean cors, Map<String, Object> queryMap)
-            throws URISyntaxException {
-        addHttpRestrictParam(queryMap, verb, cors);
-        
-        return URISupport.createQueryString(queryMap);
-    }
     
     private static String applyFormatAndQuery(String format, String query, Object... formatOptions) {
         // get the endpoint