CAMEL-8038: Fixed @UriPath

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/bd364a95
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/bd364a95
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/bd364a95

Branch: refs/heads/master
Commit: bd364a95fe6b858e81168bc7c2b34c1e0852ec70
Parents: 4883e1f
Author: Claus Ibsen <davscl...@apache.org>
Authored: Wed Nov 26 11:40:59 2014 +0100
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Wed Nov 26 11:41:54 2014 +0100

----------------------------------------------------------------------
 .../camel/component/cxf/CxfComponent.java       |  4 +-
 .../apache/camel/component/cxf/CxfEndpoint.java | 43 +++++++++++++-------
 .../component/cxf/jaxrs/CxfRsComponent.java     |  5 ++-
 .../component/cxf/jaxrs/CxfRsEndpoint.java      | 41 ++++++++++++-------
 4 files changed, 61 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/bd364a95/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java
----------------------------------------------------------------------
diff --git 
a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java
 
b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java
index b2af474..9fa8e00 100644
--- 
a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java
+++ 
b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java
@@ -43,6 +43,7 @@ public class CxfComponent extends 
HeaderFilterStrategyComponent {
     public void setAllowStreaming(Boolean b) {
         allowStreaming = b;
     }
+
     public Boolean getAllowStreaming() {
         return allowStreaming;
     }
@@ -73,7 +74,8 @@ public class CxfComponent extends 
HeaderFilterStrategyComponent {
             if (getCamelContext().equals(result.getCamelContext())) {
                 result.setCamelContext(getCamelContext());
             }
-            
+            result.setBeanId(beanId);
+
         } else {
             // endpoint URI does not specify a bean
             result = new CxfEndpoint(remaining, this);

http://git-wip-us.apache.org/repos/asf/camel/blob/bd364a95/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
----------------------------------------------------------------------
diff --git 
a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
 
b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
index c116117..dffc1d7 100644
--- 
a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
+++ 
b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
@@ -60,6 +60,7 @@ import org.apache.camel.spi.HeaderFilterStrategy;
 import org.apache.camel.spi.HeaderFilterStrategyAware;
 import org.apache.camel.spi.UriEndpoint;
 import org.apache.camel.spi.UriParam;
+import org.apache.camel.spi.UriPath;
 import org.apache.camel.util.EndpointHelper;
 import org.apache.camel.util.ObjectHelper;
 import org.apache.camel.util.UnsafeUriCharactersEncoder;
@@ -110,15 +111,20 @@ import org.slf4j.LoggerFactory;
  * {@link CxfBinding}, and {@link HeaderFilterStrategy}.  The default 
DataFormat
  * mode is {@link DataFormat#POJO}.
  */
-@UriEndpoint(scheme = "cxf", consumerClass = CxfConsumer.class)
+@UriEndpoint(scheme = "cxf", consumerClass = CxfConsumer.class, label = 
"http,soap,webservice")
 public class CxfEndpoint extends DefaultEndpoint implements 
HeaderFilterStrategyAware, Service, Cloneable {
 
     private static final Logger LOG = 
LoggerFactory.getLogger(CxfEndpoint.class);
 
     protected Bus bus;
-    @UriParam
-    private boolean createBus;
 
+    @UriPath(description = "To lookup an existing configured CxfEndpoint. Must 
used bean: as prefix.")
+    private String beanId;
+    @UriPath
+    private String address;
+
+    @UriParam(defaultValue = "false")
+    private boolean createBus;
     @UriParam
     private String wsdlURL;
     private Class<?> serviceClass;
@@ -140,31 +146,28 @@ public class CxfEndpoint extends DefaultEndpoint 
implements HeaderFilterStrategy
     private Boolean wrappedStyle;
     @UriParam
     private Boolean allowStreaming;
-    @UriParam
+    @UriParam(defaultValue = "POJO")
     private DataFormat dataFormat = DataFormat.POJO;
     @UriParam
     private String publishedEndpointUrl;
-    @UriParam
+    @UriParam(defaultValue = "true")
     private boolean inOut = true;
     private CxfBinding cxfBinding;
     private HeaderFilterStrategy headerFilterStrategy;
-    @UriParam
     private AtomicBoolean getBusHasBeenCalled = new AtomicBoolean(false);
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean isSetDefaultBus;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean loggingFeatureEnabled;
     @UriParam
     private int loggingSizeLimit;
-    @UriParam
-    private String address;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean mtomEnabled;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean skipPayloadMessagePartCheck;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean skipFaultLogging;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean mergeProtocolHeaders;
     private Map<String, Object> properties;
     private List<Interceptor<? extends Message>> in = new 
ModCountCopyOnWriteArrayList<Interceptor<? extends Message>>();
@@ -187,7 +190,7 @@ public class CxfEndpoint extends DefaultEndpoint implements 
HeaderFilterStrategy
     private CxfEndpointConfigurer configurer;
     
     // The continuation timeout value for CXF continuation to use
-    @UriParam
+    @UriParam(defaultValue = "30000")
     private long continuationTimeout = 30000;
     
     // basic authentication option for the CXF client
@@ -699,6 +702,15 @@ public class CxfEndpoint extends DefaultEndpoint 
implements HeaderFilterStrategy
     // Properties
     // 
-------------------------------------------------------------------------
 
+
+    public String getBeanId() {
+        return beanId;
+    }
+
+    public void setBeanId(String beanId) {
+        this.beanId = beanId;
+    }
+
     public DataFormat getDataFormat() {
         return dataFormat;
     }
@@ -819,6 +831,7 @@ public class CxfEndpoint extends DefaultEndpoint implements 
HeaderFilterStrategy
     public void setAllowStreaming(Boolean b) {
         allowStreaming = b;
     }
+
     public Boolean getAllowStreaming() {
         return allowStreaming;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/bd364a95/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsComponent.java
----------------------------------------------------------------------
diff --git 
a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsComponent.java
 
b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsComponent.java
index 270773f..1bedb55 100644
--- 
a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsComponent.java
+++ 
b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsComponent.java
@@ -70,8 +70,9 @@ public class CxfRsComponent extends 
HeaderFilterStrategyComponent {
                 setProperties(answer, copy);      
             }
             // setup the skipFaultLogging
-           
-            
+
+            answer.setBeanId(beanId);
+
         } else {
             // endpoint URI does not specify a bean
             answer = new CxfRsEndpoint(remaining, this);

http://git-wip-us.apache.org/repos/asf/camel/blob/bd364a95/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsEndpoint.java
----------------------------------------------------------------------
diff --git 
a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsEndpoint.java
 
b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsEndpoint.java
index 8e7eca0..73dbc72 100644
--- 
a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsEndpoint.java
+++ 
b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsEndpoint.java
@@ -36,6 +36,7 @@ import org.apache.camel.spi.HeaderFilterStrategy;
 import org.apache.camel.spi.HeaderFilterStrategyAware;
 import org.apache.camel.spi.UriEndpoint;
 import org.apache.camel.spi.UriParam;
+import org.apache.camel.spi.UriPath;
 import org.apache.camel.util.ObjectHelper;
 import org.apache.cxf.Bus;
 import org.apache.cxf.BusFactory;
@@ -52,8 +53,9 @@ import org.apache.cxf.message.Message;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-@UriEndpoint(scheme = "cxfrs", consumerClass = CxfRsConsumer.class)
+@UriEndpoint(scheme = "cxfrs", consumerClass = CxfRsConsumer.class, label = 
"http,rest")
 public class CxfRsEndpoint extends DefaultEndpoint implements 
HeaderFilterStrategyAware, Service {
+
     public enum BindingStyle {
         /**
          * <i>Only available for consumers.</i>
@@ -73,7 +75,6 @@ public class CxfRsEndpoint extends DefaultEndpoint implements 
HeaderFilterStrate
          * A custom binding set by the user.
          */
         Custom
-
     }
 
     private static final Logger LOG = 
LoggerFactory.getLogger(CxfRsEndpoint.class);
@@ -84,32 +85,35 @@ public class CxfRsEndpoint extends DefaultEndpoint 
implements HeaderFilterStrate
     
     protected List<String> schemaLocations;
 
+    @UriPath(description = "To lookup an existing configured CxfRsEndpoint. 
Must used bean: as prefix.")
+    private String beanId;
+    @UriPath
+    private String address;
+
     private Map<String, String> parameters;
     private List<Class<?>> resourceClasses;
     private HeaderFilterStrategy headerFilterStrategy;
     private CxfRsBinding binding;
-    @UriParam
+    @UriParam(defaultValue = "true")
     private boolean httpClientAPI = true;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean ignoreDeleteMethodMessageBody;
-    @UriParam
-    private String address;
-    @UriParam
+    @UriParam(defaultValue = "true")
     private boolean throwExceptionOnFailure = true;
-    @UriParam
+    @UriParam(defaultValue = "10")
     private int maxClientCacheSize = 10;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean loggingFeatureEnabled;
     @UriParam
     private int loggingSizeLimit;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean skipFaultLogging;
-    @UriParam
+    @UriParam(defaultValue = "Default")
     private BindingStyle bindingStyle = BindingStyle.Default;
     // The continuation timeout value for CXF continuation to use
-    @UriParam
+    @UriParam(defaultValue = "30000")
     private long continuationTimeout = 30000;
-    @UriParam
+    @UriParam(defaultValue = "false")
     private boolean isSetDefaultBus;
     
     private List<Feature> features = new 
ModCountCopyOnWriteArrayList<Feature>();
@@ -332,6 +336,7 @@ public class CxfRsEndpoint extends DefaultEndpoint 
implements HeaderFilterStrate
     public void setResourceClasses(List<Class<?>> resourceClasses) {
         this.resourceClasses = resourceClasses;
     }
+
     public void setResourceClasses(Class<?>... classes) {
         setResourceClasses(Arrays.asList(classes));
     }
@@ -496,7 +501,15 @@ public class CxfRsEndpoint extends DefaultEndpoint 
implements HeaderFilterStrate
     public void setBindingStyle(BindingStyle bindingStyle) {
         this.bindingStyle = bindingStyle;
     }
-    
+
+    public String getBeanId() {
+        return beanId;
+    }
+
+    public void setBeanId(String beanId) {
+        this.beanId = beanId;
+    }
+
     @Override
     protected void doStart() throws Exception {
         if (headerFilterStrategy == null) {

Reply via email to