git commit: upgrade camel-rx to use the latest version of rxjava

2013-09-02 Thread jstrachan
Updated Branches:
  refs/heads/master 0bdf8431d - d3265079a


upgrade camel-rx to use the latest version of rxjava


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

Branch: refs/heads/master
Commit: d3265079ad4c4a2e8d1bb2efa2fa3cca660f39a3
Parents: 0bdf843
Author: James Strachan james.strac...@gmail.com
Authored: Mon Sep 2 11:27:14 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Mon Sep 2 11:27:14 2013 +0100

--
 .../camel-rx/src/test/java/org/apache/camel/rx/SendToTest.java | 2 +-
 parent/pom.xml | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/d3265079/components/camel-rx/src/test/java/org/apache/camel/rx/SendToTest.java
--
diff --git 
a/components/camel-rx/src/test/java/org/apache/camel/rx/SendToTest.java 
b/components/camel-rx/src/test/java/org/apache/camel/rx/SendToTest.java
index 818c550..83de696 100644
--- a/components/camel-rx/src/test/java/org/apache/camel/rx/SendToTest.java
+++ b/components/camel-rx/src/test/java/org/apache/camel/rx/SendToTest.java
@@ -27,7 +27,7 @@ public class SendToTest extends RxTestSupport {
 @Test
 public void testSendObservableToEndpoint() throws Exception {
 Order[] expectedBodies = {new Order(o1, 1.10), new Order(o2, 
2.20), new Order(o3, 3.30)};
-ObservableOrder someObservable = 
Observable.toObservable(expectedBodies);
+ObservableOrder someObservable = Observable.from(expectedBodies);
 
 final MockEndpoint mockEndpoint = 
camelContext.getEndpoint(mock:results, MockEndpoint.class);
 mockEndpoint.expectedBodiesReceived(expectedBodies);

http://git-wip-us.apache.org/repos/asf/camel/blob/d3265079/parent/pom.xml
--
diff --git a/parent/pom.xml b/parent/pom.xml
index 3da331c..9823794 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -332,7 +332,7 @@
 rhino-version1.7R2/rhino-version
 rome-bundle-version1.0_3/rome-bundle-version
 rome-version1.0/rome-version
-rxjava-version0.10.1/rxjava-version
+rxjava-version0.11.1/rxjava-version
 saaj-impl-version1.3.2_2/saaj-impl-version
 saxon-bundle-version9.5.0.2_1/saxon-bundle-version
 saxon-version9.5.0.2/saxon-version



git commit: avoid possible hang or crash if we try and complete on a component which is not active and hasn't been configured. Also provide an API to lookup components which are active (to avoid forci

2013-08-21 Thread jstrachan
Updated Branches:
  refs/heads/master a87a8d129 - 708c4cd87


avoid possible hang or crash if we try and complete on a component which is not 
active and hasn't been configured. Also provide an API to lookup components 
which are active (to avoid forcing lazy create)


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

Branch: refs/heads/master
Commit: 708c4cd87e3e2cdc0922749e4ab1a660d5337291
Parents: a87a8d1
Author: James Strachan james.strac...@gmail.com
Authored: Wed Aug 21 12:11:40 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Wed Aug 21 12:11:40 2013 +0100

--
 .../src/main/java/org/apache/camel/CamelContext.java| 10 ++
 .../java/org/apache/camel/impl/DefaultCamelContext.java |  4 
 .../camel/management/mbean/ManagedCamelContext.java | 12 
 3 files changed, 22 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/708c4cd8/camel-core/src/main/java/org/apache/camel/CamelContext.java
--
diff --git a/camel-core/src/main/java/org/apache/camel/CamelContext.java 
b/camel-core/src/main/java/org/apache/camel/CamelContext.java
index 64f4d7a..d8f7894 100644
--- a/camel-core/src/main/java/org/apache/camel/CamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/CamelContext.java
@@ -248,6 +248,16 @@ public interface CamelContext extends SuspendableService, 
RuntimeConfiguration {
 Component getComponent(String componentName);
 
 /**
+ * Gets a component from the context by name.
+ *
+ * @param componentName the name of the component
+ * @param autoCreateComponents whether or not the component should
+ * be lazily created if it does not already 
exist
+ * @return the component
+ */
+Component getComponent(String name, boolean autoCreateComponents);
+
+/**
  * Gets a component from the context by name and specifying the expected 
type of component.
  *
  * @param name  the name to lookup

http://git-wip-us.apache.org/repos/asf/camel/blob/708c4cd8/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java 
b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index 7dd64de..9fe8bb1 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -331,6 +331,10 @@ public class DefaultCamelContext extends ServiceSupport 
implements ModelCamelCon
 }
 
 public Component getComponent(String name) {
+return getComponent(name, autoCreateComponents);
+}
+
+public Component getComponent(String name, boolean autoCreateComponents) {
 // synchronize the look up and auto create so that 2 threads can't
 // concurrently auto create the same component.
 synchronized (components) {

http://git-wip-us.apache.org/repos/asf/camel/blob/708c4cd8/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
 
b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
index e643e8d..b41ff35 100644
--- 
a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
+++ 
b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
@@ -373,10 +373,14 @@ public class ManagedCamelContext extends 
ManagedPerformanceCounter implements Ti
 if (completionText == null) {
 completionText = ;
 }
-Component component = context.getComponent(componentName);
-ComponentConfiguration configuration = 
component.createComponentConfiguration();
-configuration.setParameters(endpointParameters);
-return configuration.completeEndpointPath(completionText);
+Component component = context.getComponent(componentName, false);
+if (component != null) {
+ComponentConfiguration configuration = 
component.createComponentConfiguration();
+configuration.setParameters(endpointParameters);
+return configuration.completeEndpointPath(completionText);
+} else {
+return new ArrayListString();
+}
 }
 
 public String 

git commit: fixes CAMEL-6638 to add a vertx component for working with http://vertx.io/

2013-08-14 Thread jstrachan
Updated Branches:
  refs/heads/master 68b357d8b - 7173865d8


fixes CAMEL-6638 to add a vertx component for working with http://vertx.io/


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

Branch: refs/heads/master
Commit: 7173865d8e9fdd4d358f5cf4ccc662183c561049
Parents: 68b357d
Author: James Strachan james.strac...@gmail.com
Authored: Wed Aug 14 21:41:45 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Wed Aug 14 21:41:45 2013 +0100

--
 components/camel-vertx/pom.xml  |  71 +++
 .../camel/component/vertx/VertxComponent.java   |  90 
 .../camel/component/vertx/VertxConsumer.java|  64 ++
 .../camel/component/vertx/VertxEndpoint.java|  75 +++
 .../camel/component/vertx/VertxProducer.java|  65 ++
 .../src/main/resources/META-INF/LICENSE.txt | 203 +++
 .../src/main/resources/META-INF/NOTICE.txt  |  11 +
 .../services/org/apache/camel/component/vertx   |  17 ++
 .../camel/component/vertx/VertxRouteTest.java   |  67 ++
 .../src/test/resources/log4j.properties |  38 
 components/pom.xml  |   1 +
 11 files changed, 702 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/7173865d/components/camel-vertx/pom.xml
--
diff --git a/components/camel-vertx/pom.xml b/components/camel-vertx/pom.xml
new file mode 100644
index 000..0dcd804
--- /dev/null
+++ b/components/camel-vertx/pom.xml
@@ -0,0 +1,71 @@
+?xml version=1.0 encoding=UTF-8?
+!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the License); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an AS IS BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+--
+project xmlns=http://maven.apache.org/POM/4.0.0; 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation=http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;
+  modelVersion4.0.0/modelVersion
+
+  parent
+groupIdorg.apache.camel/groupId
+artifactIdcomponents/artifactId
+version2.12-SNAPSHOT/version
+  /parent
+
+  artifactIdcamel-vertx/artifactId
+  packagingbundle/packaging
+  nameCamel :: Vertx/name
+  descriptionCamel Vertx support/description
+
+  properties
+
camel.osgi.export.pkgorg.apache.camel.component.vertx.*/camel.osgi.export.pkg
+  /properties
+
+  dependencies
+
+dependency
+  groupIdorg.apache.camel/groupId
+  artifactIdcamel-core/artifactId
+/dependency
+dependency
+  groupIdio.vertx/groupId
+  artifactIdvertx-core/artifactId
+  version2.0.1-final/version
+/dependency
+
+!-- testing --
+dependency
+  groupIdorg.apache.camel/groupId
+  artifactIdcamel-test/artifactId
+  scopetest/scope
+/dependency
+dependency
+  groupIdorg.slf4j/groupId
+  artifactIdslf4j-log4j12/artifactId
+  scopetest/scope
+/dependency
+dependency
+  groupIdjunit/groupId
+  artifactIdjunit/artifactId
+  scopetest/scope
+/dependency
+dependency
+  groupIdorg.mockito/groupId
+  artifactIdmockito-all/artifactId
+  version${mockito-version}/version
+  scopetest/scope
+/dependency
+  /dependencies
+/project

http://git-wip-us.apache.org/repos/asf/camel/blob/7173865d/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxComponent.java
--
diff --git 
a/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxComponent.java
 
b/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxComponent.java
new file mode 100644
index 000..f7b55c8
--- /dev/null
+++ 
b/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxComponent.java
@@ -0,0 +1,90 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information 

git commit: improve CAMEL-6394 so we use the correct JSON schema name for the type of the property ; )

2013-07-18 Thread jstrachan
Updated Branches:
  refs/heads/master 25612791c - 1d981304a


improve CAMEL-6394 so we use the correct JSON schema name for the type of the 
property ;)


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

Branch: refs/heads/master
Commit: 1d981304a8586924f6a770a5c35f5ee0c7768aa7
Parents: 2561279
Author: James Strachan james.strac...@gmail.com
Authored: Thu Jul 18 15:44:57 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Thu Jul 18 15:44:57 2013 +0100

--
 .../main/java/org/apache/camel/impl/ParameterConfiguration.java| 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/1d981304/camel-core/src/main/java/org/apache/camel/impl/ParameterConfiguration.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/impl/ParameterConfiguration.java 
b/camel-core/src/main/java/org/apache/camel/impl/ParameterConfiguration.java
index 5ce3d88..af6883c 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/ParameterConfiguration.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/ParameterConfiguration.java
@@ -68,6 +68,6 @@ public class ParameterConfiguration {
 String typeName = parameterType.getCanonicalName();
 // TODO would be nice to add a description; wonder if we can find that 
from somewhere
 // generated by the APT tool?
-return doubleQuote(name) + : { \typeName\:  + 
doubleQuote(typeName) +  };
+return doubleQuote(name) + : { \type\:  + doubleQuote(typeName) + 
 };
 }
 }



git commit: fix possible NPE exception when running camel 2.12.0 on OpenShift (and other PaaS environments where server socket creation is not allowed)

2013-07-16 Thread jstrachan
Updated Branches:
  refs/heads/master 2d686b4ae - fd03dc872


fix possible NPE exception when running camel 2.12.0 on OpenShift (and other 
PaaS environments where server socket creation is not allowed)


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

Branch: refs/heads/master
Commit: fd03dc87221ebeb76ddf4d5478d9f5924b7ec5d8
Parents: 2d686b4
Author: James Strachan james.strac...@gmail.com
Authored: Tue Jul 16 09:48:17 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Tue Jul 16 09:48:17 2013 +0100

--
 .../apache/camel/impl/ActiveMQUuidGenerator.java | 19 +++
 1 file changed, 11 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/fd03dc87/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java 
b/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java
index 3afe604..110715e 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java
@@ -78,14 +78,17 @@ public class ActiveMQUuidGenerator implements UuidGenerator 
{
 LOG.warn(Cannot generate unique stub by using DNS and 
binding to local port:  + idGeneratorPort +  due  + ioe.getMessage());
 }
 } finally {
-try {
-// TODO: replace the following line with 
IOHelper.close(ss) when Java 6 support is dropped
-ss.close();
-} catch (IOException ioe) {
-if (LOG.isTraceEnabled()) {
-LOG.trace(Closing the server socket failed, ioe);
-} else {
-LOG.warn(Closing the server socket failed +  due  
+ ioe.getMessage());
+// some environments, such as a PaaS may not allow us to 
create the ServerSocket
+if (ss != null) {
+try {
+// TODO: replace the following line with 
IOHelper.close(ss) when Java 6 support is dropped
+ss.close();
+} catch (IOException ioe) {
+if (LOG.isTraceEnabled()) {
+LOG.trace(Closing the server socket failed, ioe);
+} else {
+LOG.warn(Closing the server socket failed +  
due  + ioe.getMessage());
+}
 }
 }
 }



git commit: removed redundant close() as we close in the finally block - which avoids a double close() call

2013-07-16 Thread jstrachan
Updated Branches:
  refs/heads/master fd03dc872 - 51bdf0996


removed redundant close() as we close in the finally block - which avoids a 
double close() call


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

Branch: refs/heads/master
Commit: 51bdf0996772db221391984dab410b2607bb3cf2
Parents: fd03dc8
Author: James Strachan james.strac...@gmail.com
Authored: Tue Jul 16 09:50:34 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Tue Jul 16 09:50:34 2013 +0100

--
 .../src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java  | 1 -
 1 file changed, 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/51bdf099/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java 
b/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java
index 110715e..3346f21 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/ActiveMQUuidGenerator.java
@@ -70,7 +70,6 @@ public class ActiveMQUuidGenerator implements UuidGenerator {
 ss = new ServerSocket(idGeneratorPort);
 stub = - + ss.getLocalPort() + - + 
System.currentTimeMillis() + -;
 Thread.sleep(100);
-ss.close();
 } catch (Exception ioe) {
 if (LOG.isTraceEnabled()) {
 LOG.trace(Cannot generate unique stub by using DNS and 
binding to local port:  + idGeneratorPort, ioe);



git commit: Added test case to ensure that CAMEL-6394 generates properly formatted JSON which can actually be parsed; and fixed bug in incorrect JSON encoding ; )

2013-07-15 Thread jstrachan
Updated Branches:
  refs/heads/master 46a9c2b01 - 4eed66cdf


Added test case to ensure that CAMEL-6394 generates properly formatted JSON 
which can actually be parsed; and fixed bug in incorrect JSON encoding ;)


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

Branch: refs/heads/master
Commit: 4eed66cdf21ed2995e43ed9bbcf86d321f16fe0a
Parents: 46a9c2b
Author: James Strachan james.strac...@gmail.com
Authored: Mon Jul 15 10:57:05 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Mon Jul 15 10:57:05 2013 +0100

--
 camel-core/pom.xml| 10 +-
 .../apache/camel/impl/ComponentConfigurationSupport.java  |  1 -
 .../apache/camel/management/EndpointCompletionTest.java   |  7 +++
 3 files changed, 16 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/4eed66cd/camel-core/pom.xml
--
diff --git a/camel-core/pom.xml b/camel-core/pom.xml
index 143d1e8..1f6fbcc 100755
--- a/camel-core/pom.xml
+++ b/camel-core/pom.xml
@@ -138,7 +138,14 @@
   artifactIdeasymock/artifactId
   scopetest/scope
 /dependency
-
+
+!-- for json tests --
+dependency
+  groupIdcom.fasterxml.jackson.core/groupId
+  artifactIdjackson-databind/artifactId
+  version${jackson2-version}/version
+/dependency
+
 !-- validator --
dependency
groupIdxml-resolver/groupId
@@ -146,6 +153,7 @@
version${xml-resolver-version}/version
scopetest/scope
/dependency
+
   /dependencies
 
 

http://git-wip-us.apache.org/repos/asf/camel/blob/4eed66cd/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
 
b/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
index 4dae1b7..40f190c 100644
--- 
a/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
+++ 
b/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
@@ -174,7 +174,6 @@ public abstract class ComponentConfigurationSupport 
implements ComponentConfigur
 } else {
 buffer.append(,);
 }
-buffer.append(entry.getKey());
 buffer.append(\n);
 buffer.append(entry.getValue().toJson());
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/4eed66cd/camel-core/src/test/java/org/apache/camel/management/EndpointCompletionTest.java
--
diff --git 
a/camel-core/src/test/java/org/apache/camel/management/EndpointCompletionTest.java
 
b/camel-core/src/test/java/org/apache/camel/management/EndpointCompletionTest.java
index b081380..1512914 100644
--- 
a/camel-core/src/test/java/org/apache/camel/management/EndpointCompletionTest.java
+++ 
b/camel-core/src/test/java/org/apache/camel/management/EndpointCompletionTest.java
@@ -23,6 +23,8 @@ import java.util.Map;
 import javax.management.MBeanServer;
 import javax.management.ObjectName;
 
+import com.fasterxml.jackson.databind.ObjectMapper;
+
 import org.apache.camel.builder.RouteBuilder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -79,6 +81,11 @@ public class EndpointCompletionTest extends 
ManagementTestSupport {
 mbeanServer.invoke(on, componentParameterJsonSchema, params, 
signature));
 
 LOG.info(Component  + componentName +  returned JSON:  + answer);
+
+// now lets validate that the generated JSON parses correctly
+ObjectMapper mapper = new ObjectMapper();
+HashMap data = mapper.readValue(answer, HashMap.class);
+LOG.info(Read JSON:  + data);
 return answer;
 }
 



git commit: added a simple CSV test case for using camel and beanio; using a map rather than explicit bean mapping

2013-07-11 Thread jstrachan
Updated Branches:
  refs/heads/master 26088b497 - e42b0b9e5


added a simple CSV test case for using camel and beanio; using a map rather 
than explicit bean mapping


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

Branch: refs/heads/master
Commit: e42b0b9e532257bc20fb7bd64c0c2a99d980a73d
Parents: 26088b4
Author: James Strachan james.strac...@gmail.com
Authored: Thu Jul 11 10:55:25 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Thu Jul 11 10:55:25 2013 +0100

--
 .../camel/dataformat/beanio/csv/CsvTest.java| 121 +++
 .../camel/dataformat/beanio/csv/mappings.xml|  14 +++
 2 files changed, 135 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/e42b0b9e/components/camel-beanio/src/test/java/org/apache/camel/dataformat/beanio/csv/CsvTest.java
--
diff --git 
a/components/camel-beanio/src/test/java/org/apache/camel/dataformat/beanio/csv/CsvTest.java
 
b/components/camel-beanio/src/test/java/org/apache/camel/dataformat/beanio/csv/CsvTest.java
new file mode 100644
index 000..c2fdbb5
--- /dev/null
+++ 
b/components/camel-beanio/src/test/java/org/apache/camel/dataformat/beanio/csv/CsvTest.java
@@ -0,0 +1,121 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.dataformat.beanio.csv;
+
+import org.apache.camel.Exchange;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.dataformat.beanio.BeanIODataFormat;
+import org.apache.camel.spi.DataFormat;
+import org.apache.camel.test.junit4.CamelTestSupport;
+import org.junit.Test;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/**
+ */
+public class CsvTest extends CamelTestSupport {
+private static final String FIXED_DATA =
+James,Strachan,22 + LS +
+Claus,Ibsen,21 + LS;
+
+private boolean verbose = false;
+
+/*
+@Test
+public void testMarshal() throws Exception {
+ListEmployee employees = getEmployees();
+
+MockEndpoint mock = getMockEndpoint(mock:beanio-marshal);
+mock.expectedBodiesReceived(FIXED_DATA);
+
+template.sendBody(direct:marshal, employees);
+
+mock.assertIsSatisfied();
+}
+*/
+
+@Test
+public void testUnmarshal() throws Exception {
+MockEndpoint mock = getMockEndpoint(mock:beanio-unmarshal);
+mock.expectedMessageCount(2);
+
+template.sendBody(direct:unmarshal, FIXED_DATA);
+
+mock.assertIsSatisfied();
+
+ListExchange exchanges = mock.getExchanges();
+if (verbose) {
+for (Exchange exchange : exchanges) {
+Object body = exchange.getIn().getBody();
+System.out.println(received message  + body +  of class  + 
body.getClass().getName());
+}
+}
+ListMap results = new ArrayListMap();
+for (Exchange exchange : exchanges) {
+Map body = exchange.getIn().getBody(Map.class);
+if (body != null) {
+results.add(body);
+}
+}
+assertRecord(results, 0, James, Strachan, 22);
+assertRecord(results, 1, Claus, Ibsen, 21);
+}
+
+protected static void assertRecord(ListMap results, int index, String 
expectedFirstName, String expectedLastName, int expectedAge) {
+assertTrue(Not enough Map messages received:  + results.size(), 
results.size()  index);
+Map map = results.get(index);
+assertNotNull(No map result found for index  + index, map);
+
+String text = bodyAsMap( + index + ) ;
+assertEquals(text + firstName, expectedFirstName, 
map.get(firstName));
+assertEquals(text + lastName, expectedLastName, map.get(lastName));
+assertEquals(text + age, expectedAge, 

git commit: expose the component HTML to the CamelContext and the MBean so it can be displayed by tooling

2013-06-09 Thread jstrachan
Updated Branches:
  refs/heads/master 868a358ad - 3ec75ec79


expose the component HTML to the CamelContext and the MBean so it can be 
displayed by tooling


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

Branch: refs/heads/master
Commit: 3ec75ec79f29658b2e840787701e71885a5bdaae
Parents: 868a358
Author: James Strachan james.strac...@gmail.com
Authored: Sun Jun 9 09:55:38 2013 -0400
Committer: James Strachan james.strac...@gmail.com
Committed: Sun Jun 9 09:58:09 2013 -0400

--
 .../java/org/apache/camel/CamelContext.java |  6 +
 .../mbean/ManagedCamelContextMBean.java |  9 +++
 .../apache/camel/impl/DefaultCamelContext.java  | 12 ++
 .../management/mbean/ManagedCamelContext.java   |  5 
 .../apache/camel/util/CamelContextHelper.java   |  1 +
 .../java/org/apache/camel/util/IOHelper.java| 25 
 .../camel/component/ComponentDiscoveryTest.java |  9 +++
 .../camel/blueprint/BlueprintCamelContext.java  |  5 
 .../core/osgi/OsgiDefaultCamelContext.java  |  5 
 .../core/osgi/utils/BundleContextUtils.java | 19 +++
 10 files changed, 96 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/3ec75ec7/camel-core/src/main/java/org/apache/camel/CamelContext.java
--
diff --git a/camel-core/src/main/java/org/apache/camel/CamelContext.java 
b/camel-core/src/main/java/org/apache/camel/CamelContext.java
index 5b2b4f6..7f467f1 100644
--- a/camel-core/src/main/java/org/apache/camel/CamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/CamelContext.java
@@ -1205,4 +1205,10 @@ public interface CamelContext extends 
SuspendableService, RuntimeConfiguration {
  * @throws Exception is thrown if error occurred
  */
 MapString,Properties findComponents() throws LoadPropertiesException, 
IOException;
+
+
+/**
+ * Returns the HTML documentation for the given camel component
+ */
+String getComponentDocumentation(String componentName) throws IOException;
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/3ec75ec7/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
 
b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
index 4af6d3d..514fdbe 100644
--- 
a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
+++ 
b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.api.management.mbean;
 
+import java.io.IOException;
 import java.util.List;
 import java.util.Map;
 import java.util.Properties;
@@ -219,4 +220,12 @@ public interface ManagedCamelContextMBean extends 
ManagedPerformanceCounterMBean
 @ManagedOperation(description = Returns the list of available endpoint 
paths for the given component name, endpoint properties and completion text)
 ListString completeEndpointPath(String componentName, MapString, 
Object endpointParameters, String completionText) throws Exception;
 
+/**
+ * Returns the HTML documentation for the given camel component
+ *
+ * @param componentName  the component name
+ */
+@ManagedOperation(description = Returns the HTML documentation for the 
given camel component)
+String getComponentDocumentation(String componentName) throws IOException;
+
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/3ec75ec7/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java 
b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index c61c79f..22fa6e1 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -18,11 +18,13 @@ package org.apache.camel.impl;
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.net.URL;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Date;
+import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.LinkedHashMap;
@@ -125,6 +127,7 @@ import 

git commit: search all bundles in the bundleContext for the OSGi version of findComponents()

2013-06-08 Thread jstrachan
Updated Branches:
  refs/heads/master 5e1a3a3ea - 3553b95ad


search all bundles in the bundleContext for the OSGi version of findComponents()


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

Branch: refs/heads/master
Commit: 3553b95ad66ff5240725de6479ff66292605ddcb
Parents: 5e1a3a3
Author: James Strachan james.strac...@gmail.com
Authored: Sat Jun 8 08:11:44 2013 +0200
Committer: James Strachan james.strac...@gmail.com
Committed: Sat Jun 8 08:11:44 2013 +0200

--
 .../camel/core/osgi/OsgiDefaultCamelContext.java   |   13 ++---
 1 files changed, 10 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/3553b95a/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
--
diff --git 
a/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
 
b/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
index 9f7b0b2..1a7b472 100644
--- 
a/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
+++ 
b/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
@@ -21,6 +21,8 @@ import java.net.URL;
 import java.util.Enumeration;
 import java.util.Map;
 import java.util.Properties;
+import java.util.SortedMap;
+import java.util.TreeMap;
 
 import org.apache.camel.TypeConverter;
 import org.apache.camel.core.osgi.utils.BundleContextUtils;
@@ -48,9 +50,14 @@ public class OsgiDefaultCamelContext extends 
DefaultCamelContext {
 }
 
 public MapString, Properties findComponents() throws 
LoadPropertiesException, IOException {
-Bundle bundle = bundleContext.getBundle();
-EnumerationURL iter = 
bundle.getResources(CamelContextHelper.COMPONENT_DESCRIPTOR);
-return CamelContextHelper.findComponents(this, iter);
+SortedMapString, Properties answer = new TreeMapString, 
Properties();
+Bundle[] bundles = bundleContext.getBundles();
+for (Bundle bundle : bundles) {
+EnumerationURL iter = 
bundle.getResources(CamelContextHelper.COMPONENT_DESCRIPTOR);
+SortedMapString,Properties map = 
CamelContextHelper.findComponents(this, iter);
+answer.putAll(map);
+}
+return answer;
 }
 
 @Override



git commit: fixed findComponents() for in blueprint too (had missed there's 2 OSGi camel context implementations - DOH ; )

2013-06-08 Thread jstrachan
Updated Branches:
  refs/heads/master 512b0a165 - d33db16a3


fixed findComponents() for in blueprint too (had missed there's 2 OSGi camel 
context implementations - DOH ;)


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

Branch: refs/heads/master
Commit: d33db16a385d1eaf1ced7da8766aaa7e4175b783
Parents: 512b0a1
Author: James Strachan james.strac...@gmail.com
Authored: Sat Jun 8 09:47:49 2013 +0200
Committer: James Strachan james.strac...@gmail.com
Committed: Sat Jun 8 10:29:09 2013 +0200

--
 .../camel/blueprint/BlueprintCamelContext.java |9 +
 .../camel/core/osgi/OsgiDefaultCamelContext.java   |   16 +---
 .../camel/core/osgi/utils/BundleContextUtils.java  |   28 +++
 3 files changed, 39 insertions(+), 14 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/d33db16a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
--
diff --git 
a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
 
b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
index cded338..8a86bf6 100644
--- 
a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
+++ 
b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
@@ -16,6 +16,10 @@
  */
 package org.apache.camel.blueprint;
 
+import java.io.IOException;
+import java.util.Map;
+import java.util.Properties;
+
 import org.apache.camel.TypeConverter;
 import org.apache.camel.core.osgi.OsgiCamelContextHelper;
 import org.apache.camel.core.osgi.OsgiFactoryFinderResolver;
@@ -25,6 +29,7 @@ import 
org.apache.camel.core.osgi.utils.BundleDelegatingClassLoader;
 import org.apache.camel.impl.DefaultCamelContext;
 import org.apache.camel.spi.FactoryFinder;
 import org.apache.camel.spi.Registry;
+import org.apache.camel.util.LoadPropertiesException;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.ServiceEvent;
 import org.osgi.framework.ServiceListener;
@@ -109,6 +114,10 @@ public class BlueprintCamelContext extends 
DefaultCamelContext implements Servic
 stop();
 }
 
+@Override
+public MapString, Properties findComponents() throws 
LoadPropertiesException, IOException {
+return BundleContextUtils.findComponents(bundleContext, this);
+}
 
 @Override
 public void blueprintEvent(BlueprintEvent event) {

http://git-wip-us.apache.org/repos/asf/camel/blob/d33db16a/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
--
diff --git 
a/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
 
b/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
index 1a7b472..d049f1c 100644
--- 
a/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
+++ 
b/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiDefaultCamelContext.java
@@ -17,21 +17,15 @@
 package org.apache.camel.core.osgi;
 
 import java.io.IOException;
-import java.net.URL;
-import java.util.Enumeration;
 import java.util.Map;
 import java.util.Properties;
-import java.util.SortedMap;
-import java.util.TreeMap;
 
 import org.apache.camel.TypeConverter;
 import org.apache.camel.core.osgi.utils.BundleContextUtils;
 import org.apache.camel.impl.DefaultCamelContext;
 import org.apache.camel.spi.FactoryFinder;
 import org.apache.camel.spi.Registry;
-import org.apache.camel.util.CamelContextHelper;
 import org.apache.camel.util.LoadPropertiesException;
-import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 
 public class OsgiDefaultCamelContext extends DefaultCamelContext {
@@ -49,15 +43,9 @@ public class OsgiDefaultCamelContext extends 
DefaultCamelContext {
 OsgiCamelContextHelper.osgiUpdate(this, bundleContext);
 }
 
+@Override
 public MapString, Properties findComponents() throws 
LoadPropertiesException, IOException {
-SortedMapString, Properties answer = new TreeMapString, 
Properties();
-Bundle[] bundles = bundleContext.getBundles();
-for (Bundle bundle : bundles) {
-EnumerationURL iter = 
bundle.getResources(CamelContextHelper.COMPONENT_DESCRIPTOR);
-SortedMapString,Properties map = 
CamelContextHelper.findComponents(this, iter);
-answer.putAll(map);
-}
-

git commit: provide an implementation of CAMEL-6391 so that we can use completion when entering the endpoint path values. for example for file components, we can use bash style completion on the avail

2013-05-24 Thread jstrachan
Updated Branches:
  refs/heads/master ca35a4d7b - 4cc51e1c6


provide an implementation of CAMEL-6391 so that we can use completion when 
entering the endpoint path values. for example for file components, we can use 
bash style completion on the available directory/file names from a karaf 
command, CLI tool, IDE or web based tool


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

Branch: refs/heads/master
Commit: 4cc51e1c6ed20787cf9241e2909e72d05331
Parents: ca35a4d
Author: James Strachan james.strac...@gmail.com
Authored: Fri May 24 10:23:13 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Fri May 24 10:23:13 2013 +0100

--
 .../org/apache/camel/ComponentConfiguration.java   |   15 +++
 .../management/mbean/ManagedCamelContextMBean.java |   22 
 .../apache/camel/component/file/FileComponent.java |   56 ++-
 .../camel/impl/ComponentConfigurationSupport.java  |9 ++
 .../management/mbean/ManagedCamelContext.java  |   19 
 .../org/apache/camel/spi/EndpointCompleter.java|   41 
 .../camel/management/EndpointCompletionTest.java   |   78 +++
 7 files changed, 239 insertions(+), 1 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/4cc51e1c/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java 
b/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java
index 91ac7cf..4873ad4 100644
--- a/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java
+++ b/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java
@@ -17,6 +17,7 @@
 package org.apache.camel;
 
 import java.net.URISyntaxException;
+import java.util.List;
 import java.util.Map;
 import java.util.SortedMap;
 
@@ -134,5 +135,19 @@ public interface ComponentConfiguration {
  */
 void setEndpointParameter(Endpoint endpoint, String name, Object value) 
throws RuntimeCamelException;
 
+/**
+ * A helper method for tools such as CLIs, IDEs or web tools that provides 
a completion list for Endpoint Paths
+ * rather like bash tab completion or Karaf attribute or option completion 
handers.
+ *
+ * So given the current configuration data, return a list of completions 
given the specified text.
+ *
+ * e.g. return the files in a directory, the matching queues in a message 
broker, the database tables in a database component etc
+ *
+ * @param completionText the prefix text used to complete on (usually a 
matching bit of text)
+ *
+ * @return a list of matches
+ * @return a list of matches
+ */
+ListString completeEndpointPath(String completionText);
 }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/4cc51e1c/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
 
b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
index 002f556..ea4e8b9 100644
--- 
a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
+++ 
b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.api.management.mbean;
 
+import java.util.List;
 import java.util.Map;
 import java.util.Properties;
 import java.util.concurrent.TimeUnit;
@@ -172,6 +173,15 @@ public interface ManagedCamelContextMBean extends 
ManagedPerformanceCounterMBean
 MapString, Properties findComponents() throws Exception;
 
 /**
+ * Find the names of all the Camel components available in the classpath 
and {@link org.apache.camel.spi.Registry}.
+ *
+ * @return a list with the names of the camel components
+ * @throws Exception is thrown if error occurred
+ */
+@ManagedOperation(description = Find all Camel components names available 
in the classpath)
+ListString findComponentNames() throws Exception;
+
+/**
  * Resets all the performance counters.
  *
  * @param includeRoutes  whether to reset all routes as well.
@@ -180,4 +190,16 @@ public interface ManagedCamelContextMBean extends 
ManagedPerformanceCounterMBean
 @ManagedOperation(description = Reset counters)
 void reset(boolean includeRoutes) throws Exception;
 
+
+/**
+ * Helper method for tooling which returns the completion 

git commit: fixes CAMEL-6394 to add a createParameterJsonSchema() method on ComponentConfiguration along with a componentParameterJsonSchema() method on the MBean; so its easy for tools to enquire wha

2013-05-24 Thread jstrachan
Updated Branches:
  refs/heads/master 9e31679fc - 0bd7c3826


fixes CAMEL-6394 to add a createParameterJsonSchema() method on 
ComponentConfiguration along with a componentParameterJsonSchema() method on 
the MBean; so its easy for tools to enquire what parameters are available on an 
endpoint


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

Branch: refs/heads/master
Commit: 0bd7c3826efb53a00a75a345274828a1c33ba8a1
Parents: 9e31679
Author: James Strachan james.strac...@gmail.com
Authored: Fri May 24 14:08:25 2013 +0100
Committer: James Strachan james.strac...@gmail.com
Committed: Fri May 24 14:08:25 2013 +0100

--
 .../org/apache/camel/ComponentConfiguration.java   |8 
 .../management/mbean/ManagedCamelContextMBean.java |   10 +
 .../camel/impl/ComponentConfigurationSupport.java  |   21 +++
 .../apache/camel/impl/ParameterConfiguration.java  |   11 ++
 .../management/mbean/ManagedCamelContext.java  |8 
 .../org/apache/camel/util/StringQuoteHelper.java   |   27 ++
 .../camel/management/EndpointCompletionTest.java   |   29 ++-
 7 files changed, 112 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/camel/blob/0bd7c382/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java 
b/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java
index 4873ad4..9e0deb5 100644
--- a/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java
+++ b/camel-core/src/main/java/org/apache/camel/ComponentConfiguration.java
@@ -149,5 +149,13 @@ public interface ComponentConfiguration {
  * @return a list of matches
  */
 ListString completeEndpointPath(String completionText);
+
+/**
+ * Creates a a href=http://json-schema.org/;JSON schema/a 
representation of the
+ * configuration parameters for this endpoint and the types and validation 
rules.
+ *
+ * @return a JSON string which represents the JSON schema for this 
endpoints configuration parameters.
+ */
+String createParameterJsonSchema();
 }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/0bd7c382/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
 
b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
index 4adbc30..829eede 100644
--- 
a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
+++ 
b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
@@ -181,6 +181,16 @@ public interface ManagedCamelContextMBean extends 
ManagedPerformanceCounterMBean
 @ManagedOperation(description = Find all Camel components names available 
in the classpath)
 ListString findComponentNames() throws Exception;
 
+
+/**
+ * Returns the JSON schema representation of the endpoint parameters for 
the given component name
+ *
+ * @param componentName the name of the component to lookup
+ * @throws Exception is thrown if error occurred
+ */
+@ManagedOperation(description = Returns the JSON schema representation of 
the endpoint parameters for the given component name)
+String componentParameterJsonSchema(String componentName) throws Exception;
+
 /**
  * Resets all the performance counters.
  *

http://git-wip-us.apache.org/repos/asf/camel/blob/0bd7c382/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
--
diff --git 
a/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
 
b/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
index 027a610..bbe8c0c 100644
--- 
a/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
+++ 
b/camel-core/src/main/java/org/apache/camel/impl/ComponentConfigurationSupport.java
@@ -23,6 +23,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.SortedMap;
 
 import org.apache.camel.Component;
 import org.apache.camel.ComponentConfiguration;
@@ -163,6 +164,26 @@ public abstract class ComponentConfigurationSupport 
implements ComponentConfigur
 return new ArrayListString();
 }
 

svn commit: r1476897 - /camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java

2013-04-29 Thread jstrachan
Author: jstrachan
Date: Mon Apr 29 06:00:08 2013
New Revision: 1476897

URL: http://svn.apache.org/r1476897
Log:
make the annotation processor more restrictive on the annotations it processes 
to try help the CI build on jdk 1.6 - thanks Babak! Also used java 7 source 
only to help further nudge the jdk 6 build along a bit more

Modified:

camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java

Modified: 
camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java?rev=1476897r1=1476896r2=1476897view=diff
==
--- 
camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
 (original)
+++ 
camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
 Mon Apr 29 06:00:08 2013
@@ -58,8 +58,8 @@ import java.util.TreeMap;
  * Processes all Camel endpoints
  */
 //@SupportedOptions({foo})
-@SupportedAnnotationTypes({org.apache.camel.*, org.apache.camel.spi.*})
-@SupportedSourceVersion(SourceVersion.RELEASE_6)
+@SupportedAnnotationTypes({org.apache.camel.spi.*})
+@SupportedSourceVersion(SourceVersion.RELEASE_7)
 public class EndpointAnnotationProcessor extends AbstractProcessor {
 public boolean process(Set? extends TypeElement annotations, final 
RoundEnvironment roundEnv) {
 if (roundEnv.processingOver()) {




svn commit: r1476899 - /camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java

2013-04-29 Thread jstrachan
Author: jstrachan
Date: Mon Apr 29 06:03:32 2013
New Revision: 1476899

URL: http://svn.apache.org/r1476899
Log:
ah, rollback the java 7 source as that doesn't work too well on jdk 6 :)

Modified:

camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java

Modified: 
camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java?rev=1476899r1=1476898r2=1476899view=diff
==
--- 
camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
 (original)
+++ 
camel/trunk/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
 Mon Apr 29 06:03:32 2013
@@ -59,7 +59,7 @@ import java.util.TreeMap;
  */
 //@SupportedOptions({foo})
 @SupportedAnnotationTypes({org.apache.camel.spi.*})
-@SupportedSourceVersion(SourceVersion.RELEASE_7)
+@SupportedSourceVersion(SourceVersion.RELEASE_6)
 public class EndpointAnnotationProcessor extends AbstractProcessor {
 public boolean process(Set? extends TypeElement annotations, final 
RoundEnvironment roundEnv) {
 if (roundEnv.processingOver()) {




svn commit: r1470838 - in /camel/trunk/tooling/maven/camel-package-maven-plugin: pom.xml src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java src/main/resources/camel-package-maven-plugin.

2013-04-23 Thread jstrachan
Author: jstrachan
Date: Tue Apr 23 07:53:38 2013
New Revision: 1470838

URL: http://svn.apache.org/r1470838
Log:
added a maven report plugin for endpoint documentation, generated from the 
@UriEndpoint / @UriParam / @UriParams annotations and javadoc. See CAMEL-6304

Added:

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java
   (with props)

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/resources/camel-package-maven-plugin.properties
   (contents, props changed)
  - copied, changed from r1467765, 
camel/trunk/tooling/maven/camel-maven-plugin/src/main/resources/camel-maven-plugin.properties
Modified:
camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml

Modified: camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml?rev=1470838r1=1470837r2=1470838view=diff
==
--- camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml (original)
+++ camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml Tue Apr 23 
07:53:38 2013
@@ -58,6 +58,14 @@
 scopeprovided/scope
 version2.2.1/version
 /dependency
+dependency
+  groupIdorg.apache.maven.reporting/groupId
+  artifactIdmaven-reporting-api/artifactId
+/dependency
+dependency
+  groupIdorg.apache.maven.reporting/groupId
+  artifactIdmaven-reporting-impl/artifactId
+/dependency
 
 
 !-- add some logging to the classpath --

Added: 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java?rev=1470838view=auto
==
--- 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java
 (added)
+++ 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointMojo.java
 Tue Apr 23 07:53:38 2013
@@ -0,0 +1,472 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.maven.packaging;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FilenameFilter;
+import java.util.Locale;
+import java.util.ResourceBundle;
+
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.siterenderer.Renderer;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.reporting.AbstractMavenReport;
+import org.apache.maven.reporting.MavenReportException;
+import org.codehaus.plexus.util.IOUtil;
+
+/**
+ * Generates a HTML report for all the Camel endpoints and their configuration 
parameters
+ *
+ * @goal endpoints
+ * @phase site
+ */
+public class EndpointMojo extends AbstractMavenReport {
+
+/**
+ * Reference to Maven Project.
+ *
+ * @parameter property=project
+ * @required
+ * @readonly
+ */
+private MavenProject project;
+
+/**
+ * @component
+ * @required
+ * @readonly
+ */
+private Renderer renderer;
+
+/**
+ * Base output directory for reports.
+ *
+ * @parameter default-value=${project.build.directory}/site
+ * @required
+ */
+private File outputDirectory;
+
+
+protected void executeReport(final Locale locale) throws 
MavenReportException {
+try {
+File dir = new File(project.getBuild().getOutputDirectory(), 
org/apache/camel/component);
+getLog().info(Looking into directory  + dir.getAbsolutePath());
+if (dir.exists()  dir.isDirectory()) {
+File[] files = dir.listFiles(new FilenameFilter() {
+@Override
+public boolean accept(File dir, String name) {
+return name.toLowerCase().endsWith(.html);
+}
+});
+if (files != null  files.length  0) {
+boolean

svn commit: r1470842 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/component/bean/ camel-core/src/main/java/org/apache/camel/component/timer/ components/camel-jms/src/main/java/org/apac

2013-04-23 Thread jstrachan
Author: jstrachan
Date: Tue Apr 23 08:02:18 2013
New Revision: 1470842

URL: http://svn.apache.org/r1470842
Log:
port a bunch of components to use the new  UriEndpointComponent base class for 
Component implementations which makes use of the new @UriEndpoint / @UriParam 
annotations to provide better metadata in their ComponentConfiguration 
implementation; see CAMEL-6306 and CAMEL-6304

Added:

camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentConfigurationTest.java
   (with props)
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java

camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java

camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java

camel/trunk/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsComponent.java

camel/trunk/components/camel-sql/src/main/java/org/apache/camel/component/sql/SqlComponent.java

camel/trunk/components/camel-ssh/src/main/java/org/apache/camel/component/ssh/SshComponent.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java?rev=1470842r1=1470841r2=1470842view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/BeanComponent.java
 Tue Apr 23 08:02:18 2013
@@ -16,23 +16,23 @@
  */
 package org.apache.camel.component.bean;
 
-import java.util.Map;
-
 import org.apache.camel.Endpoint;
 import org.apache.camel.Processor;
-import org.apache.camel.impl.DefaultComponent;
 import org.apache.camel.impl.ProcessorEndpoint;
+import org.apache.camel.impl.UriEndpointComponent;
 import org.apache.camel.util.LRUSoftCache;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.util.Map;
+
 /**
  * The a href=http://camel.apache.org/bean.html;Bean Component/a
  * will look up the URI in the {@link org.apache.camel.spi.Registry} and use 
that to handle message dispatching.
  *
  * @version 
  */
-public class BeanComponent extends DefaultComponent {
+public class BeanComponent extends UriEndpointComponent {
 
 private static final transient Logger LOG = 
LoggerFactory.getLogger(BeanComponent.class);
 // use an internal soft cache for BeanInfo as they are costly to introspect
@@ -40,6 +40,7 @@ public class BeanComponent extends Defau
 private final LRUSoftCacheBeanInfoCacheKey, BeanInfo cache = new 
LRUSoftCacheBeanInfoCacheKey, BeanInfo(1000);
 
 public BeanComponent() {
+super(BeanEndpoint.class);
 }
 
 /**

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java?rev=1470842r1=1470841r2=1470842view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/timer/TimerComponent.java
 Tue Apr 23 08:02:18 2013
@@ -25,6 +25,7 @@ import java.util.Timer;
 
 import org.apache.camel.Endpoint;
 import org.apache.camel.impl.DefaultComponent;
+import org.apache.camel.impl.UriEndpointComponent;
 
 /**
  * Represents the component that manages {@link TimerEndpoint}.  It holds the
@@ -32,9 +33,13 @@ import org.apache.camel.impl.DefaultComp
  *
  * @version 
  */
-public class TimerComponent extends DefaultComponent {
+public class TimerComponent extends UriEndpointComponent {
 private final MapString, Timer timers = new HashMapString, Timer();
 
+public TimerComponent() {
+super(TimerEndpoint.class);
+}
+
 public Timer getTimer(TimerEndpoint endpoint) {
 String key = endpoint.getTimerName();
 if (!endpoint.isDaemon()) {

Modified: 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java?rev=1470842r1=1470841r2=1470842view=diff
==
--- 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
 (original)
+++ 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
 Tue Apr 23 08:02:18 2013
@@ -25,7 +25,7 @@ import javax.jms.Session;
 import org.apache.camel.CamelContext;
 import org.apache.camel.Endpoint;
 import org.apache.camel.LoggingLevel

svn commit: r1464879 - /camel/trunk/parent/pom.xml

2013-04-05 Thread jstrachan
Author: jstrachan
Date: Fri Apr  5 08:10:28 2013
New Revision: 1464879

URL: http://svn.apache.org/r1464879
Log:
upgraded to the latest rxjava release

Modified:
camel/trunk/parent/pom.xml

Modified: camel/trunk/parent/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/parent/pom.xml?rev=1464879r1=1464878r2=1464879view=diff
==
--- camel/trunk/parent/pom.xml (original)
+++ camel/trunk/parent/pom.xml Fri Apr  5 08:10:28 2013
@@ -315,7 +315,7 @@
 rhino-version1.7R2/rhino-version
 rome-bundle-version1.0_3/rome-bundle-version
 rome-version1.0/rome-version
-rxjava-version0.6.0/rxjava-version
+rxjava-version0.6.3/rxjava-version
 saaj-impl-version1.3.2_2/saaj-impl-version
 saxon-bundle-version9.4.0.4_2/saxon-bundle-version
 saxon-version9.4.0.4/saxon-version




svn commit: r1457229 - /camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java

2013-03-16 Thread jstrachan
Author: jstrachan
Date: Sat Mar 16 09:48:13 2013
New Revision: 1457229

URL: http://svn.apache.org/r1457229
Log:
fixes CAMEL-6169 so that the camelComponent.properties file is deployed into 
the maven repository; so folks can easily search for classifier 
camelComponent and extension properties to find all the camel components in 
a maven repo (from version 2.11 onwards)

Modified:

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java

Modified: 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java?rev=1457229r1=1457228r2=1457229view=diff
==
--- 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java
 (original)
+++ 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java
 Sat Mar 16 09:48:13 2013
@@ -25,6 +25,7 @@ import org.apache.maven.plugin.AbstractM
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.MavenProjectHelper;
 
 /**
  * Analyses the Camel plugins in a project and generates extra descriptor 
information for easier auto-discovery in Camel.
@@ -51,6 +52,13 @@ public class PackageMojo extends Abstrac
  */
 protected File outDir;
 
+/**
+ * Maven ProjectHelper.
+ *
+ * @component
+ * @readonly
+ */
+private MavenProjectHelper projectHelper;
 
 /**
  * Execute goal.
@@ -88,6 +96,10 @@ public class PackageMojo extends Abstrac
 try {
 properties.store(new FileWriter(outFile), Generated by 
camel-package-maven-plugin);
 getLog().info(Generated  + outFile +  containing the 
Camel  + (files.length  1 ? components  : component ) + names);
+
+if (projectHelper != null) {
+projectHelper.attachArtifact( this.project, 
properties, camelComponent, outFile);
+}
 } catch (IOException e) {
 throw new MojoExecutionException(Failed to write 
properties to  + outFile + . Reason:  + e, e);
 }




svn commit: r1457242 - /camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java

2013-03-16 Thread jstrachan
Author: jstrachan
Date: Sat Mar 16 12:23:19 2013
New Revision: 1457242

URL: http://svn.apache.org/r1457242
Log:
fixed maven plugin so that it includes the component.properties inside the jar

Modified:

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java

Modified: 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java?rev=1457242r1=1457241r2=1457242view=diff
==
--- 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java
 (original)
+++ 
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java
 Sat Mar 16 12:23:19 2013
@@ -19,6 +19,8 @@ package org.apache.camel.maven.packaging
 import java.io.File;
 import java.io.FileWriter;
 import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Properties;
 
 import org.apache.maven.plugin.AbstractMojo;
@@ -98,7 +100,10 @@ public class PackageMojo extends Abstrac
 getLog().info(Generated  + outFile +  containing the 
Camel  + (files.length  1 ? components  : component ) + names);
 
 if (projectHelper != null) {
-projectHelper.attachArtifact( this.project, 
properties, camelComponent, outFile);
+ListString includes = new ArrayListString();
+includes.add(**/component.properties);
+projectHelper.addResource(this.project, 
outDir.getPath(), includes, new ArrayListString());
+projectHelper.attachArtifact(this.project, 
properties, camelComponent, outFile);
 }
 } catch (IOException e) {
 throw new MojoExecutionException(Failed to write 
properties to  + outFile + . Reason:  + e, e);




svn commit: r1455850 - /camel/trunk/components/camel-rx/pom.xml

2013-03-13 Thread jstrachan
Author: jstrachan
Date: Wed Mar 13 09:39:11 2013
New Revision: 1455850

URL: http://svn.apache.org/r1455850
Log:
updated to the latest RxJava release

Modified:
camel/trunk/components/camel-rx/pom.xml

Modified: camel/trunk/components/camel-rx/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/pom.xml?rev=1455850r1=1455849r2=1455850view=diff
==
--- camel/trunk/components/camel-rx/pom.xml (original)
+++ camel/trunk/components/camel-rx/pom.xml Wed Mar 13 09:39:11 2013
@@ -48,7 +48,7 @@
 dependency
   groupIdcom.netflix.rxjava/groupId
   artifactIdrxjava-core/artifactId
-  version0.5.4/version
+  version0.6.0/version
 /dependency
 
 !-- test dependencies --




svn commit: r1453234 - in /camel/trunk/components/camel-rx: ./ src/main/java/org/apache/camel/rx/ src/main/java/org/apache/camel/rx/support/ src/test/java/org/apache/camel/rx/

2013-03-06 Thread jstrachan
Author: jstrachan
Date: Wed Mar  6 09:26:48 2013
New Revision: 1453234

URL: http://svn.apache.org/r1453234
Log:
added the ObservableMessage and ObservableBody helper classes which are 
Processors and make it easy to embed some RX processing code to handle messages 
/ bodies inside an existing camel route. e.g. its handy if you want to do 
filtering, marshalling or transforming before hitting the RX code. Also 
refactored some useful functions and classes into the support package, renamed 
the test cases to be more descriptive

Added:

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ObservableBody.java
   (with props)

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ObservableMessage.java
   (with props)

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ExchangeToBodyFunc1.java
   (with props)

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ExchangeToMessageFunc1.java
   (with props)

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ObservableProcessor.java
   (with props)

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ObserverSender.java
   (contents, props changed)
  - copied, changed from r1453182, 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ProducerObserver.java

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ProcessorToObserver.java
   (with props)

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableBodyTest.java
   (with props)

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageTest.java
   (with props)

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ToObservableAndMapTest.java
   (contents, props changed)
  - copied, changed from r1453182, 
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageMapTest.java

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ToObservableBodyTest.java
   (contents, props changed)
  - copied, changed from r1453182, 
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableBodyTest.java

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ToObservableTest.java
   (contents, props changed)
  - copied, changed from r1453182, 
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageTest.java
Removed:

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ProducerObserver.java

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageMapTest.java
Modified:
camel/trunk/components/camel-rx/pom.xml

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/EndpointSubscription.java

Modified: camel/trunk/components/camel-rx/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/pom.xml?rev=1453234r1=1453233r2=1453234view=diff
==
--- camel/trunk/components/camel-rx/pom.xml (original)
+++ camel/trunk/components/camel-rx/pom.xml Wed Mar  6 09:26:48 2013
@@ -54,7 +54,7 @@
 !-- test dependencies --
 dependency
   groupIdorg.apache.camel/groupId
-  artifactIdcamel-test-spring/artifactId  
+  artifactIdcamel-test/artifactId
   scopetest/scope
 /dependency
 dependency

Added: 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ObservableBody.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ObservableBody.java?rev=1453234view=auto
==
--- 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ObservableBody.java
 (added)
+++ 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ObservableBody.java
 Wed Mar  6 09:26:48 2013
@@ -0,0 +1,39 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.rx;
+
+import

svn commit: r1452207 - in /camel/trunk/components/camel-rx/src: main/java/org/apache/camel/rx/ReactiveCamel.java main/java/org/apache/camel/rx/support/ProducerObserver.java test/java/org/apache/camel/

2013-03-04 Thread jstrachan
Author: jstrachan
Date: Mon Mar  4 08:26:40 2013
New Revision: 1452207

URL: http://svn.apache.org/r1452207
Log:
added a helper method for sending events on any ObservableT to a camel 
endpoint

Added:

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ProducerObserver.java
   (with props)

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/SendToTest.java
   (with props)
Modified:

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java

Modified: 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java?rev=1452207r1=1452206r2=1452207view=diff
==
--- 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
 (original)
+++ 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
 Mon Mar  4 08:26:40 2013
@@ -23,6 +23,8 @@ import org.apache.camel.Exchange;
 import org.apache.camel.Message;
 import org.apache.camel.rx.support.EndpointObservable;
 import org.apache.camel.rx.support.EndpointSubscription;
+import org.apache.camel.rx.support.ProducerObserver;
+import org.apache.camel.util.CamelContextHelper;
 
 import rx.Observable;
 import rx.Observer;
@@ -45,7 +47,7 @@ public class ReactiveCamel {
  * to be processed using  a href=https://rx.codeplex.com/;Reactive 
Extensions/a
  */
 public ObservableMessage toObservable(String uri) {
-return toObservable(camelContext.getEndpoint(uri));
+return toObservable(endpoint(uri));
 }
 
 /**
@@ -54,7 +56,7 @@ public class ReactiveCamel {
  * to be processed using  a href=https://rx.codeplex.com/;Reactive 
Extensions/a
  */
 public T ObservableT toObservable(String uri, final ClassT bodyType) 
{
-return toObservable(camelContext.getEndpoint(uri), bodyType);
+return toObservable(endpoint(uri), bodyType);
 }
 
 
@@ -87,10 +89,33 @@ public class ReactiveCamel {
 });
 }
 
+/**
+ * Sends events on the given {@link Observable} to the given camel endpoint
+ */
+public T void sendTo(ObservableT observable, String endpointUri) {
+sendTo(observable, endpoint(endpointUri));
+}
+/**
+ * Sends events on the given {@link Observable} to the given camel endpoint
+ */
+public T void sendTo(ObservableT observable, Endpoint endpoint) {
+try {
+ProducerObserver observer = new ProducerObserver(endpoint);
+observable.subscribe(observer);
+} catch (Exception e) {
+throw new RuntimeCamelRxException(e);
+}
+}
+
+
 public CamelContext getCamelContext() {
 return camelContext;
 }
 
+public Endpoint endpoint(String endpointUri) {
+return CamelContextHelper.getMandatoryEndpoint(camelContext, 
endpointUri);
+}
+
 
 /**
  * Returns a newly created {@link Observable} given a function which 
converts
@@ -106,4 +131,5 @@ public class ReactiveCamel {
 };
 return new EndpointObservable(endpoint, func);
 }
+
 }

Added: 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ProducerObserver.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ProducerObserver.java?rev=1452207view=auto
==
--- 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ProducerObserver.java
 (added)
+++ 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/ProducerObserver.java
 Mon Mar  4 08:26:40 2013
@@ -0,0 +1,72 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.rx.support;
+
+import org.apache.camel.Endpoint;
+import org.apache.camel.Exchange;
+import org.apache.camel.Message;
+import org.apache.camel.Producer;
+import org.apache.camel.rx.RuntimeCamelRxException;
+
+import rx.Observer;
+
+/**
+ */
+public class ProducerObserver implements Observer

svn commit: r1452192 - in /camel/trunk/components: ./ camel-rx/ camel-rx/src/ camel-rx/src/main/ camel-rx/src/main/java/ camel-rx/src/main/java/org/ camel-rx/src/main/java/org/apache/ camel-rx/src/mai

2013-03-03 Thread jstrachan
Author: jstrachan
Date: Mon Mar  4 06:19:55 2013
New Revision: 1452192

URL: http://svn.apache.org/r1452192
Log:
Initial spike of Camel RX, the Reactive Extensions for Camel using RxJava

Added:
camel/trunk/components/camel-rx/
camel/trunk/components/camel-rx/pom.xml   (with props)
camel/trunk/components/camel-rx/src/
camel/trunk/components/camel-rx/src/main/
camel/trunk/components/camel-rx/src/main/java/
camel/trunk/components/camel-rx/src/main/java/org/
camel/trunk/components/camel-rx/src/main/java/org/apache/
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
   (with props)

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/RuntimeCamelRxException.java
   (with props)

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/package.html  
 (with props)
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/EndpointObservable.java
   (with props)

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/support/EndpointSubscription.java
   (with props)
camel/trunk/components/camel-rx/src/main/resources/
camel/trunk/components/camel-rx/src/main/resources/META-INF/
camel/trunk/components/camel-rx/src/main/resources/META-INF/LICENSE.txt   
(with props)
camel/trunk/components/camel-rx/src/main/resources/META-INF/NOTICE.txt   
(with props)
camel/trunk/components/camel-rx/src/test/
camel/trunk/components/camel-rx/src/test/java/
camel/trunk/components/camel-rx/src/test/java/org/
camel/trunk/components/camel-rx/src/test/java/org/apache/
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageMapTest.java
   (with props)

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageTest.java
   (with props)

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/RxTestSupport.java
   (with props)
camel/trunk/components/camel-rx/src/test/resources/
camel/trunk/components/camel-rx/src/test/resources/log4j.properties   (with 
props)
Modified:
camel/trunk/components/pom.xml

Added: camel/trunk/components/camel-rx/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/pom.xml?rev=1452192view=auto
==
--- camel/trunk/components/camel-rx/pom.xml (added)
+++ camel/trunk/components/camel-rx/pom.xml Mon Mar  4 06:19:55 2013
@@ -0,0 +1,72 @@
+?xml version=1.0 encoding=UTF-8?
+!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the License); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an AS IS BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+--
+project xmlns=http://maven.apache.org/POM/4.0.0; 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation=http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd;
+  modelVersion4.0.0/modelVersion
+
+  parent
+groupIdorg.apache.camel/groupId
+artifactIdcomponents/artifactId
+version2.11-SNAPSHOT/version
+  /parent
+
+  artifactIdcamel-rx/artifactId
+  packagingbundle/packaging
+  nameCamel :: RX/name
+  descriptionCamel Reactive Extensions support/description
+
+  properties
+camel.osgi.export.pkgorg.apache.camel.rx.*/camel.osgi.export.pkg
+!--
+camel.osgi.export.service
+/camel.osgi.export.service
+--
+  /properties
+
+
+  dependencies
+
+dependency
+  groupIdorg.apache.camel/groupId
+  artifactIdcamel-core/artifactId
+/dependency
+
+dependency
+  groupIdcom.netflix.rxjava/groupId
+  artifactIdrxjava-core/artifactId
+  version0.5.4/version
+/dependency
+
+!-- test dependencies --
+dependency
+  groupIdorg.apache.camel/groupId
+  artifactIdcamel-test-spring/artifactId  
+  scopetest/scope
+/dependency
+dependency
+  groupIdorg.slf4j/groupId
+  artifactIdslf4j-log4j12/artifactId
+  scopetest/scope
+/dependency
+dependency

svn commit: r1452193 - in /camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx: ReactiveCamel.java package.html

2013-03-03 Thread jstrachan
Author: jstrachan
Date: Mon Mar  4 06:22:28 2013
New Revision: 1452193

URL: http://svn.apache.org/r1452193
Log:
add link to the RxJava wiki which gives a better overview of what RxJava is 
about

Modified:

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/package.html

Modified: 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java?rev=1452193r1=1452192r2=1452193view=diff
==
--- 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
 (original)
+++ 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
 Mon Mar  4 06:22:28 2013
@@ -31,7 +31,7 @@ import rx.util.functions.Func1;
 
 /**
  * Provides the a href=https://rx.codeplex.com/;Reactive Extensions/a 
support for
- * Camel via the a href=https://github.com/Netflix/RxJava#readme;RxJava 
library/a
+ * Camel via the a href=https://github.com/Netflix/RxJava/wiki;RxJava 
library/a
  */
 public class ReactiveCamel {
 private final CamelContext camelContext;

Modified: 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/package.html
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/package.html?rev=1452193r1=1452192r2=1452193view=diff
==
--- 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/package.html 
(original)
+++ 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/package.html 
Mon Mar  4 06:22:28 2013
@@ -20,7 +20,7 @@
 body
 
 The a href=http://camel.apache.org/rx.html;Reactive Camel/a library for 
working with Reactive Extensions
-and Camel
+and Camel using a href=https://github.com/Netflix/RxJava/wiki;RxJava/a
 
 /body
 /html




svn commit: r1452197 - in /camel/trunk/components/camel-rx/src: main/java/org/apache/camel/rx/ test/java/org/apache/camel/rx/

2013-03-03 Thread jstrachan
Author: jstrachan
Date: Mon Mar  4 07:06:12 2013
New Revision: 1452197

URL: http://svn.apache.org/r1452197
Log:
added an overloaded version of toObservable() that takes the body type as an 
argument so that the body of the message can be extracted and processed as an 
Observable directly for cases where the user knows the type of the payload in a 
message

Added:

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableBodyTest.java
  - copied, changed from r1452192, 
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageTest.java

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/Order.java   
(with props)
Modified:

camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java

camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/RxTestSupport.java

Modified: 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java?rev=1452197r1=1452196r2=1452197view=diff
==
--- 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
 (original)
+++ 
camel/trunk/components/camel-rx/src/main/java/org/apache/camel/rx/ReactiveCamel.java
 Mon Mar  4 07:06:12 2013
@@ -49,6 +49,17 @@ public class ReactiveCamel {
 }
 
 /**
+ * Returns an {@link rx.Observable T} for the messages with their 
payload converted to the given type
+ * to allow the messages sent on the endpoint
+ * to be processed using  a href=https://rx.codeplex.com/;Reactive 
Extensions/a
+ */
+public T ObservableT toObservable(String uri, final ClassT bodyType) 
{
+return toObservable(camelContext.getEndpoint(uri), bodyType);
+}
+
+
+
+/**
  * Returns an {@link rx.Observable  org.apache.camel.Message } to allow 
the messages sent on the endpoint
  * to be processed using  a href=https://rx.codeplex.com/;Reactive 
Extensions/a
  */
@@ -61,6 +72,21 @@ public class ReactiveCamel {
 });
 }
 
+/**
+ * Returns an {@link rx.Observable T} for the messages with their 
payload converted to the given type
+ * to allow the messages sent on the endpoint
+ * to be processed using  a href=https://rx.codeplex.com/;Reactive 
Extensions/a
+ */
+public T ObservableT toObservable(Endpoint endpoint, final ClassT 
bodyType) {
+return createEndpointObservable(endpoint, new Func1Exchange, T() {
+@Override
+public T call(Exchange exchange) {
+Message in = exchange.getIn();
+return in.getBody(bodyType);
+}
+});
+}
+
 public CamelContext getCamelContext() {
 return camelContext;
 }

Copied: 
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableBodyTest.java
 (from r1452192, 
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageTest.java)
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableBodyTest.java?p2=camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableBodyTest.javap1=camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageTest.javar1=1452192r2=1452197rev=1452197view=diff
==
--- 
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableMessageTest.java
 (original)
+++ 
camel/trunk/components/camel-rx/src/test/java/org/apache/camel/rx/ObservableBodyTest.java
 Mon Mar  4 07:06:12 2013
@@ -17,7 +17,6 @@
  */
 package org.apache.camel.rx;
 
-import org.apache.camel.Message;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.junit.Test;
 import org.slf4j.Logger;
@@ -25,27 +24,48 @@ import org.slf4j.LoggerFactory;
 
 import rx.Observable;
 import rx.util.functions.Action1;
+import rx.util.functions.Func1;
 
 /**
  */
-public class ObservableMessageTest extends RxTestSupport {
-private static final transient Logger LOG = 
LoggerFactory.getLogger(ObservableMessageTest.class);
+public class ObservableBodyTest extends RxTestSupport {
+private static final transient Logger LOG = 
LoggerFactory.getLogger(ObservableBodyTest.class);
 
 @Test
 public void testConsume() throws Exception {
 final MockEndpoint mockEndpoint = 
camelContext.getEndpoint(mock:results, MockEndpoint.class);
-mockEndpoint.expectedMessageCount(4);
+mockEndpoint.expectedBodiesReceived(b, d);
 
-ObservableMessage observable = 
reactiveCamel.toObservable(timer://foo?fixedRate=trueperiod=100);
-observable.take(4).subscribe(new Action1Message() {
+// lets consume, filter and map events
+ObservableOrder observable

svn commit: r1404218 - in /camel/trunk: camel-core/ components/ tooling/maven/ tooling/maven/camel-package-maven-plugin/ tooling/maven/camel-package-maven-plugin/src/ tooling/maven/camel-package-maven

2012-10-31 Thread jstrachan
Author: jstrachan
Date: Wed Oct 31 16:09:22 2012
New Revision: 1404218

URL: http://svn.apache.org/viewvc?rev=1404218view=rev
Log:
added a simple camel maven plugin to generate a 
META-INF/services/org/apache/camel/component.properties file in each jar which 
contains a camel component (we could do the same trick for languages too) so we 
can easily auto-detect components on the classpath

Added:
camel/trunk/tooling/maven/camel-package-maven-plugin/
camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml   (with props)
camel/trunk/tooling/maven/camel-package-maven-plugin/src/
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java
   (with props)
camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/resources/

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/resources/META-INF/

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/resources/META-INF/LICENSE.txt
   (with props)

camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/resources/META-INF/NOTICE.txt
   (with props)
Modified:
camel/trunk/camel-core/pom.xml
camel/trunk/components/pom.xml
camel/trunk/tooling/maven/pom.xml

Modified: camel/trunk/camel-core/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/pom.xml?rev=1404218r1=1404217r2=1404218view=diff
==
--- camel/trunk/camel-core/pom.xml (original)
+++ camel/trunk/camel-core/pom.xml Wed Oct 31 16:09:22 2012
@@ -159,6 +159,20 @@
   forkedProcessTimeoutInSeconds3000/forkedProcessTimeoutInSeconds
 /configuration
   /plugin
+
+  plugin
+groupIdorg.apache.camel/groupId
+artifactIdcamel-package-maven-plugin/artifactId
+version${project.version}/version
+executions
+  execution
+goals
+  goalpackage/goal
+/goals
+phasecompile/phase
+  /execution
+/executions
+  /plugin
 /plugins
   /build
 

Modified: camel/trunk/components/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/pom.xml?rev=1404218r1=1404217r2=1404218view=diff
==
--- camel/trunk/components/pom.xml (original)
+++ camel/trunk/components/pom.xml Wed Oct 31 16:09:22 2012
@@ -169,4 +169,21 @@
 modulecamel-zookeeper/module
   /modules
 
+  build
+plugins
+  plugin
+groupIdorg.apache.camel/groupId
+artifactIdcamel-package-maven-plugin/artifactId
+version${project.version}/version
+executions
+  execution
+goals
+  goalpackage/goal
+/goals
+phasecompile/phase
+  /execution
+/executions
+  /plugin
+/plugins
+  /build
 /project

Added: camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml?rev=1404218view=auto
==
--- camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml (added)
+++ camel/trunk/tooling/maven/camel-package-maven-plugin/pom.xml Wed Oct 31 
16:09:22 2012
@@ -0,0 +1,69 @@
+?xml version=1.0 encoding=UTF-8?
+!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the License); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an AS IS BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+--
+project xmlns=http://maven.apache.org/POM/4.0.0; 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation=http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven

svn commit: r1404252 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/impl/ camel-core/src/main/java/org/apache/camel/spi/ camel-core/src/main/java/org/apache/camel/util/ camel-core/src/te

2012-10-31 Thread jstrachan
Author: jstrachan
Date: Wed Oct 31 17:04:13 2012
New Revision: 1404252

URL: http://svn.apache.org/viewvc?rev=1404252view=rev
Log:
added a helper method so we can easily discover all the components on the 
classpath or in the Registry (assuming they all use the 
camel-package-maven-plugin that is for classpath discovery :)

Added:

camel/trunk/camel-core/src/main/java/org/apache/camel/util/LoadPropertiesException.java
   (with props)

camel/trunk/camel-core/src/test/java/org/apache/camel/component/ComponentDiscoveryTest.java
   (with props)
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultClassResolver.java
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/ClassResolver.java

camel/trunk/camel-core/src/main/java/org/apache/camel/util/CamelContextHelper.java

camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiClassResolver.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultClassResolver.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultClassResolver.java?rev=1404252r1=1404251r2=1404252view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultClassResolver.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultClassResolver.java
 Wed Oct 31 17:04:13 2012
@@ -18,6 +18,7 @@ package org.apache.camel.impl;
 
 import java.io.InputStream;
 import java.net.URL;
+import java.util.Enumeration;
 
 import org.apache.camel.spi.ClassResolver;
 import org.apache.camel.util.CastUtils;
@@ -88,6 +89,12 @@ public class DefaultClassResolver implem
 return ObjectHelper.loadResourceAsURL(uri);
 }
 
+@Override
+public EnumerationURL loadResourcesAsURL(String uri) {
+ObjectHelper.notEmpty(uri, uri);
+return ObjectHelper.loadResourcesAsURL(uri);
+}
+
 protected Class? loadClass(String name, ClassLoader loader) {
 ObjectHelper.notEmpty(name, name);
 return ObjectHelper.loadClass(name, loader);

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/ClassResolver.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/spi/ClassResolver.java?rev=1404252r1=1404251r2=1404252view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/ClassResolver.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/ClassResolver.java 
Wed Oct 31 17:04:13 2012
@@ -18,6 +18,7 @@ package org.apache.camel.spi;
 
 import java.io.InputStream;
 import java.net.URL;
+import java.util.Enumeration;
 
 /**
  * A class resolver for loading classes in a loosly coupled manner to cater 
for different platforms such
@@ -117,4 +118,11 @@ public interface ClassResolver {
  */
 URL loadResourceAsURL(String uri);
 
+/**
+ * Loads the given resources as a URL
+ *
+ * @param uri the uri of the resource
+ * @return the URLs found on the classpath
+ */
+EnumerationURL loadResourcesAsURL(String uri);
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/CamelContextHelper.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/util/CamelContextHelper.java?rev=1404252r1=1404251r2=1404252view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/CamelContextHelper.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/CamelContextHelper.java
 Wed Oct 31 17:04:13 2012
@@ -16,9 +16,19 @@
  */
 package org.apache.camel.util;
 
+import java.io.IOException;
+import java.net.URL;
+import java.util.Enumeration;
 import java.util.Locale;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.SortedMap;
+import java.util.StringTokenizer;
+import java.util.TreeMap;
 
 import org.apache.camel.CamelContext;
+import org.apache.camel.Component;
 import org.apache.camel.Endpoint;
 import org.apache.camel.Exchange;
 import org.apache.camel.NoSuchBeanException;
@@ -34,6 +44,7 @@ import static org.apache.camel.util.Obje
  * @version 
  */
 public final class CamelContextHelper {
+public static final String COMPONENT_DESCRIPTOR = 
META-INF/services/org/apache/camel/component.properties;
 
 /**
  * Utility classes should not have a public constructor.
@@ -338,4 +349,45 @@ public final class CamelContextHelper {
 return null;
 }
 
+/**
+ * Finds all possible Components on the classpath and Registry
+ */
+public static SortedMapString, Properties findComponents(CamelContext 
camelContext) throws LoadPropertiesException {
+SortedMapString,Properties map = new

svn commit: r1400019 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/component/binding/ camel-core/src/main/java/org/apache/camel/processor/binding/ camel-core/src/main/java/org/apache/ca

2012-10-19 Thread jstrachan
Author: jstrachan
Date: Fri Oct 19 10:04:59 2012
New Revision: 1400019

URL: http://svn.apache.org/viewvc?rev=1400019view=rev
Log:
initial spike of support for Bindings on camel endpoints. see 
https://cwiki.apache.org/confluence/display/CAMEL/Binding for more details

Added:
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/

camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java
   (with props)

camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingConsumerProcessor.java
   (with props)

camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingEndpoint.java
   (with props)

camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingNameComponent.java
   (with props)

camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingProducer.java
   (with props)
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/

camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/DataFormatBinding.java
   (with props)

camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/package.html
  - copied, changed from r1399705, 
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/aggregate/package.html
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/Binding.java   
(with props)

camel/trunk/camel-core/src/main/resources/META-INF/services/org/apache/camel/component/binding
  - copied, changed from r1399705, 
camel/trunk/camel-core/src/main/resources/META-INF/services/org/apache/camel/component/bean

camel/trunk/components/camel-jackson/src/test/java/org/apache/camel/component/jackson/JacksonBindingTest.java
  - copied, changed from r1399705, 
camel/trunk/components/camel-jackson/src/test/java/org/apache/camel/component/jackson/JacksonMarshalTest.java

camel/trunk/components/camel-jackson/src/test/java/org/apache/camel/component/jackson/JacksonNameBindingTest.java
   (with props)

Added: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java?rev=1400019view=auto
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java
 (added)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java
 Fri Oct 19 10:04:59 2012
@@ -0,0 +1,100 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.binding;
+
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.Endpoint;
+import org.apache.camel.impl.DefaultComponent;
+import org.apache.camel.spi.Binding;
+import org.apache.camel.util.CamelContextHelper;
+import org.apache.camel.util.ObjectHelper;
+
+import static org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint;
+
+/**
+ * A composite {@link Component} which creates a {@link BindingEndpoint} from a
+ * configured {@link Binding} instance and using the optional {@link 
#setUriPostfix(String)}
+ * and {@link #setUriPostfix(String)} to create the underlying endpoint from 
the remaining URI
+ */
+public class BindingComponent extends DefaultComponent {
+private Binding binding;
+private String uriPrefix;
+private String uriPostfix;
+
+public BindingComponent() {
+}
+
+public BindingComponent(Binding binding) {
+this.binding = binding;
+}
+
+public BindingComponent(Binding binding, String uriPrefix) {
+this(binding);
+this.uriPrefix = uriPrefix;
+}
+
+public BindingComponent(Binding binding, String uriPrefix, String 
uriPostfix) {
+this(binding, uriPrefix);
+this.uriPostfix = uriPostfix;
+}
+
+public Binding getBinding() {
+return binding;
+}
+
+public void setBinding(Binding binding) {
+this.binding = binding;
+}
+
+public String getUriPostfix() {
+return uriPostfix;
+}
+
+public

svn commit: r1400025 - /camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java

2012-10-19 Thread jstrachan
Author: jstrachan
Date: Fri Oct 19 10:27:01 2012
New Revision: 1400025

URL: http://svn.apache.org/viewvc?rev=1400025view=rev
Log:
fixed typeo

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java?rev=1400025r1=1400024r2=1400025view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingComponent.java
 Fri Oct 19 10:27:01 2012
@@ -30,7 +30,7 @@ import static org.apache.camel.util.Came
 
 /**
  * A composite {@link Component} which creates a {@link BindingEndpoint} from a
- * configured {@link Binding} instance and using the optional {@link 
#setUriPostfix(String)}
+ * configured {@link Binding} instance and using the optional {@link 
#setUriPrefix(String)}
  * and {@link #setUriPostfix(String)} to create the underlying endpoint from 
the remaining URI
  */
 public class BindingComponent extends DefaultComponent {




svn commit: r1400030 - /camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/DataFormatBinding.java

2012-10-19 Thread jstrachan
Author: jstrachan
Date: Fri Oct 19 10:31:20 2012
New Revision: 1400030

URL: http://svn.apache.org/viewvc?rev=1400030view=rev
Log:
removed some old cruft

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/DataFormatBinding.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/DataFormatBinding.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/DataFormatBinding.java?rev=1400030r1=1400029r2=1400030view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/DataFormatBinding.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/binding/DataFormatBinding.java
 Fri Oct 19 10:31:20 2012
@@ -82,17 +82,4 @@ public class DataFormatBinding implement
 public void setProducerDataFormat(DataFormat producerDataFormat) {
 this.producerDataFormat = producerDataFormat;
 }
-
-
-/**
- * We need to set the exchange as being out capable for the output to be 
copied in a pipeline
- * p/
- * TODO should we be more clever about other patterns here?
- */
-protected void makeOutCapable(Exchange exchange) {
-if (!exchange.getPattern().isOutCapable()) {
-exchange.setPattern(ExchangePattern.InOut);
-}
-}
-
 }




svn commit: r1400095 - in /camel/trunk/camel-core/src/main/java/org/apache/camel: component/binding/BindingEndpoint.java spi/HasBinding.java

2012-10-19 Thread jstrachan
Author: jstrachan
Date: Fri Oct 19 13:39:56 2012
New Revision: 1400095

URL: http://svn.apache.org/viewvc?rev=1400095view=rev
Log:
added a little interface so its easy to discover a binding on an endpoint

Added:
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasBinding.java   
(with props)
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingEndpoint.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingEndpoint.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingEndpoint.java?rev=1400095r1=1400094r2=1400095view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingEndpoint.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/binding/BindingEndpoint.java
 Fri Oct 19 13:39:56 2012
@@ -25,6 +25,7 @@ import org.apache.camel.Processor;
 import org.apache.camel.Producer;
 import org.apache.camel.impl.DefaultEndpoint;
 import org.apache.camel.spi.Binding;
+import org.apache.camel.spi.HasBinding;
 import org.apache.camel.util.ExchangeHelper;
 
 /**
@@ -32,7 +33,7 @@ import org.apache.camel.util.ExchangeHel
  * before its sent to the endpoint and processes messages received by the 
endpoint consumer before its passed
  * to the real consumer.
  */
-public class BindingEndpoint extends DefaultEndpoint {
+public class BindingEndpoint extends DefaultEndpoint implements HasBinding {
 private final Binding binding;
 private final Endpoint delegate;
 
@@ -58,6 +59,7 @@ public class BindingEndpoint extends Def
 return true;
 }
 
+@Override
 public Binding getBinding() {
 return binding;
 }

Added: camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasBinding.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasBinding.java?rev=1400095view=auto
==
--- camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasBinding.java 
(added)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasBinding.java 
Fri Oct 19 13:39:56 2012
@@ -0,0 +1,32 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spi;
+
+/**
+ * Allows objects such as Endpoints to expose that they have a
+ * a href=http://camel.apache.org/binding.html;Binding/a.
+ *
+ * For example bean or cxf endpoints can expose the internal binding metadata 
at runtime
+ */
+public interface HasBinding {
+
+/**
+ * Returns the binding for this endpoint if one can be deduced or is 
associated
+ */
+Binding getBinding();
+}

Propchange: 
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasBinding.java
--
svn:eol-style = native




svn commit: r1399664 - in /camel/trunk: parent/ tooling/archetypes/camel-archetype-activemq/src/main/resources/archetype-resources/ tooling/archetypes/camel-archetype-blueprint/src/main/resources/arch

2012-10-18 Thread jstrachan
Author: jstrachan
Date: Thu Oct 18 13:55:22 2012
New Revision: 1399664

URL: http://svn.apache.org/viewvc?rev=1399664view=rev
Log:
added resources plugin to the archetypes to avoid eclipse m2e errors when 
importing the archetype genearted project

Modified:
camel/trunk/parent/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-activemq/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-blueprint/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-component-scala/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-component/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-dataformat/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-java/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-scala/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-spring-dm/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-spring/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-web/src/main/resources/archetype-resources/pom.xml

camel/trunk/tooling/archetypes/camel-archetype-webconsole/src/main/resources/archetype-resources/pom.xml

Modified: camel/trunk/parent/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/parent/pom.xml?rev=1399664r1=1399663r2=1399664view=diff
==
--- camel/trunk/parent/pom.xml (original)
+++ camel/trunk/parent/pom.xml Thu Oct 18 13:55:22 2012
@@ -223,6 +223,7 @@
 lucene-version3.6.1/lucene-version
 lightcouch-version0.0.4/lightcouch-version
 !-- needed from tooling/archetypes --
+maven-resources-plugin-version2.4.3/maven-resources-plugin-version
 maven-reporting-api-version2.2.1/maven-reporting-api-version
 maven-reporting-impl-version2.0.5/maven-reporting-impl-version
 maven-version2.0/maven-version
@@ -2076,7 +2077,7 @@
 plugin
   groupIdorg.apache.maven.plugins/groupId
   artifactIdmaven-resources-plugin/artifactId
-  version2.4.3/version
+  version${maven-resources-plugin-version}/version
   configuration
 encodingUTF-8/encoding
   /configuration

Modified: 
camel/trunk/tooling/archetypes/camel-archetype-activemq/src/main/resources/archetype-resources/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/archetypes/camel-archetype-activemq/src/main/resources/archetype-resources/pom.xml?rev=1399664r1=1399663r2=1399664view=diff
==
--- 
camel/trunk/tooling/archetypes/camel-archetype-activemq/src/main/resources/archetype-resources/pom.xml
 (original)
+++ 
camel/trunk/tooling/archetypes/camel-archetype-activemq/src/main/resources/archetype-resources/pom.xml
 Thu Oct 18 13:55:22 2012
@@ -108,6 +108,14 @@
   target1.6/target
 /configuration
   /plugin
+  plugin
+groupIdorg.apache.maven.plugins/groupId
+artifactIdmaven-resources-plugin/artifactId
+version${maven-resources-plugin-version}/version
+configuration
+  encodingUTF-8/encoding
+/configuration
+  /plugin
 
   !-- allows the route to be ran via 'mvn camel:run' --
   plugin

Modified: 
camel/trunk/tooling/archetypes/camel-archetype-blueprint/src/main/resources/archetype-resources/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/archetypes/camel-archetype-blueprint/src/main/resources/archetype-resources/pom.xml?rev=1399664r1=1399663r2=1399664view=diff
==
--- 
camel/trunk/tooling/archetypes/camel-archetype-blueprint/src/main/resources/archetype-resources/pom.xml
 (original)
+++ 
camel/trunk/tooling/archetypes/camel-archetype-blueprint/src/main/resources/archetype-resources/pom.xml
 Thu Oct 18 13:55:22 2012
@@ -88,6 +88,14 @@
   target1.6/target
 /configuration
   /plugin
+  plugin
+groupIdorg.apache.maven.plugins/groupId
+artifactIdmaven-resources-plugin/artifactId
+version${maven-resources-plugin-version}/version
+configuration
+  encodingUTF-8/encoding
+/configuration
+  /plugin
 
   !-- to generate the MANIFEST-FILE of the bundle --
   plugin

Modified: 
camel/trunk/tooling/archetypes/camel-archetype-component-scala/src/main/resources/archetype-resources/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/tooling/archetypes/camel-archetype-component-scala/src/main/resources/archetype-resources/pom.xml?rev=1399664r1=1399663r2=1399664view=diff

svn commit: r1390918 - in /camel/trunk: components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/ examples/camel-example-cdi/ examples/camel-example-cdi/src/test/java/org/apache/camel/example/

2012-09-27 Thread jstrachan
Author: jstrachan
Date: Thu Sep 27 10:04:36 2012
New Revision: 1390918

URL: http://svn.apache.org/viewvc?rev=1390918view=rev
Log:
split the example integration test into 2 separate tests; one using an embedded 
@Produces @ContextAware RouteBuilder producer method and another using a 
separate TestRouteBuilder; also fixed the bug in CamelContextConfig of not 
correctly using the correct class for producer methods or beans

Added:

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/one/

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/one/IntegrationTest.java
   (contents, props changed)
  - copied, changed from r1390881, 
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/two/

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/two/SeparateRouteBuilderIntegrationTest.java
   (contents, props changed)
  - copied, changed from r1390867, 
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/two/TestRouteBuilder.java
   (with props)
Removed:

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java
Modified:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java
camel/trunk/examples/camel-example-cdi/pom.xml

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java?rev=1390918r1=1390917r2=1390918view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java
 Thu Sep 27 10:04:36 2012
@@ -28,6 +28,7 @@ import org.apache.camel.RuntimeCamelExce
 import org.apache.camel.cdi.CdiCamelContext;
 import org.apache.camel.model.RouteContainer;
 import org.apache.camel.util.ObjectHelper;
+import org.jboss.weld.bean.ProducerMethod;
 
 /**
  * Configuration options to be applied to a {@link 
org.apache.camel.CamelContext} by a {@link CamelContextBean}
@@ -43,6 +44,10 @@ public class CamelContextConfig {
 for (Bean? bean : routeBuilderBeans) {
 CreationalContext? createContext = 
beanManager.createCreationalContext(bean);
 Class? beanClass = bean.getBeanClass();
+if (bean instanceof ProducerMethod) {
+ProducerMethod producerMethod = (ProducerMethod) bean;
+beanClass = producerMethod.getType();
+}
 Object reference = beanManager.getReference(bean, beanClass, 
createContext);
 ObjectHelper.notNull(reference, Could not instantiate bean of 
type  + beanClass.getName() +  for  + bean);
 try {

Modified: camel/trunk/examples/camel-example-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-cdi/pom.xml?rev=1390918r1=1390917r2=1390918view=diff
==
--- camel/trunk/examples/camel-example-cdi/pom.xml (original)
+++ camel/trunk/examples/camel-example-cdi/pom.xml Thu Sep 27 10:04:36 2012
@@ -145,6 +145,20 @@
   failOnMissingWebXmlfalse/failOnMissingWebXml
 /configuration
   /plugin
+
+  plugin
+!-- lets re-enable IntegrationTest --
+groupIdorg.apache.maven.plugins/groupId
+artifactIdmaven-surefire-plugin/artifactId
+configuration
+  includes
+include**/*Test.java/include
+  /includes
+  excludes
+exclude**/*XXXTest.*/exclude
+  /excludes
+/configuration
+  /plugin
 /plugins
   /build
 
@@ -156,6 +170,13 @@
   /activation
   dependencies
 dependency
+groupIdorg.jboss.spec/groupId
+artifactIdjboss-javaee-6.0/artifactId
+version${jboss-javaee-6-version}/version
+typepom/type
+scopeprovided/scope
+/dependency
+dependency
   groupIdorg.jboss.arquillian.container/groupId
   artifactIdarquillian-weld-ee-embedded-1.1/artifactId
   version${arquillian-weld-ee-embedded-version}/version

Copied: 
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/one/IntegrationTest.java
 (from r1390881, 
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java)
URL: 
http://svn.apache.org/viewvc/camel

svn commit: r1390923 - /camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java

2012-09-27 Thread jstrachan
Author: jstrachan
Date: Thu Sep 27 10:12:12 2012
New Revision: 1390923

URL: http://svn.apache.org/viewvc?rev=1390923view=rev
Log:
avoid using a weld class directly (used by accident, bad James! :)

Modified:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java?rev=1390923r1=1390922r2=1390923view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/internal/CamelContextConfig.java
 Thu Sep 27 10:12:12 2012
@@ -16,8 +16,10 @@
  */
 package org.apache.camel.cdi.internal;
 
+import java.lang.reflect.Type;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Set;
 
 import javax.enterprise.context.spi.CreationalContext;
 import javax.enterprise.inject.spi.Bean;
@@ -28,7 +30,6 @@ import org.apache.camel.RuntimeCamelExce
 import org.apache.camel.cdi.CdiCamelContext;
 import org.apache.camel.model.RouteContainer;
 import org.apache.camel.util.ObjectHelper;
-import org.jboss.weld.bean.ProducerMethod;
 
 /**
  * Configuration options to be applied to a {@link 
org.apache.camel.CamelContext} by a {@link CamelContextBean}
@@ -44,9 +45,13 @@ public class CamelContextConfig {
 for (Bean? bean : routeBuilderBeans) {
 CreationalContext? createContext = 
beanManager.createCreationalContext(bean);
 Class? beanClass = bean.getBeanClass();
-if (bean instanceof ProducerMethod) {
-ProducerMethod producerMethod = (ProducerMethod) bean;
-beanClass = producerMethod.getType();
+SetType types = bean.getTypes();
+for (Type type : types) {
+// lets use the first type for producer methods
+if (type instanceof Class?) {
+beanClass = (Class?) type;
+break;
+}
 }
 Object reference = beanManager.getReference(bean, beanClass, 
createContext);
 ObjectHelper.notNull(reference, Could not instantiate bean of 
type  + beanClass.getName() +  for  + bean);




svn commit: r1389291 - in /camel/trunk/tests/camel-itest-cdi: ./ src/main/java/org/apache/camel/itest/cdi/ src/main/java/org/apache/camel/itest/cdi/properties/ src/test/java/org/apache/camel/itest/cdi

2012-09-24 Thread jstrachan
Author: jstrachan
Date: Mon Sep 24 11:02:03 2012
New Revision: 1389291

URL: http://svn.apache.org/viewvc?rev=1389291view=rev
Log:
re-enabled the IntegrationTest of camel-cdi and moved the properties test into 
a separate package so its a bit easier to test the two integration tests in 
Arquillian

Added:

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel1Config.java
   (contents, props changed)
  - copied, changed from r1388550, 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel1Config.java

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel2Config.java
   (contents, props changed)
  - copied, changed from r1388550, 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel2Config.java

camel/trunk/tests/camel-itest-cdi/src/test/java/org/apache/camel/itest/cdi/properties/

camel/trunk/tests/camel-itest-cdi/src/test/java/org/apache/camel/itest/cdi/properties/PropertiesConfigurationTest.java
   (contents, props changed)
  - copied, changed from r1388550, 
camel/trunk/tests/camel-itest-cdi/src/test/java/org/apache/camel/itest/cdi/PropertiesConfigurationTest.java
Removed:

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel1Config.java

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel2Config.java

camel/trunk/tests/camel-itest-cdi/src/test/java/org/apache/camel/itest/cdi/PropertiesConfigurationTest.java
Modified:
camel/trunk/tests/camel-itest-cdi/pom.xml

Modified: camel/trunk/tests/camel-itest-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/tests/camel-itest-cdi/pom.xml?rev=1389291r1=1389290r2=1389291view=diff
==
--- camel/trunk/tests/camel-itest-cdi/pom.xml (original)
+++ camel/trunk/tests/camel-itest-cdi/pom.xml Mon Sep 24 11:02:03 2012
@@ -62,6 +62,23 @@
 /dependency
 /dependencies
 
+build
+  plugins
+plugin
+  !-- lets re-enable IntegrationTest --
+  groupIdorg.apache.maven.plugins/groupId
+  artifactIdmaven-surefire-plugin/artifactId
+  configuration
+includes
+  include**/*Test.java/include
+/includes
+excludes
+  exclude**/*XXXTest.*/exclude
+/excludes
+  /configuration
+/plugin
+  /plugins
+/build
 profiles
 profile
 idarquillian-weld-ee-embedded/id

Copied: 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel1Config.java
 (from r1388550, 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel1Config.java)
URL: 
http://svn.apache.org/viewvc/camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel1Config.java?p2=camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel1Config.javap1=camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel1Config.javar1=1388550r2=1389291rev=1389291view=diff
==
--- 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel1Config.java
 (original)
+++ 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel1Config.java
 Mon Sep 24 11:02:03 2012
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.camel.itest.cdi;
+package org.apache.camel.itest.cdi.properties;
 
 import org.apache.deltaspike.core.api.config.PropertyFileConfig;
 

Propchange: 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel1Config.java
--
svn:eol-style = native

Copied: 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel2Config.java
 (from r1388550, 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel2Config.java)
URL: 
http://svn.apache.org/viewvc/camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel2Config.java?p2=camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/properties/Camel2Config.javap1=camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel2Config.javar1=1388550r2=1389291rev=1389291view=diff
==
--- 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Camel2Config.java
 (original)
+++ 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache

svn commit: r1389294 - /camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CamelContextAwareTest.java

2012-09-24 Thread jstrachan
Author: jstrachan
Date: Mon Sep 24 11:05:12 2012
New Revision: 1389294

URL: http://svn.apache.org/viewvc?rev=1389294view=rev
Log:
avoid unnecessary extra injection point

Modified:

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CamelContextAwareTest.java

Modified: 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CamelContextAwareTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CamelContextAwareTest.java?rev=1389294r1=1389293r2=1389294view=diff
==
--- 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CamelContextAwareTest.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CamelContextAwareTest.java
 Mon Sep 24 11:05:12 2012
@@ -30,9 +30,6 @@ public class CamelContextAwareTest exten
 @Inject
 private ContextAwareBean bean;
 
-@Inject
-private CamelContext context;
-
 @Test
 public void shouldInjectCamelContextToBean() throws InterruptedException {
 assertNotNull(bean.getCamelContext());




svn commit: r1381202 - in /camel/trunk: components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/ tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/ tests/camel-itest-cd

2012-09-05 Thread jstrachan
Author: jstrachan
Date: Wed Sep  5 14:42:52 2012
New Revision: 1381202

URL: http://svn.apache.org/viewvc?rev=1381202view=rev
Log:
improved CAMEL-5566 so we can use @CamelStartup on @Produces methods too; for 
example when reusing a RouteBuilder class multiple times with different 
configurations/injections

Added:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextConfig.java
   (with props)

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/MyConfig.java
   (with props)

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/MyRouteBuilder.java
   (with props)
Modified:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextBean.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/Constants.java

camel/trunk/tests/camel-itest-cdi/src/test/java/org/apache/camel/itest/cdi/IntegrationTest.java

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextBean.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextBean.java?rev=1381202r1=1381201r2=1381202view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextBean.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextBean.java
 Wed Sep  5 14:42:52 2012
@@ -47,19 +47,19 @@ public class CamelContextBean implements
 private final BeanManager beanManager;
 private final String name;
 private final String camelContextName;
-private final ListBean? routeBuilderBeans;
 private final InjectionTargetCdiCamelContext target;
+private final CamelContextConfig config;
 
 public CamelContextBean(BeanManager beanManager) {
-this(beanManager, CamelContext, , Collections.EMPTY_LIST);
+this(beanManager, CamelContext, , new CamelContextConfig());
 }
 
 public CamelContextBean(BeanManager beanManager, String name, String 
camelContextName,
-ListBean? routeBuilderBeans) {
+CamelContextConfig config) {
 this.beanManager = beanManager;
 this.name = name;
 this.camelContextName = camelContextName;
-this.routeBuilderBeans = routeBuilderBeans;
+this.config = config;
 this.target = 
beanManager.createInjectionTarget(beanManager.createAnnotatedType(CdiCamelContext.class));
 }
 
@@ -131,14 +131,6 @@ public class CamelContextBean implements
 }
 
 public void configureCamelContext(CdiCamelContext camelContext) {
-for (Bean? bean : routeBuilderBeans) {
-CreationalContext? creationalContext = 
beanManager.createCreationalContext(bean);
-RouteBuilder routeBuilder = 
(RouteBuilder)beanManager.getReference(bean, RouteBuilder.class, 
creationalContext);
-try {
-camelContext.addRoutes(routeBuilder);
-} catch (Exception e) {
-throw new RuntimeCamelException(Could not add route builder  
+ routeBuilder + . Reason:  + e, e);
-}
-}
+config.configure(camelContext, beanManager);
 }
 }

Added: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextConfig.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextConfig.java?rev=1381202view=auto
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextConfig.java
 (added)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextConfig.java
 Wed Sep  5 14:42:52 2012
@@ -0,0 +1,53 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions

svn commit: r1381216 - /camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java

2012-09-05 Thread jstrachan
Author: jstrachan
Date: Wed Sep  5 15:08:00 2012
New Revision: 1381216

URL: http://svn.apache.org/viewvc?rev=1381216view=rev
Log:
simplfied integration test using @CamelStartup

Modified:

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java

Modified: 
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java?rev=1381216r1=1381215r2=1381216view=diff
==
--- 
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java
 (original)
+++ 
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java
 Wed Sep  5 15:08:00 2012
@@ -21,6 +21,7 @@ import javax.inject.Inject;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.cdi.CamelStartup;
 import org.apache.camel.cdi.Mock;
 import org.apache.camel.component.cdi.internal.CamelExtension;
 import org.apache.camel.component.mock.MockEndpoint;
@@ -44,13 +45,11 @@ public class IntegrationTest {
 MyRoutes config;
 
 @Inject
-CamelContext camelContext;
-
-@Inject
 @Mock
 MockEndpoint result;
 
 @Produces
+@CamelStartup
 public RouteBuilder createRoutes() {
 return new RouteBuilder() {
 public void configure() {
@@ -61,17 +60,9 @@ public class IntegrationTest {
 
 @Test
 public void integrationTest() throws Exception {
-assertNotNull(CamelContext not injected!, camelContext);
-assertTrue(CamelContext is started, 
camelContext.getStatus().isStarted());
-
 assertNotNull(config not injected!, config);
 assertNotNull(MockEndpoint result not injected!, result);
 
-//camelContext.setTracing(true);
-
-// TODO we could maybe auto-register this?
-camelContext.addRoutes(createRoutes());
-
 result.expectedMessageCount(2);
 result.assertIsSatisfied();
 }




svn commit: r1381224 - in /camel/trunk: components/camel-cdi/src/main/java/org/apache/camel/cdi/ components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/ tests/camel-itest-cdi/src/m

2012-09-05 Thread jstrachan
Author: jstrachan
Date: Wed Sep  5 15:24:46 2012
New Revision: 1381224

URL: http://svn.apache.org/viewvc?rev=1381224view=rev
Log:
lets go with the more DRY @ContextName(foo) for CAMEL-5566

Modified:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/ContextName.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/MyConfig.java

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/RoutesContextA.java

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/RoutesContextB.java

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/RoutesContextC.java

camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/RoutesContextD.java

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/ContextName.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/ContextName.java?rev=1381224r1=1381223r2=1381224view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/ContextName.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/ContextName.java
 Wed Sep  5 15:24:46 2012
@@ -36,5 +36,5 @@ public @interface ContextName {
  * Returns the name of the CamelContext to add the routes to.
  * If no value is specified then the default CamelContext is used.
  */
-String contextName() default ;
+String value() default ;
 }

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java?rev=1381224r1=1381223r2=1381224view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
 Wed Sep  5 15:24:46 2012
@@ -69,11 +69,12 @@ public class CamelExtension implements E
 }
 
 /**
- * If no context name is specified then default it to the value from the 
{@link org.apache.camel.cdi.ContextName} annotation
+ * If no context name is specified then default it to the value from
+ * the {@link org.apache.camel.cdi.ContextName} annotation
  */
 public static String getCamelContextName(String context, ContextName 
annotation) {
 if (ObjectHelper.isEmpty(context)  annotation != null) {
-return annotation.contextName();
+return annotation.value();
 }
 return context;
 }
@@ -164,7 +165,7 @@ public class CamelExtension implements E
 
 private void addRouteBuilderBean(Bean? bean, ContextName annotation) {
 if (annotation != null) {
-String contextName = annotation.contextName();
+String contextName = annotation.value();
 CamelContextConfig config = camelContextConfigMap.get(contextName);
 if (config == null) {
 config = new CamelContextConfig();

Modified: 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/MyConfig.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/MyConfig.java?rev=1381224r1=1381223r2=1381224view=diff
==
--- 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/MyConfig.java
 (original)
+++ 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/MyConfig.java
 Wed Sep  5 15:24:46 2012
@@ -28,13 +28,13 @@ import org.apache.camel.cdi.ContextName;
 public class MyConfig {
 
 @Produces
-@ContextName(contextName = contextE)
+@ContextName(contextE)
 public RouteBuilder createRouteA() {
 return new MyRouteBuilder(seda:E.a, mock:E.b);
 }
 
 @Produces
-@ContextName(contextName = contextE)
+@ContextName(contextE)
 public RouteBuilder createRouteB() {
 return new MyRouteBuilder(seda:E.c, mock:E.d);
 }

Modified: 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/RoutesContextA.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/RoutesContextA.java?rev=1381224r1=1381223r2=1381224view=diff
==
--- 
camel/trunk/tests/camel-itest-cdi/src/main/java/org/apache/camel/itest/cdi/RoutesContextA.java
 (original)
+++ 
camel/trunk/tests/camel

svn commit: r1381278 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/model/ components/camel-cdi/src/main/java/org/apache/camel/cdi/ components/camel-cdi/src/main/java/org/apache/camel/co

2012-09-05 Thread jstrachan
Author: jstrachan
Date: Wed Sep  5 18:15:15 2012
New Revision: 1381278

URL: http://svn.apache.org/viewvc?rev=1381278view=rev
Log:
initial implementation of CAMEL-5554 so we can easily reuse XML based route 
definitions from inside CDI

Added:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/RoutesXml.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/XmlRoutesFromClassPathTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/XmlRoutesFromURLTest.java
   (with props)
camel/trunk/components/camel-cdi/src/test/resources/routes.xml   (with 
props)
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ModelHelper.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/CdiBeanRegistry.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextBean.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextConfig.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointDefinedUsingConfigPropertyTest.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ModelHelper.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/ModelHelper.java?rev=1381278r1=1381277r2=1381278view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ModelHelper.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ModelHelper.java 
Wed Sep  5 18:15:15 2012
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.model;
 
+import java.io.InputStream;
 import java.io.StringReader;
 import java.io.StringWriter;
 import javax.xml.bind.JAXBContext;
@@ -43,9 +44,7 @@ public final class ModelHelper {
  * @throws JAXBException is throw if error marshalling to XML
  */
 public static String dumpModelAsXml(NamedNode definition) throws 
JAXBException {
-// create a new jaxb context
-// must use classloader from CamelContext to have JAXB working
-JAXBContext jaxbContext = 
JAXBContext.newInstance(Constants.JAXB_CONTEXT_PACKAGES, 
CamelContext.class.getClassLoader());
+JAXBContext jaxbContext = createJaxbContext();
 
 Marshaller marshaller = jaxbContext.createMarshaller();
 marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
@@ -64,10 +63,7 @@ public final class ModelHelper {
  * @throws javax.xml.bind.JAXBException is thrown if error unmarshalling 
from xml to model
  */
 public static T extends NamedNode T createModelFromXml(String xml, 
ClassT type) throws JAXBException {
-// create a new jaxb context
-// must use classloader from CamelContext to have JAXB working
-JAXBContext jaxbContext = 
JAXBContext.newInstance(Constants.JAXB_CONTEXT_PACKAGES, 
CamelContext.class.getClassLoader());
-
+JAXBContext jaxbContext = createJaxbContext();
 StringReader reader = new StringReader(xml);
 Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
 Object result = unmarshaller.unmarshal(reader);
@@ -76,7 +72,26 @@ public final class ModelHelper {
 if (result == null) {
 throw new JAXBException(Cannot unmarshal to  + type +  using 
JAXB from XML:  + xml);
 }
+return type.cast(result);
+}
 
+/**
+ * Marshal the xml to the model definition
+ *
+ * @param stream the xml stream
+ * @param type the definition type to return, will throw a {@link 
ClassCastException} if not the expected type
+ * @return the model definition
+ * @throws javax.xml.bind.JAXBException is thrown if error unmarshalling 
from xml to model
+ */
+public static T extends NamedNode T createModelFromXml(InputStream 
stream, ClassT type) throws JAXBException {
+JAXBContext jaxbContext = createJaxbContext();
+Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
+Object result = unmarshaller.unmarshal(stream);
 return type.cast(result);
 }
+
+public static JAXBContext createJaxbContext() throws JAXBException {
+// must use classloader from CamelContext to have JAXB working
+return JAXBContext.newInstance(Constants.JAXB_CONTEXT_PACKAGES, 
CamelContext.class.getClassLoader());
+}
 }

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java?rev=1381278r1=1381277r2=1381278view=diff

svn commit: r1380504 - in /camel/trunk/examples: ./ camel-example-cdi/ camel-example-cdi/src/ camel-example-cdi/src/data/ camel-example-cdi/src/main/ camel-example-cdi/src/main/java/ camel-example-cdi

2012-09-04 Thread jstrachan
Author: jstrachan
Date: Tue Sep  4 09:40:19 2012
New Revision: 1380504

URL: http://svn.apache.org/viewvc?rev=1380504view=rev
Log:
added an example of using CDI and camel together and testing routes with CDI 
and arquillian integration tests for CAMEL-5553

Added:
camel/trunk/examples/camel-example-cdi/
camel/trunk/examples/camel-example-cdi/README.txt   (with props)
camel/trunk/examples/camel-example-cdi/pom.xml   (with props)
camel/trunk/examples/camel-example-cdi/src/
camel/trunk/examples/camel-example-cdi/src/data/
camel/trunk/examples/camel-example-cdi/src/data/message1.xml   (with props)
camel/trunk/examples/camel-example-cdi/src/data/message2.xml   (with props)
camel/trunk/examples/camel-example-cdi/src/main/
camel/trunk/examples/camel-example-cdi/src/main/java/
camel/trunk/examples/camel-example-cdi/src/main/java/org/
camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/
camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/

camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/

camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/cdi/

camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/cdi/MyRouteConfig.java
   (with props)

camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/cdi/SomeBean.java
   (with props)
camel/trunk/examples/camel-example-cdi/src/main/resources/
camel/trunk/examples/camel-example-cdi/src/main/resources/META-INF/

camel/trunk/examples/camel-example-cdi/src/main/resources/META-INF/LICENSE.txt  
 (with props)

camel/trunk/examples/camel-example-cdi/src/main/resources/META-INF/NOTICE.txt   
(with props)

camel/trunk/examples/camel-example-cdi/src/main/resources/META-INF/beans.xml   
(with props)
camel/trunk/examples/camel-example-cdi/src/main/resources/log4j.properties  
 (with props)
camel/trunk/examples/camel-example-cdi/src/test/
camel/trunk/examples/camel-example-cdi/src/test/java/
camel/trunk/examples/camel-example-cdi/src/test/java/org/
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/
camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java
   (with props)
Modified:
camel/trunk/examples/pom.xml

Added: camel/trunk/examples/camel-example-cdi/README.txt
URL: 
http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-cdi/README.txt?rev=1380504view=auto
==
--- camel/trunk/examples/camel-example-cdi/README.txt (added)
+++ camel/trunk/examples/camel-example-cdi/README.txt Tue Sep  4 09:40:19 2012
@@ -0,0 +1,34 @@
+CDI Example
+===
+
+This example shows how to work with Camel using CDI to configure components,
+endpoints and beans.
+
+The example consumes messages from a queue and writes them to the file
+system.
+
+You will need to compile this example first:
+  mvn compile
+
+To run the example type
+  mvn camel:run
+
+You can see the routing rules by looking at the java code in the
+src/main/java directory
+
+To stop the example hit ctrl + c
+
+This example is documented at
+  http://camel.apache.org/cdi-example.html
+
+If you hit any problems please talk to us on the Camel Forums
+  http://camel.apache.org/discussion-forums.html
+
+Please help us make Apache Camel better - we appreciate any feedback you
+may have.  Enjoy!
+
+
+The Camel riders!
+
+
+

Propchange: camel/trunk/examples/camel-example-cdi/README.txt
--
svn:eol-style = native

Added: camel/trunk/examples/camel-example-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-cdi/pom.xml?rev=1380504view=auto
==
--- camel/trunk/examples/camel-example-cdi/pom.xml (added)
+++ camel/trunk/examples/camel-example-cdi/pom.xml Tue Sep  4 09:40:19 2012
@@ -0,0 +1,131 @@
+?xml version=1.0 encoding=UTF-8?
+
+!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version
+2.0 (the License); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0 Unless required by
+applicable law or agreed to in writing, software distributed under the
+License

svn commit: r1380570 - in /camel/trunk: components/camel-cdi/ components/camel-cdi/src/main/java/org/apache/camel/cdi/ examples/camel-example-cdi/ examples/camel-example-cdi/src/main/java/org/apache/c

2012-09-04 Thread jstrachan
Author: jstrachan
Date: Tue Sep  4 11:36:36 2012
New Revision: 1380570

URL: http://svn.apache.org/viewvc?rev=1380570view=rev
Log:
initial spike of CAMEL-5560 to add CDI support to camel:run

Added:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java   
(with props)
Modified:
camel/trunk/components/camel-cdi/pom.xml
camel/trunk/examples/camel-example-cdi/pom.xml

camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/cdi/MyRouteConfig.java

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java
camel/trunk/parent/pom.xml
camel/trunk/tooling/maven/camel-maven-plugin/pom.xml

camel/trunk/tooling/maven/camel-maven-plugin/src/main/java/org/apache/camel/maven/RunMojo.java

Modified: camel/trunk/components/camel-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/pom.xml?rev=1380570r1=1380569r2=1380570view=diff
==
--- camel/trunk/components/camel-cdi/pom.xml (original)
+++ camel/trunk/components/camel-cdi/pom.xml Tue Sep  4 11:36:36 2012
@@ -34,10 +34,6 @@
 
 properties
 
camel.osgi.export.pkgorg.apache.camel.component.cdi.*/camel.osgi.export.pkg
-deltaspike-version0.3-incubating/deltaspike-version
-!-- these properties should be in-sync with deltaspike --
-owb-version1.1.5/owb-version
-weld-version1.1.5.Final/weld-version
 camel.osgi.import
 !org.apache.camel.component.cdi.*,
 org.apache.deltaspike.core.api.*;resolution:=optional,
@@ -69,6 +65,13 @@
 version${deltaspike-version}/version
 /dependency
 
+!-- only required for the Main --
+dependency
+groupIdorg.apache.deltaspike.cdictrl/groupId
+artifactIddeltaspike-cdictrl-api/artifactId
+version${deltaspike-version}/version
+/dependency
+
 dependency
 groupIdorg.apache.geronimo.specs/groupId
 artifactIdgeronimo-atinject_1.0_spec/artifactId
@@ -97,12 +100,6 @@
 scopetest/scope
 /dependency
 dependency
-groupIdorg.apache.deltaspike.cdictrl/groupId
-artifactIddeltaspike-cdictrl-api/artifactId
-version${deltaspike-version}/version
-scopetest/scope
-/dependency
-dependency
 groupIdorg.slf4j/groupId
 artifactIdjul-to-slf4j/artifactId
 version${slf4j-version}/version
@@ -139,13 +136,13 @@
 dependency
 groupIdorg.apache.openwebbeans/groupId
 artifactIdopenwebbeans-impl/artifactId
-version${owb-version}/version
+version${openwebbeans-version}/version
 scopetest/scope
 /dependency
 dependency
 groupIdorg.apache.openwebbeans/groupId
 artifactIdopenwebbeans-spi/artifactId
-version${owb-version}/version
+version${openwebbeans-version}/version
 scopetest/scope
 /dependency
 /dependencies

Added: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java?rev=1380570view=auto
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java 
(added)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java 
Tue Sep  4 11:36:36 2012
@@ -0,0 +1,137 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.cdi;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.ProducerTemplate;
+import org.apache.camel.main.MainSupport;
+import

svn commit: r1380649 - in /camel/trunk: components/camel-cdi/ components/camel-cdi/src/main/java/org/apache/camel/cdi/ components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/ examp

2012-09-04 Thread jstrachan
Author: jstrachan
Date: Tue Sep  4 13:50:42 2012
New Revision: 1380649

URL: http://svn.apache.org/viewvc?rev=1380649view=rev
Log:
fixes CAMEL-5560; adds a workaround for @Startup on @ApplicationScoped / 
@Singleton beans to the CamelExtension to ensure they are eagly started; so 
that we know that camel routes will startup eagerly

Modified:
camel/trunk/components/camel-cdi/pom.xml

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/cdi/MyRouteConfig.java
camel/trunk/parent/pom.xml

Modified: camel/trunk/components/camel-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/pom.xml?rev=1380649r1=1380648r2=1380649view=diff
==
--- camel/trunk/components/camel-cdi/pom.xml (original)
+++ camel/trunk/components/camel-cdi/pom.xml Tue Sep  4 13:50:42 2012
@@ -79,6 +79,11 @@
 /dependency
 dependency
 groupIdorg.apache.geronimo.specs/groupId
+artifactIdgeronimo-ejb_3.1_spec/artifactId
+version${geronimo-ejb_3.1_spec.version}/version
+/dependency
+dependency
+groupIdorg.apache.geronimo.specs/groupId
 artifactIdgeronimo-jcdi_1.0_spec/artifactId
 version${geronimo-jcdi-1.0-spec.version}/version
 /dependency

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java?rev=1380649r1=1380648r2=1380649view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java 
(original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Main.java 
Tue Sep  4 13:50:42 2012
@@ -41,6 +41,7 @@ public class Main extends MainSupport {
 private JAXBContext jaxbContext;
 private CdiContainer cdiContainer;
 
+
 public static void main(String... args) throws Exception {
 Main main = new Main();
 instance = main;
@@ -126,6 +127,8 @@ public class Main extends MainSupport {
 protected void doStart() throws Exception {
 cdiContainer = CdiContainerLoader.getCdiContainer();
 cdiContainer.boot();
+cdiContainer.getContextControl().startContexts();
+
 super.doStart();
 }
 

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java?rev=1380649r1=1380648r2=1380649view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
 Tue Sep  4 13:50:42 2012
@@ -21,6 +21,8 @@ import java.lang.reflect.Method;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
+import javax.ejb.Startup;
+import javax.enterprise.context.ApplicationScoped;
 import javax.enterprise.context.spi.CreationalContext;
 import javax.enterprise.event.Observes;
 import javax.enterprise.inject.spi.AfterBeanDiscovery;
@@ -35,6 +37,7 @@ import javax.enterprise.inject.spi.Proce
 import javax.enterprise.inject.spi.ProcessBean;
 import javax.enterprise.inject.spi.ProcessInjectionTarget;
 import javax.inject.Inject;
+import javax.inject.Singleton;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.CamelContextAware;
@@ -59,7 +62,10 @@ public class CamelExtension implements E
 private CamelContext camelContext;
 private DefaultCamelBeanPostProcessor postProcessor;
 
-private MapBean?, BeanAdapter beanAdapters = new HashMapBean?, 
BeanAdapter();
+private MapBean?, BeanAdapter eagerBeans = new HashMapBean?, 
BeanAdapter();
+
+public CamelExtension() {
+}
 
 /**
  * Process camel context aware bean definitions.
@@ -128,30 +134,48 @@ public class CamelExtension implements E
  */
 public void detectConsumeBeans(@Observes ProcessBean? event) {
 final Bean? bean = event.getBean();
-ReflectionHelper.doWithMethods(bean.getBeanClass(), new 
ReflectionHelper.MethodCallback() {
+Class? beanClass = bean.getBeanClass();
+ReflectionHelper.doWithMethods(beanClass, new 
ReflectionHelper.MethodCallback() {
 @Override
 public void doWith(Method method) throws IllegalArgumentException, 
IllegalAccessException {
 Consume consume

svn commit: r1380671 - in /camel/trunk/camel-core/src/main/java/org/apache/camel/model: FromDefinition.java SendDefinition.java

2012-09-04 Thread jstrachan
Author: jstrachan
Date: Tue Sep  4 14:48:31 2012
New Revision: 1380671

URL: http://svn.apache.org/viewvc?rev=1380671view=rev
Log:
fixes CAMEL-5565 so that routes created using Endpoints with the JavaDSL have 
their endpoint URIs visible to JMX and tooling rather than being an anonymous 
endpoint

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java?rev=1380671r1=1380670r2=1380671view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java 
Tue Sep  4 14:48:31 2012
@@ -50,7 +50,7 @@ public class FromDefinition extends Opti
 }
 
 public FromDefinition(Endpoint endpoint) {
-this.endpoint = endpoint;
+setEndpoint(endpoint);
 }
 
 @Override
@@ -128,6 +128,10 @@ public class FromDefinition extends Opti
 
 public void setEndpoint(Endpoint endpoint) {
 this.endpoint = endpoint;
+this.uri = null;
+if (endpoint != null) {
+this.uri = endpoint.getEndpointUri();
+}
 }
 
 /**

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java?rev=1380671r1=1380670r2=1380671view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java 
Tue Sep  4 14:48:31 2012
@@ -97,6 +97,10 @@ public abstract class SendDefinitionTyp
 
 public void setEndpoint(Endpoint endpoint) {
 this.endpoint = endpoint;
+this.uri = null;
+if (endpoint != null) {
+this.uri = endpoint.getEndpointUri();
+}
 }
 
 public ExchangePattern getPattern() {




svn commit: r1380676 - /camel/trunk/components/camel-cdi/pom.xml

2012-09-04 Thread jstrachan
Author: jstrachan
Date: Tue Sep  4 14:57:43 2012
New Revision: 1380676

URL: http://svn.apache.org/viewvc?rev=1380676view=rev
Log:
removed pertest forking for CAMEL-5447 in the hope we can close the issue now

Modified:
camel/trunk/components/camel-cdi/pom.xml

Modified: camel/trunk/components/camel-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/pom.xml?rev=1380676r1=1380675r2=1380676view=diff
==
--- camel/trunk/components/camel-cdi/pom.xml (original)
+++ camel/trunk/components/camel-cdi/pom.xml Tue Sep  4 14:57:43 2012
@@ -112,16 +112,6 @@
 /dependency
 /dependencies
 
-build
-plugins
-plugin
-artifactIdmaven-surefire-plugin/artifactId
-configuration
-forkModepertest/forkMode
-/configuration
-/plugin
-/plugins
-/build
 
 profiles
 profile




svn commit: r1380791 - in /camel/trunk: components/camel-cdi/ components/camel-cdi/src/main/java/org/apache/camel/cdi/ components/camel-cdi/src/main/java/org/apache/camel/component/cdi/ components/cam

2012-09-04 Thread jstrachan
Author: jstrachan
Date: Tue Sep  4 18:28:27 2012
New Revision: 1380791

URL: http://svn.apache.org/viewvc?rev=1380791view=rev
Log:
added a fix for CAMEL-5566 along the lines of Romain's use of @CamelContextId 
though preferred the name @CamelStartup which makes it really easy to startup a 
RouteBuilder on a CamelContext. Also patched the injection code to support 
@Inject @Uri, @EndpointInject, @Produce, @Consume to support multiple 
CamelContext instances too (needs testing though ;)

Added:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/CamelStartup.java
   (with props)

camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/cdi/MyRoutes.java
   (contents, props changed)
  - copied, changed from r1380669, 
camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/cdi/MyRouteConfig.java
Removed:

camel/trunk/examples/camel-example-cdi/src/main/java/org/apache/camel/example/cdi/MyRouteConfig.java
Modified:
camel/trunk/components/camel-cdi/pom.xml

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/CdiCamelContext.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelContextBean.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

camel/trunk/examples/camel-example-cdi/src/test/java/org/apache/camel/example/cdi/IntegrationTest.java

Modified: camel/trunk/components/camel-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/pom.xml?rev=1380791r1=1380790r2=1380791view=diff
==
--- camel/trunk/components/camel-cdi/pom.xml (original)
+++ camel/trunk/components/camel-cdi/pom.xml Tue Sep  4 18:28:27 2012
@@ -79,11 +79,6 @@
 /dependency
 dependency
 groupIdorg.apache.geronimo.specs/groupId
-artifactIdgeronimo-ejb_3.1_spec/artifactId
-version${geronimo-ejb_3.1_spec.version}/version
-/dependency
-dependency
-groupIdorg.apache.geronimo.specs/groupId
 artifactIdgeronimo-jcdi_1.0_spec/artifactId
 version${geronimo-jcdi-1.0-spec.version}/version
 /dependency

Added: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/CamelStartup.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/CamelStartup.java?rev=1380791view=auto
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/CamelStartup.java
 (added)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/CamelStartup.java
 Tue Sep  4 18:28:27 2012
@@ -0,0 +1,39 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.cdi;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import javax.enterprise.util.Nonbinding;
+import javax.inject.Qualifier;
+
+/**
+ * Used to annotate a {@link RouteBuilder} class to bind it to a
+ * {@link CamelContext} instance on startup so that it can startup 
automatically
+ */
+@Retention(RetentionPolicy.RUNTIME)
+@Target({ElementType.TYPE, ElementType.METHOD, ElementType.FIELD, 
ElementType.PARAMETER})
+public @interface CamelStartup {
+
+/**
+ * Returns the name of the CamelContext to add the routes to.
+ * If no value is specified then the default CamelContext is used.
+ */
+String contextName() default ;
+}

Propchange: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/CamelStartup.java
--
svn:eol-style = native

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/CdiCamelContext.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org

svn commit: r1380796 - /camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

2012-09-04 Thread jstrachan
Author: jstrachan
Date: Tue Sep  4 18:34:58 2012
New Revision: 1380796

URL: http://svn.apache.org/viewvc?rev=1380796view=rev
Log:
removed some old cruft

Modified:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java?rev=1380796r1=1380795r2=1380796view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
 Tue Sep  4 18:34:58 2012
@@ -23,7 +23,6 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-import javax.enterprise.context.ApplicationScoped;
 import javax.enterprise.context.spi.CreationalContext;
 import javax.enterprise.event.Observes;
 import javax.enterprise.inject.spi.AfterBeanDiscovery;
@@ -37,7 +36,6 @@ import javax.enterprise.inject.spi.Proce
 import javax.enterprise.inject.spi.ProcessBean;
 import javax.enterprise.inject.spi.ProcessInjectionTarget;
 import javax.inject.Inject;
-import javax.inject.Singleton;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.CamelContextAware;
@@ -274,10 +272,4 @@ public class CamelExtension implements E
 return field.getAnnotation(Inject.class) != null;
 }
 
-/**
- * Returns true for singletons or application scoped beans
- */
-protected boolean isApplicationScopeOrSingleton(Class? aClass) {
-return aClass.getAnnotation(Singleton.class) != null || 
aClass.getAnnotation(ApplicationScoped.class) != null;
-}
 }




svn commit: r1380183 - in /camel/trunk/components/camel-cdi/src: main/java/org/apache/camel/component/cdi/internal/ test/java/org/apache/camel/cdi/

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 09:30:51 2012
New Revision: 1380183

URL: http://svn.apache.org/viewvc?rev=1380183view=rev
Log:
added support for @Consume for CAMEL-5553 along with supporting @Inject of 
ProducerTemplate

Added:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
   (with props)

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelFactory.java
   (contents, props changed)
  - copied, changed from r1380149, 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeTest.java
   (with props)
Removed:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
Modified:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

Added: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java?rev=1380183view=auto
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
 (added)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
 Mon Sep  3 09:30:51 2012
@@ -0,0 +1,47 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.cdi.internal;
+
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.List;
+import javax.enterprise.inject.spi.Bean;
+
+/**
+ * Contains the bean and the consume methods
+ */
+public class BeanAdapter {
+private final Bean? bean;
+private final ListMethod consumeMethods = new ArrayListMethod();
+
+public BeanAdapter(Bean? bean) {
+this.bean = bean;
+}
+
+public Bean? getBean() {
+return bean;
+}
+
+public ListMethod getConsumeMethods() {
+return consumeMethods;
+}
+
+public void addConsumeMethod(Method method) {
+consumeMethods.add(method);
+}
+}

Propchange: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
--
svn:eol-style = native

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java?rev=1380183r1=1380182r2=1380183view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java
 Mon Sep  3 09:30:51 2012
@@ -17,19 +17,29 @@
 package org.apache.camel.component.cdi.internal;
 
 import java.lang.reflect.Method;
-
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import javax.enterprise.context.spi.CreationalContext;
 import javax.enterprise.event.Observes;
 import javax.enterprise.inject.spi.AfterBeanDiscovery;
 import javax.enterprise.inject.spi.AfterDeploymentValidation;
 import javax.enterprise.inject.spi.AnnotatedType;
+import javax.enterprise.inject.spi.Bean;
 import javax.enterprise.inject.spi.BeanManager;
 import javax.enterprise.inject.spi.BeforeShutdown;
 import javax.enterprise.inject.spi.Extension;
 import javax.enterprise.inject.spi.ProcessAnnotatedType;
+import javax.enterprise.inject.spi.ProcessBean;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.CamelContextAware;
+import org.apache.camel.Consume;
 import org.apache.camel.component.cdi.CdiCamelContext;
+import org.apache.camel.impl.CamelPostProcessorHelper

svn commit: r1380192 - /camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/junit4/CamelTestSupport.java

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 10:37:31 2012
New Revision: 1380192

URL: http://svn.apache.org/viewvc?rev=1380192view=rev
Log:
allow derived classes to override the use of the default postprocessor (e.g. 
we'll want to do this in CDI eventually when its all working nicely to avoid 
double injection)

Modified:

camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/junit4/CamelTestSupport.java

Modified: 
camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/junit4/CamelTestSupport.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/junit4/CamelTestSupport.java?rev=1380192r1=1380191r2=1380192view=diff
==
--- 
camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/junit4/CamelTestSupport.java
 (original)
+++ 
camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/junit4/CamelTestSupport.java
 Mon Sep  3 10:37:31 2012
@@ -398,7 +398,16 @@ public abstract class CamelTestSupport e
 template = threadTemplate.get();
 consumer = threadConsumer.get();
 camelContextService = threadService.get();
+applyCamelPostProcessor();
+}
 
+/**
+ * Applies the {@link DefaultCamelBeanPostProcessor} to this instance.
+ *
+ * Derived classes using IoC / DI frameworks may wish to turn this into a 
NoOp such as for CDI
+ * we would just use CDI to inject this
+ */
+protected void applyCamelPostProcessor() throws Exception {
 // use the default bean post processor from camel-core
 DefaultCamelBeanPostProcessor processor = new 
DefaultCamelBeanPostProcessor(context);
 processor.postProcessBeforeInitialization(this, getClass().getName());




svn commit: r1380193 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/impl/ components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/ components/camel-cdi/src/test/java/o

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 10:39:21 2012
New Revision: 1380193

URL: http://svn.apache.org/viewvc?rev=1380193view=rev
Log:
initial spike of supporting naked @Produce annotations on CDI for CAMEL-5553

Added:

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ProduceInjectTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/ProduceInjectedBean.java
   (with props)
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelBeanPostProcessor.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CdiContextTestSupport.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelBeanPostProcessor.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelBeanPostProcessor.java?rev=1380193r1=1380192r2=1380193view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelBeanPostProcessor.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelBeanPostProcessor.java
 Mon Sep  3 10:39:21 2012
@@ -131,7 +131,7 @@ public class DefaultCamelBeanPostProcess
 /**
  * Strategy to get the {@link CamelPostProcessorHelper}
  */
-protected CamelPostProcessorHelper getPostProcessorHelper() {
+public CamelPostProcessorHelper getPostProcessorHelper() {
 if (camelPostProcessorHelper == null) {
 camelPostProcessorHelper = new 
CamelPostProcessorHelper(getOrLookupCamelContext());
 }
@@ -178,7 +178,7 @@ public class DefaultCamelBeanPostProcess
 });
 }
 
-protected void injectField(Field field, String endpointUri, String 
endpointRef, String endpointProperty,
+public void injectField(Field field, String endpointUri, String 
endpointRef, String endpointProperty,
Object bean, String beanName) {
 ReflectionHelper.setField(field, bean,
 getPostProcessorHelper().getInjectionValue(field.getType(), 
endpointUri, endpointRef, endpointProperty,
@@ -206,7 +206,7 @@ public class DefaultCamelBeanPostProcess
 }
 }
 
-protected void setterInjection(Method method, Object bean, String 
beanName, String endpointUri, String endpointRef, String endpointProperty) {
+public void setterInjection(Method method, Object bean, String beanName, 
String endpointUri, String endpointRef, String endpointProperty) {
 Class?[] parameterTypes = method.getParameterTypes();
 if (parameterTypes != null) {
 if (parameterTypes.length != 1) {

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java?rev=1380193r1=1380192r2=1380193view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
 Mon Sep  3 10:39:21 2012
@@ -17,17 +17,24 @@
  */
 package org.apache.camel.component.cdi.internal;
 
+import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.List;
 import javax.enterprise.inject.spi.Bean;
 
+import org.apache.camel.Produce;
+import org.apache.camel.impl.CamelPostProcessorHelper;
+import org.apache.camel.impl.DefaultCamelBeanPostProcessor;
+
 /**
  * Contains the bean and the consume methods
  */
 public class BeanAdapter {
 private final Bean? bean;
 private final ListMethod consumeMethods = new ArrayListMethod();
+private final ListMethod produceMethods = new ArrayListMethod();
+private final ListField produceFields = new ArrayListField();
 
 public BeanAdapter(Bean? bean) {
 this.bean = bean;
@@ -41,7 +48,50 @@ public class BeanAdapter {
 return consumeMethods;
 }
 
+public ListMethod getProduceMethods() {
+return produceMethods;
+}
+
+public ListField getProduceFields() {
+return produceFields;
+}
+
 public void addConsumeMethod(Method method) {
 consumeMethods.add(method);
 }
+
+public void addProduceMethod(Method method) {
+produceMethods.add(method);
+}
+
+public void addProduceField(Field field) {
+produceFields.add(field);
+}
+
+/**
+ * Perform processing of the various @Consume, @Produce methods

svn commit: r1380220 - in /camel/trunk/components/camel-cdi: ./ src/main/java/org/apache/camel/component/cdi/internal/ src/test/java/org/apache/camel/cdi/ src/test/java/org/apache/camel/cdi/support/

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 12:39:51 2012
New Revision: 1380220

URL: http://svn.apache.org/viewvc?rev=1380220view=rev
Log:
fix for CAMEL-5553 so that we can support injection via @EndpointInject and 
@Produce without any need for @Inject (though we use more usual CDI methods for 
injecting via @Inject) along with processing of @Consume

Added:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/DelegateInjectionTarget.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CamelEndpointInjectTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/CamelEndpointInjectedBean.java
   (with props)
Modified:
camel/trunk/components/camel-cdi/pom.xml

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelExtension.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/CdiContextTestSupport.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/InjectCamelAnnotationsTest.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ProduceInjectTest.java

Modified: camel/trunk/components/camel-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/pom.xml?rev=1380220r1=1380219r2=1380220view=diff
==
--- camel/trunk/components/camel-cdi/pom.xml (original)
+++ camel/trunk/components/camel-cdi/pom.xml Mon Sep  3 12:39:51 2012
@@ -117,9 +117,6 @@
   profiles
 profile
   idowb/id
-  activation
-activeByDefaulttrue/activeByDefault
-  /activation
   dependencies
 dependency
   groupIdorg.apache.geronimo.specs/groupId
@@ -149,6 +146,10 @@
 
 profile
   idweld/id
+!-- active by default as the overriding of InvocationTarget is 
currently broken in owb which breaks ProduceInjectTest --
+activation
+  activeByDefaulttrue/activeByDefault
+/activation
   dependencies
 dependency
   groupIdorg.apache.deltaspike.cdictrl/groupId

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java?rev=1380220r1=1380219r2=1380220view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/BeanAdapter.java
 Mon Sep  3 12:39:51 2012
@@ -23,6 +23,7 @@ import java.util.ArrayList;
 import java.util.List;
 import javax.enterprise.inject.spi.Bean;
 
+import org.apache.camel.EndpointInject;
 import org.apache.camel.Produce;
 import org.apache.camel.impl.CamelPostProcessorHelper;
 import org.apache.camel.impl.DefaultCamelBeanPostProcessor;
@@ -31,29 +32,18 @@ import org.apache.camel.impl.DefaultCame
  * Contains the bean and the consume methods
  */
 public class BeanAdapter {
-private final Bean? bean;
 private final ListMethod consumeMethods = new ArrayListMethod();
 private final ListMethod produceMethods = new ArrayListMethod();
+private final ListMethod endpointMethods = new ArrayListMethod();
 private final ListField produceFields = new ArrayListField();
+private final ListField endpointFields = new ArrayListField();
 
-public BeanAdapter(Bean? bean) {
-this.bean = bean;
-}
-
-public Bean? getBean() {
-return bean;
-}
-
-public ListMethod getConsumeMethods() {
-return consumeMethods;
-}
-
-public ListMethod getProduceMethods() {
-return produceMethods;
-}
-
-public ListField getProduceFields() {
-return produceFields;
+/**
+ * Returns true if this adapter is empty (i.e. has no custom adapter code)
+ */
+public boolean isEmpty() {
+return consumeMethods.isEmpty()  produceMethods.isEmpty()  
produceFields.isEmpty() 
+endpointMethods.isEmpty()  endpointFields.isEmpty();
 }
 
 public void addConsumeMethod(Method method) {
@@ -68,30 +58,52 @@ public class BeanAdapter {
 produceFields.add(field);
 }
 
+public void addEndpointField(Field field) {
+endpointFields.add(field);
+}
+
+public void addEndpointMethod(Method method) {
+endpointMethods.add(method);
+}
+
 /**
- * Perform processing of the various @Consume, @Produce methods on the 
given bean reference
+ * Perform injections
  */
-public void initialiseBean(DefaultCamelBeanPostProcessor postProcessor, 
Object

svn commit: r1380222 - /camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/InjectCamelAnnotationsTest.java

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 12:48:00 2012
New Revision: 1380222

URL: http://svn.apache.org/viewvc?rev=1380222view=rev
Log:
minor improvement to also test that the ProducerTemplate injection uses the 
correct uri

Modified:

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/InjectCamelAnnotationsTest.java

Modified: 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/InjectCamelAnnotationsTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/InjectCamelAnnotationsTest.java?rev=1380222r1=1380221r2=1380222view=diff
==
--- 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/InjectCamelAnnotationsTest.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/InjectCamelAnnotationsTest.java
 Mon Sep  3 12:48:00 2012
@@ -37,13 +37,13 @@ public class InjectCamelAnnotationsTest 
 @EndpointInject(uri=mock:result)
 MockEndpoint mockResultEndpoint;
 
-@Produce(uri = mock:result)
+@Produce(uri = direct:inject)
 ProducerTemplate myProducer;
 
 @Test
 public void beanShouldBeInjected() throws InterruptedException {
 mockResultEndpoint.expectedMessageCount(1);
-myProducer.sendBody(direct:inject, hello);
+myProducer.sendBody(hello);
 
 assertMockEndpointsSatisfied();
 




svn commit: r1380252 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/impl/ components/camel-cdi/ components/camel-cdi/src/main/java/org/apache/camel/cdi/ components/camel-cdi/src/main/jav

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 14:39:42 2012
New Revision: 1380252

URL: http://svn.apache.org/viewvc?rev=1380252view=rev
Log:
simplified the code to reuse more existing camel code  ensure more consistent 
error messages and allowed injection via @Inject @Uri(someURI) on Endpoint / 
ProducerTemplate injections for more CDI-like injection. also moved the Uri and 
Mock annotations into org.apache.camel.cdi as they are the (optional) public 
programming API for working with CDI

Added:
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java   
(with props)

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java   
(with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointPropertyInjectTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointUriInjectTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/EndpointUriInjectedBean.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/EndpointUriPropertyInjectedBean.java
   (with props)
Removed:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/Mock.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/util/
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java
camel/trunk/components/camel-cdi/pom.xml

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelFactory.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeTest.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ProduceInjectTest.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/MockEndpointInjectedBean.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/ProduceInjectedBean.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java?rev=1380252r1=1380251r2=1380252view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java
 Mon Sep  3 14:39:42 2012
@@ -132,7 +132,7 @@ public class CamelPostProcessorHelper im
 return new UnitOfWorkProcessor(answer);
 }
 
-protected Endpoint getEndpointInjection(Object bean, String uri, String 
name, String propertyName,
+public Endpoint getEndpointInjection(Object bean, String uri, String name, 
String propertyName,
 String injectionPointName, boolean 
mandatory) {
 if (ObjectHelper.isEmpty(uri)  ObjectHelper.isEmpty(name)) {
 // if no uri or ref, then fallback and try the endpoint property

Modified: camel/trunk/components/camel-cdi/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/pom.xml?rev=1380252r1=1380251r2=1380252view=diff
==
--- camel/trunk/components/camel-cdi/pom.xml (original)
+++ camel/trunk/components/camel-cdi/pom.xml Mon Sep  3 14:39:42 2012
@@ -43,6 +43,7 @@
   *
   /camel.osgi.import
   camel.osgi.export.pkg
+  org.apache.camel.cdi.*;${camel.osgi.version},
   org.apache.camel.component.cdi.*;${camel.osgi.version}
   /camel.osgi.export.pkg
   /properties

Added: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java?rev=1380252view=auto
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java 
(added)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java 
Mon Sep  3 14:39:42 2012
@@ -0,0 +1,32 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License

svn commit: r1380255 - /camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 14:43:48 2012
New Revision: 1380255

URL: http://svn.apache.org/viewvc?rev=1380255view=rev
Log:
added better javadoc

Modified:
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java?rev=1380255r1=1380254r2=1380255view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java 
(original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java 
Mon Sep  3 14:43:48 2012
@@ -23,7 +23,19 @@ import java.lang.annotation.Target;
 
 /**
  * An injection annotation to define the a 
href=http://camel.apache.org/uris.html;Camel URI/a used
- * to reference the underlying a 
href=http://camel.apache.org/endpoint.html;Camel Endpoint/a
+ * to reference the underlying a 
href=http://camel.apache.org/endpoint.html;Camel Endpoint/a.
+ *
+ * This annotation can be used to annotate an @Inject injection point for 
values of type
+ * {@link org.apache.camel.Endpoint} or {@link 
org.apache.camel.ProducerTemplate} with a String URI.
+ *
+ * For example:
+ * code
+ * public class Foo {
+ * @Inject @Uri(mock:foo) Endpoint endpoint;
+ *
+ * @Inject @Uri(seda:bar) ProducerTemplate producer;
+ * }
+ * /code
  */
 @Retention(RetentionPolicy.RUNTIME)
 @Target({ElementType.TYPE, ElementType.METHOD, ElementType.FIELD, 
ElementType.PARAMETER})




svn commit: r1380275 - in /camel/trunk/components/camel-cdi/src: main/java/org/apache/camel/cdi/ main/java/org/apache/camel/component/cdi/internal/ test/java/org/apache/camel/cdi/ test/java/org/apache

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 15:45:30 2012
New Revision: 1380275

URL: http://svn.apache.org/viewvc?rev=1380275view=rev
Log:
@Mock and @Uri are now qualifiers. Added an example of Endpoint injection via 
@Named. Also simplified the use of @Inject with camel injection; it now 
requires a qualifier if using @Inject to inject Endpoint/ProducerTemplate of 
either @Mock, @Uri, @Named - otherwise don't use @Inject and just use the 
vanilla Camel injection annotations (@Produce or @EndpointInject). The use of 
qualifiers avoids all kinds of CDI issues when trying to mix and match @Inject 
@EndpointInject and @Inject @Named in the same application; for 
Endpoint/ProducerTemplate injection there must be a unique qualifier used now. 
Note @Consume doesn't do injection per se so @Inject is never used directly 
with it. Finally @Mock() now takes an optional URI for the MockEndpoint

Added:

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointNamedInjectTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/NamedEndpointBean.java
   (with props)
Modified:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelFactory.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeTest.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointInjectTest.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointPropertyInjectTest.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointUriInjectTest.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/EndpointInjectedBean.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/EndpointUriInjectedBean.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/EndpointUriPropertyInjectedBean.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/MockEndpointInjectedBean.java

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java?rev=1380275r1=1380274r2=1380275view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java 
(original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Mock.java 
Mon Sep  3 15:45:30 2012
@@ -20,6 +20,7 @@ import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
+import javax.enterprise.util.Nonbinding;
 import javax.inject.Qualifier;
 
 /**
@@ -29,4 +30,10 @@ import javax.inject.Qualifier;
 @Retention(RetentionPolicy.RUNTIME)
 @Target({ElementType.TYPE, ElementType.METHOD, ElementType.FIELD, 
ElementType.PARAMETER})
 public @interface Mock {
+
+/**
+ * Returns an optional URI used to create the MockEndpoint
+ */
+@Nonbinding
+String value() default ;
 }

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java?rev=1380275r1=1380274r2=1380275view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java 
(original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/cdi/Uri.java 
Mon Sep  3 15:45:30 2012
@@ -20,6 +20,8 @@ import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
+import javax.enterprise.util.Nonbinding;
+import javax.inject.Qualifier;
 
 /**
  * An injection annotation to define the a 
href=http://camel.apache.org/uris.html;Camel URI/a used
@@ -37,6 +39,7 @@ import java.lang.annotation.Target;
  * }
  * /code
  */
+@Qualifier
 @Retention(RetentionPolicy.RUNTIME)
 @Target({ElementType.TYPE, ElementType.METHOD, ElementType.FIELD, 
ElementType.PARAMETER})
 public @interface Uri {
@@ -44,5 +47,6 @@ public @interface Uri {
 /**
  * Returns the a href=http://camel.apache.org/uris.html;Camel URI/a 
of the endpoint
  */
+@Nonbinding
 String value();
 }

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelFactory.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/CamelFactory.java?rev=1380275r1=1380274r2=1380275view=diff

svn commit: r1380279 - in /camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi: ConsumeStubbedEndpointTest.java support/CheeseComponentFactory.java

2012-09-03 Thread jstrachan
Author: jstrachan
Date: Mon Sep  3 16:00:24 2012
New Revision: 1380279

URL: http://svn.apache.org/viewvc?rev=1380279view=rev
Log:
added a CDI sample using CDI to define a new component configuration

Added:

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeStubbedEndpointTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/CheeseComponentFactory.java
   (with props)

Added: 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeStubbedEndpointTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeStubbedEndpointTest.java?rev=1380279view=auto
==
--- 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeStubbedEndpointTest.java
 (added)
+++ 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeStubbedEndpointTest.java
 Mon Sep  3 16:00:24 2012
@@ -0,0 +1,59 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.cdi;
+
+import javax.enterprise.inject.Produces;
+import javax.inject.Inject;
+import javax.inject.Named;
+
+import org.apache.camel.Component;
+import org.apache.camel.Consume;
+import org.apache.camel.ProducerTemplate;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.component.stub.StubComponent;
+import org.junit.Test;
+
+/**
+ * Tests sending  consuming to a stubbed out component called 'cheese' which 
is created
+ * via the {@link org.apache.camel.cdi.support.CheeseComponentFactory} class
+ */
+public class ConsumeStubbedEndpointTest extends CdiTestSupport {
+
+@Inject @Mock
+private MockEndpoint result;
+
+@Inject @Uri(cheese:start)
+private ProducerTemplate producer;
+
+@Consume(uri = cheese:start)
+public void onStart(String body) {
+producer.sendBody(mock:result, Hello  + body + !);
+}
+
+@Test
+public void consumeAnnotation() throws Exception {
+assertNotNull(Could not inject producer, producer);
+assertNotNull(Could not inject mock endpoint, result);
+
+result.expectedBodiesReceived(Hello world!);
+
+producer.sendBody(world);
+
+result.assertIsSatisfied();
+}
+
+}

Propchange: 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/ConsumeStubbedEndpointTest.java
--
svn:eol-style = native

Added: 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/CheeseComponentFactory.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/CheeseComponentFactory.java?rev=1380279view=auto
==
--- 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/CheeseComponentFactory.java
 (added)
+++ 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/CheeseComponentFactory.java
 Mon Sep  3 16:00:24 2012
@@ -0,0 +1,36 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.cdi.support;
+
+import javax.enterprise.inject.Produces;
+import javax.inject.Named;
+
+import org.apache.camel.Component;
+import org.apache.camel.component.stub.StubComponent;
+
+/**
+ * Stubs out

svn commit: r1379437 - in /camel/trunk/components/camel-cdi/src: main/java/org/apache/camel/component/cdi/internal/ test/java/org/apache/camel/cdi/ test/java/org/apache/camel/cdi/support/

2012-08-31 Thread jstrachan
Author: jstrachan
Date: Fri Aug 31 13:02:01 2012
New Revision: 1379437

URL: http://svn.apache.org/viewvc?rev=1379437view=rev
Log:
initial spike of CAMEL-5553 support for injecting Endpoint instances using 
@EndpointInject annotation; though there are issues (e.g. no way to inject both 
Endpoint and MockEndpoint types explicitly without some kind of explicit 
qualifier for MockEndpoint injection points or something

Added:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointInjectTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/MockEndpointInjectTest.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/EndpointInjectedBean.java
   (with props)

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/MockEndpointInjectedBean.java
   (with props)

Added: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java?rev=1379437view=auto
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
 (added)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
 Fri Aug 31 13:02:01 2012
@@ -0,0 +1,75 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.cdi.internal;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.Endpoint;
+import org.apache.camel.EndpointInject;
+import org.apache.camel.util.ObjectHelper;
+
+import javax.enterprise.inject.Produces;
+import javax.enterprise.inject.spi.InjectionPoint;
+import javax.inject.Inject;
+import java.lang.reflect.Type;
+
+/**
+ * Injects endpoints into beans
+ */
+public class EndpointInjector {
+@Inject
+private CamelContext camelContext;
+
+
+/*
+@Produces
+public Endpoint createEndpoint(InjectionPoint point) {
+return createEndpoint(point, Endpoint.class);
+}
+
+// Note that there does not appear to be a way in CDI to say we can inject
+// all types from Endpoint onwards so lets make it easy to also inject 
mock endpoints too
+@Produces
+protected MockEndpoint createMockEndpoint(InjectionPoint point) {
+return createEndpoint(point, MockEndpoint.class);
+}
+*/
+
+@Produces
+public Endpoint createEndpoint(InjectionPoint point) {
+Class? extends Endpoint endpointType = Endpoint.class;
+Type pointType = point.getType();
+if (pointType instanceof Class?) {
+endpointType = (Class? extends Endpoint) pointType;
+}
+
+EndpointInject annotation = 
point.getAnnotated().getAnnotation(EndpointInject.class);
+if (annotation != null) {
+if (annotation != null) {
+String uri = annotation.uri();
+if (ObjectHelper.isNotEmpty(uri)) {
+return camelContext.getEndpoint(uri, endpointType);
+}
+String ref = annotation.ref();
+if (ObjectHelper.isNotEmpty(ref)) {
+return camelContext.getEndpoint(ref: + ref, 
endpointType);
+}
+}
+}
+return null;
+}
+}

Propchange: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
--
svn:eol-style = native

Added: 
camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointInjectTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/EndpointInjectTest.java?rev=1379437view=auto
==
--- 
camel/trunk/components/camel-cdi/src

svn commit: r1379449 - in /camel/trunk/components/camel-cdi/src: main/java/org/apache/camel/component/cdi/ main/java/org/apache/camel/component/cdi/internal/ test/java/org/apache/camel/cdi/ test/java/

2012-08-31 Thread jstrachan
Author: jstrachan
Date: Fri Aug 31 13:51:50 2012
New Revision: 1379449

URL: http://svn.apache.org/viewvc?rev=1379449view=rev
Log:
improved CAMEL-5553 so we can also inject MockEndpoint instances; though we 
require @Mock as a qualifier unfortunately unless anyone figures out any neater 
way to differentiate Endpoint and MockEndpoint injection

Added:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/Mock.java
   (with props)
Modified:

camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/MockEndpointInjectTest.java

camel/trunk/components/camel-cdi/src/test/java/org/apache/camel/cdi/support/MockEndpointInjectedBean.java

Added: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/Mock.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/Mock.java?rev=1379449view=auto
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/Mock.java
 (added)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/Mock.java
 Fri Aug 31 13:51:50 2012
@@ -0,0 +1,34 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.cdi;
+
+import javax.inject.Qualifier;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import static java.lang.annotation.ElementType.*;
+import static java.lang.annotation.RetentionPolicy.*;
+
+/**
+ * A qualifier for injecting instances of {@link 
org.apache.camel.component.mock.MockEndpoint} into a bean.
+ */
+@Qualifier
+@Retention(RUNTIME)
+@Target({TYPE, METHOD, FIELD, PARAMETER})
+public @interface Mock {
+}

Propchange: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/Mock.java
--
svn:eol-style = native

Modified: 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java?rev=1379449r1=1379448r2=1379449view=diff
==
--- 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
 (original)
+++ 
camel/trunk/components/camel-cdi/src/main/java/org/apache/camel/component/cdi/internal/EndpointInjector.java
 Fri Aug 31 13:51:50 2012
@@ -20,6 +20,8 @@ package org.apache.camel.component.cdi.i
 import org.apache.camel.CamelContext;
 import org.apache.camel.Endpoint;
 import org.apache.camel.EndpointInject;
+import org.apache.camel.component.cdi.Mock;
+import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.util.ObjectHelper;
 
 import javax.enterprise.inject.Produces;
@@ -35,19 +37,24 @@ public class EndpointInjector {
 private CamelContext camelContext;
 
 
-/*
-@Produces
-public Endpoint createEndpoint(InjectionPoint point) {
-return createEndpoint(point, Endpoint.class);
-}
-
-// Note that there does not appear to be a way in CDI to say we can inject
-// all types from Endpoint onwards so lets make it easy to also inject 
mock endpoints too
 @Produces
+@Mock
 protected MockEndpoint createMockEndpoint(InjectionPoint point) {
-return createEndpoint(point, MockEndpoint.class);
+String url = ;
+String name = ;
+EndpointInject annotation = 
point.getAnnotated().getAnnotation(EndpointInject.class);
+if (annotation != null) {
+url = annotation.uri();
+name = annotation.ref();
+}
+if (ObjectHelper.isEmpty(name)) {
+name = point.getMember().getName();
+}
+if (ObjectHelper.isEmpty(url)) {
+url = mock: + name;
+}
+return camelContext.getEndpoint(url

svn commit: r1375936 - /camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java

2012-08-22 Thread jstrachan
Author: jstrachan
Date: Wed Aug 22 08:11:31 2012
New Revision: 1375936

URL: http://svn.apache.org/viewvc?rev=1375936view=rev
Log:
allow eventNotifiers to be added asynchronously to a CamelContext while a 
context is starting up to avoid the dreaded ConcurrentModificationException 
being thrown, fixes CAMEL-5531

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java?rev=1375936r1=1375935r2=1375936view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java
 Wed Aug 22 08:11:31 2012
@@ -16,9 +16,9 @@
  */
 package org.apache.camel.management;
 
-import java.util.ArrayList;
 import java.util.EventObject;
 import java.util.List;
+import java.util.concurrent.CopyOnWriteArrayList;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.CamelContextAware;
@@ -50,7 +50,7 @@ import org.apache.camel.util.ServiceHelp
  */
 public class DefaultManagementStrategy implements ManagementStrategy, 
CamelContextAware {
 
-private ListEventNotifier eventNotifiers = new 
ArrayListEventNotifier();
+private ListEventNotifier eventNotifiers = new 
CopyOnWriteArrayListEventNotifier();
 private EventFactory eventFactory = new DefaultEventFactory();
 private ManagementNamingStrategy managementNamingStrategy;
 private ManagementObjectStrategy managementObjectStrategy;




svn commit: r1296215 - in /camel/trunk/camel-core/src: main/java/org/apache/camel/component/stub/ main/resources/META-INF/services/org/apache/camel/component/ test/java/org/apache/camel/component/stub

2012-03-02 Thread jstrachan
Author: jstrachan
Date: Fri Mar  2 14:10:03 2012
New Revision: 1296215

URL: http://svn.apache.org/viewvc?rev=1296215view=rev
Log:
added a first spike of a stub component for CAMEL-5057

Added:
camel/trunk/camel-core/src/main/java/org/apache/camel/component/stub/

camel/trunk/camel-core/src/main/java/org/apache/camel/component/stub/StubComponent.java
   (with props)

camel/trunk/camel-core/src/main/resources/META-INF/services/org/apache/camel/component/stub
camel/trunk/camel-core/src/test/java/org/apache/camel/component/stub/

camel/trunk/camel-core/src/test/java/org/apache/camel/component/stub/StubInOnlyTest.java
   (with props)

Added: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/stub/StubComponent.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/stub/StubComponent.java?rev=1296215view=auto
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/stub/StubComponent.java
 (added)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/stub/StubComponent.java
 Fri Mar  2 14:10:03 2012
@@ -0,0 +1,46 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.stub;
+
+import java.util.Map;
+
+import org.apache.camel.component.vm.VmComponent;
+
+/** 
+ * Allows you to easily stub out a middleware transport by prefixing the URI 
with stub: which is 
+ * handy for testing out routes, or isolating bits of middleware.
+ *
+ */
+public class StubComponent extends VmComponent {
+
+   public StubComponent() {
+   }
+
+   @Override
+   protected void validateURI(String uri, String path,
+   MapString, Object parameters) {
+// Don't validate so we can stub any URI
+   }
+
+   @Override
+   protected void validateParameters(String uri,
+   MapString, Object parameters, String optionPrefix) {
+// Don't validate so we can stub any URI
+   }
+
+
+}

Propchange: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/stub/StubComponent.java
--
svn:eol-style = native

Added: 
camel/trunk/camel-core/src/main/resources/META-INF/services/org/apache/camel/component/stub
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/resources/META-INF/services/org/apache/camel/component/stub?rev=1296215view=auto
==
--- 
camel/trunk/camel-core/src/main/resources/META-INF/services/org/apache/camel/component/stub
 (added)
+++ 
camel/trunk/camel-core/src/main/resources/META-INF/services/org/apache/camel/component/stub
 Fri Mar  2 14:10:03 2012
@@ -0,0 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the License); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an AS IS BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+class=org.apache.camel.component.stub.StubComponent
\ No newline at end of file

Added: 
camel/trunk/camel-core/src/test/java/org/apache/camel/component/stub/StubInOnlyTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/component/stub/StubInOnlyTest.java?rev=1296215view=auto
==
--- 
camel/trunk/camel-core/src/test/java/org/apache/camel/component/stub/StubInOnlyTest.java
 (added)
+++ 
camel/trunk/camel-core/src/test/java/org/apache/camel/component

svn commit: r1207097 - in /camel/trunk/components/camel-web/src/main/webapp/WEB-INF: scalate/error.scaml scalate/layouts/default.scaml web.xml

2011-11-28 Thread jstrachan
Author: jstrachan
Date: Mon Nov 28 12:12:10 2011
New Revision: 1207097

URL: http://svn.apache.org/viewvc?rev=1207097view=rev
Log:
Fixes CAMEL-4719 so camel-web works better inside WebLogic; avoiding the use of 
the scalate console unless its present and in debig mode and having a 
precompiled error page to avoid unnecessary runtime compilation of scalate 
templates. Also used the simpler scalate filter which adds support for jade, 
markdown, confluence etc easier with less boilerplate XML in web.xml

Added:
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/scalate/error.scaml
Modified:

camel/trunk/components/camel-web/src/main/webapp/WEB-INF/scalate/layouts/default.scaml
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/web.xml

Added: 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/scalate/error.scaml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/webapp/WEB-INF/scalate/error.scaml?rev=1207097view=auto
==
--- 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/scalate/error.scaml 
(added)
+++ 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/scalate/error.scaml 
Mon Nov 28 12:12:10 2011
@@ -0,0 +1,212 @@
+-#
+-# Copyright (C) 2009-2011 the original author or authors.
+-# See the notice.md file distributed with this work for additional
+-# information regarding copyright ownership.
+-#
+-# Licensed under the Apache License, Version 2.0 (the License);
+-# you may not use this file except in compliance with the License.
+-# You may obtain a copy of the License at
+-#
+-# http://www.apache.org/licenses/LICENSE-2.0
+-#
+-# Unless required by applicable law or agreed to in writing, software
+-# distributed under the License is distributed on an AS IS BASIS,
+-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-# See the License for the specific language governing permissions and
+-# limitations under the License.
+-#
+- if ( !engine.isDevelopmentMode )
+  .scalate-error-500
+%h1 Server Error: We're sorry, but something went wrong.
+%p We've been notified about this issue and we'll take a look at it 
shortly.
+
+- else
+  - import util.parsing.input.Position
+  - import org.fusesource.scalate._
+  - import org.fusesource.scalate.console._
+  - val consoleHelper = new ConsoleHelper(context)
+  - import consoleHelper._
+  - response.setContentType(text/html)
+  - attributes(layout) = 
+  !!! Basic
+  %html(lang=en)
+%head
+  %meta(http-equiv=Content-Type content=text/html; charset=utf-8)
+  %meta(name=keywords content=error)
+  %title Unexpected Failure
+  %style(type=text/css)
+:plain
+  html, body {
+  margin: 0;
+  padding: 0;
+  font-family: Helvetica, Arial, Sans;
+  background: #EE;
+  }
+  .block {
+  padding: 20px;
+  border-bottom: 1px solid #aaa;
+  }
+  #scalate-error .header h1 {
+  font-weight: normal;
+  font-size: 28px;
+  margin: 0;
+  }
+  #scalate-error .more {
+  color: #666;
+  font-size: 80%;
+  border: none;
+  }
+  #scalate-error .header {
+  background: #fcd2da;
+  }
+  #scalate-error .header p {
+  color: #333;
+  }
+  #scalate-error .details {
+  background: #f6f6f6;
+  }
+  #scalate-error .details h2 {
+  font-weight: normal;
+  font-size: 18px;
+  margin: 0 0 10px 0;
+  }
+  #scalate-error .details .lineNumber {
+  float: left;
+  display: block;
+  width: 40px;
+  text-align: right;
+  margin-right: 10px;
+  font-size: 14px;
+  font-family: monospace;
+  background: #333;
+  color: #fff;
+  }
+  #scalate-error .details .line {
+  clear: both;
+  color: #333;
+  margin-bottom: 1px;
+  }
+  #scalate-error .details pre {
+  font-size: 14px;
+  margin: 0;
+  overflow-x: hidden;
+  }
+  #scalate-error .details .error {
+  color: #c00 !important;
+  }
+  #scalate-error .details .error .lineNumber {
+  background: #c00;
+  }
+  #scalate-error .details .errorCol {
+  background: #c00;
+  color:#fff;
+  }
+  #scalate-error .details a {
+  text-decoration: none;
+  }
+  #scalate-error .details a:hover * {
+  cursor: pointer !important;
+  }
+  #scalate-error .details a:hover pre {
+  background: #FAFFCF !important

svn commit: r1076683 - in /camel/trunk/components/camel-web: pom.xml src/main/webapp/WEB-INF/com/

2011-03-03 Thread jstrachan
Author: jstrachan
Date: Thu Mar  3 17:03:06 2011
New Revision: 1076683

URL: http://svn.apache.org/viewvc?rev=1076683view=rev
Log:
upgraded camel-web to the latest greatest scalate release and removed old 
templates

Removed:
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/com/
Modified:
camel/trunk/components/camel-web/pom.xml

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=1076683r1=1076682r2=1076683view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Thu Mar  3 17:03:06 2011
@@ -30,7 +30,7 @@
 
 properties
 camel.osgi.export.pkgorg.apache.camel.web.*/camel.osgi.export.pkg
-scalate-version1.3.1/scalate-version
+scalate-version1.4.1/scalate-version
 jersey-version1.5/jersey-version
 logback-version0.9.24/logback-version
 jetty-port8080/jetty-port
@@ -135,6 +135,13 @@
 artifactIdscalate-core/artifactId
 version${scalate-version}/version
 /dependency
+
+!-- even when pre-compiling the tempaltes this still seems to be a 
requirement - maybe can remove it later? --
+dependency
+groupIdorg.scala-lang/groupId
+artifactIdscala-compiler/artifactId
+version${scala-version}/version
+/dependency
 !--
 dependency
   groupIdch.qos.logback/groupId
@@ -233,6 +240,20 @@
 /plugin
 
 plugin
+groupIdorg.fusesource.scalate/groupId
+artifactIdmaven-scalate-plugin/artifactId
+version${scalate-version}/version
+executions
+execution
+goals
+goalprecompile/goal
+/goals
+phaseprocess-classes/phase
+/execution
+/executions
+/plugin
+
+plugin
 groupIdorg.mortbay.jetty/groupId
 artifactIdjetty-maven-plugin/artifactId
 version${jetty-version}/version




svn commit: r1075495 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/impl/ components/camel-context/ components/camel-context/src/main/java/org/apache/camel/component/context/ components/

2011-02-28 Thread jstrachan
Author: jstrachan
Date: Mon Feb 28 19:20:56 2011
New Revision: 1075495

URL: http://svn.apache.org/viewvc?rev=1075495view=rev
Log:
fix for CAMEL-3726 to show camel-context working using Spring IoC along with 
solving a dependency issue with CamelPostProcessorHelper causing eager loading 
of CamelContext objects which breaks the depends-on attribute usage

Added:

camel/trunk/components/camel-context/src/test/java/org/apache/camel/component/context/SpringDslContextComponentTest.java
camel/trunk/components/camel-context/src/test/resources/org/
camel/trunk/components/camel-context/src/test/resources/org/apache/
camel/trunk/components/camel-context/src/test/resources/org/apache/camel/

camel/trunk/components/camel-context/src/test/resources/org/apache/camel/component/

camel/trunk/components/camel-context/src/test/resources/org/apache/camel/component/context/

camel/trunk/components/camel-context/src/test/resources/org/apache/camel/component/context/SpringDslContextComponentTest-context.xml
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java
camel/trunk/components/camel-context/pom.xml

camel/trunk/components/camel-context/src/main/java/org/apache/camel/component/context/LocalContextComponent.java

camel/trunk/components/camel-context/src/test/java/org/apache/camel/component/context/JavaDslBlackBoxTest.java

camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelBeanPostProcessor.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java?rev=1075495r1=1075494r2=1075495view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelPostProcessorHelper.java
 Mon Feb 28 19:20:56 2011
@@ -75,7 +75,7 @@ public class CamelPostProcessorHelper im
  */
 public boolean matchContext(String context) {
 if (ObjectHelper.isNotEmpty(context)) {
-if (!camelContext.getName().equals(context)) {
+if (!getCamelContext().getName().equals(context)) {
 return false;
 }
 }

Modified: camel/trunk/components/camel-context/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-context/pom.xml?rev=1075495r1=1075494r2=1075495view=diff
==
--- camel/trunk/components/camel-context/pom.xml (original)
+++ camel/trunk/components/camel-context/pom.xml Mon Feb 28 19:20:56 2011
@@ -51,6 +51,11 @@
 /dependency
 dependency
 groupIdorg.apache.camel/groupId
+artifactIdcamel-core-xml/artifactId
+scopetest/scope
+/dependency
+dependency
+groupIdorg.apache.camel/groupId
 artifactIdcamel-test/artifactId
 scopetest/scope
 /dependency

Modified: 
camel/trunk/components/camel-context/src/main/java/org/apache/camel/component/context/LocalContextComponent.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-context/src/main/java/org/apache/camel/component/context/LocalContextComponent.java?rev=1075495r1=1075494r2=1075495view=diff
==
--- 
camel/trunk/components/camel-context/src/main/java/org/apache/camel/component/context/LocalContextComponent.java
 (original)
+++ 
camel/trunk/components/camel-context/src/main/java/org/apache/camel/component/context/LocalContextComponent.java
 Mon Feb 28 19:20:56 2011
@@ -35,7 +35,7 @@ public class LocalContextComponent exten
 private static final transient Logger LOG = 
LoggerFactory.getLogger(LocalContextComponent.class);
 
 private CamelContext localCamelContext;
-private ListString localProtocolSchemes = new 
ArrayListString(Arrays.asList(direct, seda));
+private ListString localProtocolSchemes = new 
ArrayListString(Arrays.asList(direct, seda, mock));
 
 public LocalContextComponent(CamelContext localCamelContext) {
 ObjectHelper.notNull(localCamelContext, localCamelContext);
@@ -65,8 +65,14 @@ public class LocalContextComponent exten
 protected Endpoint createEndpoint(String uri, String remaining, 
MapString, Object parameters)
 throws Exception {
 
+
+
 // lets first check if we are using a fully qualified name: 
[context:]contextId:endpointUri
 MapString, Endpoint map = getLocalCamelContext().getEndpointMap();
+
+if (LOG.isDebugEnabled()) {
+LOG.debug(Trying to lookup  + remaining +  in local map  + 
map.keySet());
+}
 Endpoint endpoint = map.get(remaining);
 if (endpoint

svn commit: r1073303 - /camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java

2011-02-22 Thread jstrachan
Author: jstrachan
Date: Tue Feb 22 11:55:49 2011
New Revision: 1073303

URL: http://svn.apache.org/viewvc?rev=1073303view=rev
Log:
allow CAMEL-3651 and CAMEL-3563 to work in OSGi blueprint too

Modified:

camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java

Modified: 
camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java?rev=1073303r1=1073302r2=1073303view=diff
==
--- 
camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java
 (original)
+++ 
camel/trunk/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintComponentResolver.java
 Tue Feb 22 11:55:49 2011
@@ -20,6 +20,7 @@ import org.apache.camel.CamelContext;
 import org.apache.camel.Component;
 import org.apache.camel.core.osgi.OsgiComponentResolver;
 import org.apache.camel.spi.ComponentResolver;
+import org.apache.camel.util.CamelContextHelper;
 import org.osgi.framework.BundleContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -41,6 +42,13 @@ public class BlueprintComponentResolver 
 LOG.debug(Found component:  + name +  in registry:  + 
bean);
 }
 return (Component) bean;
+} else {
+// lets use Camel's type conversion mechanism to convert 
things like CamelContext
+// and other types into a valid Component
+Component component = CamelContextHelper.convertTo(context, 
Component.class, bean);
+if (component != null) {
+return component;
+}
 }
 } catch (Exception e) {
 LOG.debug(Ignored error looking up bean:  + name + . Error:  + 
e);




svn commit: r1073304 - /camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java

2011-02-22 Thread jstrachan
Author: jstrachan
Date: Tue Feb 22 11:56:24 2011
New Revision: 1073304

URL: http://svn.apache.org/viewvc?rev=1073304view=rev
Log:
allow CAMEL-3651 and CAMEL-3563 to work in OSGi blueprint too

Modified:

camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java

Modified: 
camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java?rev=1073304r1=1073303r2=1073304view=diff
==
--- 
camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java
 (original)
+++ 
camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiComponentResolver.java
 Tue Feb 22 11:56:24 2011
@@ -19,6 +19,7 @@ package org.apache.camel.core.osgi;
 import org.apache.camel.CamelContext;
 import org.apache.camel.Component;
 import org.apache.camel.spi.ComponentResolver;
+import org.apache.camel.util.CamelContextHelper;
 import org.apache.camel.util.ObjectHelper;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.InvalidSyntaxException;
@@ -47,6 +48,13 @@ public class OsgiComponentResolver imple
 }
 if (bean instanceof Component) {
 return (Component)bean;
+} else {
+// lets use Camel's type conversion mechanism to convert things 
like CamelContext
+// and other types into a valid Component
+Component component = CamelContextHelper.convertTo(context, 
Component.class, bean);
+if (component != null) {
+return component;
+}
 }
 
 // Check in OSGi bundles




svn commit: r1069440 - /camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultComponentResolver.java

2011-02-10 Thread jstrachan
Author: jstrachan
Date: Thu Feb 10 16:00:30 2011
New Revision: 1069440

URL: http://svn.apache.org/viewvc?rev=1069440view=rev
Log:
allow the same Camel Type Conversion we support for Endpoints to also work for 
Components when resolving a component in the registry for CAMEL-3651 and 
CAMEL-3563

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultComponentResolver.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultComponentResolver.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultComponentResolver.java?rev=1069440r1=1069439r2=1069440view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultComponentResolver.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultComponentResolver.java
 Thu Feb 10 16:00:30 2011
@@ -23,6 +23,7 @@ import org.apache.camel.Component;
 import org.apache.camel.NoFactoryAvailableException;
 import org.apache.camel.spi.ComponentResolver;
 import org.apache.camel.spi.FactoryFinder;
+import org.apache.camel.util.CamelContextHelper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -55,6 +56,13 @@ public class DefaultComponentResolver im
 if (bean != null) {
 if (bean instanceof Component) {
 return (Component) bean;
+} else {
+// lets use Camel's type conversion mechanism to convert 
things like CamelContext
+// and other types into a valid Component
+Component component = CamelContextHelper.convertTo(context, 
Component.class, bean);
+if (component != null) {
+return component;
+}
 }
 // we do not throw the exception here and try to auto create a 
component
 }




svn commit: r1068904 - /camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java

2011-02-09 Thread jstrachan
Author: jstrachan
Date: Wed Feb  9 14:33:12 2011
New Revision: 1068904

URL: http://svn.apache.org/viewvc?rev=1068904view=rev
Log:
ensured that the deprecated attribute is optional, not mandatory for the 
endpoint element

Modified:

camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java

Modified: 
camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java?rev=1068904r1=1068903r2=1068904view=diff
==
--- 
camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java
 (original)
+++ 
camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java
 Wed Feb  9 14:33:12 2011
@@ -33,7 +33,7 @@ import static org.apache.camel.util.Obje
 
 @XmlAccessorType(XmlAccessType.FIELD)
 public abstract class AbstractCamelEndpointFactoryBean extends 
AbstractCamelFactoryBeanEndpoint {
-@XmlAttribute
+@XmlAttribute(required = false)
 @Deprecated
 private Boolean singleton = Boolean.FALSE;
 @XmlAttribute




svn commit: r1068918 - /camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java

2011-02-09 Thread jstrachan
Author: jstrachan
Date: Wed Feb  9 14:47:37 2011
New Revision: 1068918

URL: http://svn.apache.org/viewvc?rev=1068918view=rev
Log:
avoid outputting a deprecated attribute when marshalling the XML

Modified:

camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java

Modified: 
camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java?rev=1068918r1=1068917r2=1068918view=diff
==
--- 
camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java
 (original)
+++ 
camel/trunk/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelEndpointFactoryBean.java
 Wed Feb  9 14:47:37 2011
@@ -35,7 +35,7 @@ import static org.apache.camel.util.Obje
 public abstract class AbstractCamelEndpointFactoryBean extends 
AbstractCamelFactoryBeanEndpoint {
 @XmlAttribute(required = false)
 @Deprecated
-private Boolean singleton = Boolean.FALSE;
+private Boolean singleton;
 @XmlAttribute
 private String uri;
 @XmlTransient




svn commit: r1068971 - in /camel/trunk/camel-core/src/main/java/org/apache/camel/model: ./ config/ dataformat/ loadbalancer/

2011-02-09 Thread jstrachan
Author: jstrachan
Date: Wed Feb  9 16:55:34 2011
New Revision: 1068971

URL: http://svn.apache.org/viewvc?rev=1068971view=rev
Log:
removed a bunch more default JAXB default values so that by default we only 
marshal attributes which are actually configured by hand. this avoids the XML 
representation of the model being unnecessarily verbose

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/ResequenceDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/SplitDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/config/BatchResequencerConfig.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/CastorDataFormat.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/HL7DataFormat.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/loadbalancer/FailoverLoadBalancerDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/loadbalancer/WeightedLoadBalancerDefinition.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java?rev=1068971r1=1068970r2=1068971view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java
 Wed Feb  9 16:55:34 2011
@@ -46,9 +46,9 @@ import org.apache.camel.util.concurrent.
 public class OnCompletionDefinition extends 
ProcessorDefinitionOnCompletionDefinition implements 
ExecutorServiceAwareDefinitionOnCompletionDefinition {
 
 @XmlAttribute(required = false)
-private Boolean onCompleteOnly = Boolean.FALSE;
+private Boolean onCompleteOnly;
 @XmlAttribute(required = false)
-private Boolean onFailureOnly = Boolean.FALSE;
+private Boolean onFailureOnly;
 @XmlElement(name = onWhen, required = false)
 private WhenDefinition onWhen;
 @XmlElementRef
@@ -85,7 +85,7 @@ public class OnCompletionDefinition exte
 
 @Override
 public Processor createProcessor(RouteContext routeContext) throws 
Exception {
-if (onCompleteOnly  onFailureOnly) {
+if (isOnCompleteOnly()  isOnFailureOnly()) {
 throw new IllegalArgumentException(Both onCompleteOnly and 
onFailureOnly cannot be true. Only one of them can be true. On node:  + this);
 }
 
@@ -106,7 +106,7 @@ public class OnCompletionDefinition exte
 // should be false by default
 boolean original = getUseOriginalMessagePolicy() != null ? 
getUseOriginalMessagePolicy() : false;
 OnCompletionProcessor answer = new 
OnCompletionProcessor(routeContext.getCamelContext(), childProcessor,
-executorService, onCompleteOnly, onFailureOnly, when, 
original);
+executorService, isOnCompleteOnly(), isOnFailureOnly(), when, 
original);
 return answer;
 }
 
@@ -141,7 +141,7 @@ public class OnCompletionDefinition exte
  * @return the builder
  */
 public OnCompletionDefinition onCompleteOnly() {
-if (onFailureOnly) {
+if (isOnFailureOnly()) {
 throw new IllegalArgumentException(Both onCompleteOnly and 
onFailureOnly cannot be true. Only one of them can be true. On node:  + this);
 }
 // must define return type as OutputDefinition and not this type to 
avoid end user being able
@@ -157,7 +157,7 @@ public class OnCompletionDefinition exte
  * @return the builder
  */
 public OnCompletionDefinition onFailureOnly() {
-if (onCompleteOnly) {
+if (isOnCompleteOnly()) {
 throw new IllegalArgumentException(Both onCompleteOnly and 
onFailureOnly cannot be true. Only one of them can be true. On node:  + this);
 }
 // must define return type as OutputDefinition and not this type to 
avoid end user being able
@@ -225,6 +225,10 @@ public class OnCompletionDefinition exte
 this.outputs = outputs;
 }
 
+public boolean isOnCompleteOnly() {
+return onCompleteOnly != null  onCompleteOnly.booleanValue();
+}
+
 public Boolean getOnCompleteOnly() {
 return onCompleteOnly;
 }
@@ -233,6 +237,10 @@ public class OnCompletionDefinition exte
 this.onCompleteOnly = onCompleteOnly;
 }
 
+public boolean isOnFailureOnly() {
+return onFailureOnly != null  onFailureOnly.booleanValue();
+}
+
 public Boolean getOnFailureOnly() {
 return onFailureOnly;
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ResequenceDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main

svn commit: r1033410 - in /camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources: EndpointResource.index.ssp ExchangeResource.index.ssp

2010-11-10 Thread jstrachan
Author: jstrachan
Date: Wed Nov 10 10:35:14 2010
New Revision: 1033410

URL: http://svn.apache.org/viewvc?rev=1033410view=rev
Log:
fixed up some bad markup, fixing the title of links

Modified:

camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/EndpointResource.index.ssp

camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/ExchangeResource.index.ssp

Modified: 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/EndpointResource.index.ssp
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/EndpointResource.index.ssp?rev=1033410r1=1033409r2=1033410view=diff
==
--- 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/EndpointResource.index.ssp
 (original)
+++ 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/EndpointResource.index.ssp
 Wed Nov 10 10:35:14 2010
@@ -13,7 +13,7 @@
 /tr
   #for(exchange - it.getBrowsableEndpoint.getExchanges)
 tr
-  tda class='message' href='${uri(it.getHref + /messages/ + 
exchange.getExchangeId)}' attributes(title) = View this 
message${exchange.getExchangeId}/a/td
+  tda class='message' href='${uri(it.getHref + /messages/ + 
exchange.getExchangeId)}' title=View this 
message${exchange.getExchangeId}/a/td
 /tr
   #end
   /table

Modified: 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/ExchangeResource.index.ssp
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/ExchangeResource.index.ssp?rev=1033410r1=1033409r2=1033410view=diff
==
--- 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/ExchangeResource.index.ssp
 (original)
+++ 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/ExchangeResource.index.ssp
 Wed Nov 10 10:35:14 2010
@@ -20,7 +20,7 @@
 #for(entry - it.getProperties)
   tr
 td${entry.getKey}/td
-tda class=type attributes(title) = 
${entry.getValue.getClass.getCanonicalName}${entry.getValue}/a/td
+tda class=type 
title=${entry.getValue.getClass.getCanonicalName}${entry.getValue}/a/td
   /tr
 #end
   /table
@@ -37,7 +37,7 @@
 #for(entry - it.getHeaders)
   tr
 td${entry.getKey}/td
-tda class=type attributes(title) = 
${entry.getValue.getClass.getCanonicalName}${entry.getValue}/a/td
+tda class=type 
title=${entry.getValue.getClass.getCanonicalName}${entry.getValue}/a/td
   /tr
 #end
   /table




svn commit: r1000757 - /camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/JAXBContextResolver.java

2010-09-24 Thread jstrachan
Author: jstrachan
Date: Fri Sep 24 08:38:42 2010
New Revision: 1000757

URL: http://svn.apache.org/viewvc?rev=1000757view=rev
Log:
Added a helper constructor in case folks want to reuse the jaxb resolver with a 
different set of packages

Modified:

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/JAXBContextResolver.java

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/JAXBContextResolver.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/JAXBContextResolver.java?rev=1000757r1=1000756r2=1000757view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/JAXBContextResolver.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/JAXBContextResolver.java
 Fri Sep 24 08:38:42 2010
@@ -19,6 +19,7 @@ package org.apache.camel.web.util;
 import javax.ws.rs.ext.ContextResolver;
 import javax.ws.rs.ext.Provider;
 import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
 
 /**
  * A resolver of the JAXB context primed for the Camel XML languages
@@ -27,12 +28,16 @@ import javax.xml.bind.JAXBContext;
  * @version $Revision$
  */
 @Provider
-public final class JAXBContextResolver implements ContextResolverJAXBContext 
{
+public  class JAXBContextResolver implements ContextResolverJAXBContext {
 private final JAXBContext context;
 private String packages;
 
 public JAXBContextResolver() throws Exception {
-this.packages = org.apache.camel.web.resources.Constants.JAXB_PACKAGES;
+this(org.apache.camel.web.resources.Constants.JAXB_PACKAGES);
+}
+
+public JAXBContextResolver(String packages) throws JAXBException {
+this.packages = packages;
 this.context = JAXBContext.newInstance(packages);
 }
 




svn commit: r984381 - in /camel/trunk/components/camel-web/src: main/webapp/WEB-INF/com/ main/webapp/WEB-INF/org/ main/webapp/WEB-INF/org/apache/camel/web/resources/ main/webapp/WEB-INF/snippets/ main

2010-08-11 Thread jstrachan
Author: jstrachan
Date: Wed Aug 11 11:41:14 2010
New Revision: 984381

URL: http://svn.apache.org/viewvc?rev=984381view=rev
Log:
moved the templates inside WEB-INF so they are not visible outside of the web 
application; fixed up some bad HTML links in a template and fixed a failing 
test that ningjiang seems to have reverted a previous fix on :)

Added:
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/com/
  - copied from r984346, 
camel/trunk/components/camel-web/src/main/webapp/com/
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/
  - copied from r984346, 
camel/trunk/components/camel-web/src/main/webapp/org/
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/snippets/

camel/trunk/components/camel-web/src/main/webapp/WEB-INF/snippets/camelContextLinks.ssp
Removed:
camel/trunk/components/camel-web/src/main/webapp/com/
camel/trunk/components/camel-web/src/main/webapp/org/
Modified:

camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/CamelContextResource.index.ssp

camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java

Modified: 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/CamelContextResource.index.ssp
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/CamelContextResource.index.ssp?rev=984381r1=984346r2=984381view=diff
==
--- 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/CamelContextResource.index.ssp
 (original)
+++ 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/org/apache/camel/web/resources/CamelContextResource.index.ssp
 Wed Aug 11 11:41:14 2010
@@ -8,34 +8,6 @@
 pWelcome to the Web Console for instance b${it.getName}/b./p
 pWe hope you find the following links helpful/p
 
-ul
-  li
-a href=${uri(/endpoints)} attributes(title) = View current 
endpoints or create new onesEndpoints/a
-  /li
-  li
-a href=${uri(/routes)} attributes(title) = View current 
routesRoutes/a
-  /li
-  li
-a href=${uri(/api)} attributes(title) = Documentation on the REST 
API to CamelAPI/a
-  /li
-/ul
-
-pThe following diagnostic links might be useful too...
-/p
-
-ul
-  li
-a href=${uri(/components)} attributes(title) = View the available 
components you can use with CamelComponents/a
-  /li
-  li
-a href=${uri(/languages)} attributes(title) = View the available 
languages you can use with CamelLanguages/a
-  /li
-  li
-a href=${uri(/converters)} attributes(title) = View the available 
type converters currently registered with CamelType Converters/a
-  /li
-  li
-a href=${uri(/systemProperties)} attributes(title) = View the 
System Properties used to create this serviceSystem Properties/a
-  /li
-/ul
+#{ include(/WEB-INF/snippets/camelContextLinks.ssp) }#
 
 pLets take it for a ride!/p
\ No newline at end of file

Added: 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/snippets/camelContextLinks.ssp
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/webapp/WEB-INF/snippets/camelContextLinks.ssp?rev=984381view=auto
==
--- 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/snippets/camelContextLinks.ssp
 (added)
+++ 
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/snippets/camelContextLinks.ssp
 Wed Aug 11 11:41:14 2010
@@ -0,0 +1,30 @@
+
+ul
+  li
+a href='${uri(/endpoints)}' title=View current endpoints or create new 
onesEndpoints/a
+  /li
+  li
+a href='${uri(/routes)}' title=View current routesRoutes/a
+  /li
+  li
+a href='${uri(/api)}' title=Documentation on the REST API to 
CamelAPI/a
+  /li
+/ul
+
+pThe following diagnostic links might be useful too...
+/p
+
+ul
+  li
+a href='${uri(/components)}' title=View the available components you 
can use with CamelComponents/a
+  /li
+  li
+a href='${uri(/languages)}' title=View the available languages you can 
use with CamelLanguages/a
+  /li
+  li
+a href='${uri(/converters)}' title=View the available type converters 
currently registered with CamelType Converters/a
+  /li
+  li
+a href='${uri(/systemProperties)}' title=View the System Properties 
used to create this serviceSystem Properties/a
+  /li
+/ul
\ No newline at end of file

Modified: 
camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java?rev=984381r1=984380r2=984381view=diff
==
--- 
camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java
 (original)
+++ 
camel/trunk

svn commit: r984461 - /camel/trunk/parent/pom.xml

2010-08-11 Thread jstrachan
Author: jstrachan
Date: Wed Aug 11 16:20:36 2010
New Revision: 984461

URL: http://svn.apache.org/viewvc?rev=984461view=rev
Log:
upgraded to the latest/greatest scala release

Modified:
camel/trunk/parent/pom.xml

Modified: camel/trunk/parent/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/parent/pom.xml?rev=984461r1=984460r2=984461view=diff
==
--- camel/trunk/parent/pom.xml (original)
+++ camel/trunk/parent/pom.xml Wed Aug 11 16:20:36 2010
@@ -106,8 +106,8 @@
 quartz-version1.8.3/quartz-version
 restlet-version1.1.10/restlet-version
 saxon-version9.1.0.8/saxon-version
-scala-version2.8.0.RC7/scala-version
-scala-plugin-version2.9.1/scala-plugin-version
+scala-version2.8.0/scala-version
+scala-plugin-version2.14.1/scala-plugin-version
 shiro-version1.0.0-incubating/shiro-version
 slf4j-version1.6.0/slf4j-version
 smack-version3.1.0/smack-version




svn commit: r983574 - in /camel/trunk/camel-core/src/main/java/org/apache/camel: impl/DefaultEndpoint.java spi/HasId.java util/EndpointHelper.java

2010-08-09 Thread jstrachan
Author: jstrachan
Date: Mon Aug  9 10:24:15 2010
New Revision: 983574

URL: http://svn.apache.org/viewvc?rev=983574view=rev
Log:
fix for CAMEL-3035

Added:
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasId.java
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultEndpoint.java

camel/trunk/camel-core/src/main/java/org/apache/camel/util/EndpointHelper.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultEndpoint.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultEndpoint.java?rev=983574r1=983573r2=983574view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultEndpoint.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultEndpoint.java 
Mon Aug  9 10:24:15 2010
@@ -27,6 +27,8 @@ import org.apache.camel.Endpoint;
 import org.apache.camel.Exchange;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.PollingConsumer;
+import org.apache.camel.spi.HasId;
+import org.apache.camel.util.EndpointHelper;
 import org.apache.camel.util.ObjectHelper;
 
 /**
@@ -39,13 +41,15 @@ import org.apache.camel.util.ObjectHelpe
  *
  * @version $Revision$
  */
-public abstract class DefaultEndpoint implements Endpoint, CamelContextAware {
+public abstract class DefaultEndpoint implements Endpoint, HasId, 
CamelContextAware {
+
 private String endpointUri;
 private CamelContext camelContext;
 private Component component;
 private ExchangePattern exchangePattern = ExchangePattern.InOnly;
 // option to allow end user to dictate whether async processing should be 
used or not (if possible)
 private boolean synchronous;
+private final String id = EndpointHelper.createEndpointId();
 
 protected DefaultEndpoint(String endpointUri, Component component) {
 this(endpointUri, component.getCamelContext());
@@ -83,6 +87,14 @@ public abstract class DefaultEndpoint im
 return Endpoint[ + getEndpointUri() + ];
 }
 
+/**
+ * Returns a unique String ID which can be used for aliasing without 
having to use the whole URI which
+ * is not unique 
+ */
+public String getId() {
+return id;
+}
+
 public String getEndpointUri() {
 if (endpointUri == null) {
 endpointUri = createEndpointUri();

Added: camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasId.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasId.java?rev=983574view=auto
==
--- camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasId.java (added)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/spi/HasId.java Mon 
Aug  9 10:24:15 2010
@@ -0,0 +1,26 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spi;
+
+/**
+ * A simple marker interface for an object which has a unique ID which is 
useful for referring to objects
+ * in REST or JMX style APIs
+ */
+public interface HasId {
+String getId();
+}

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/EndpointHelper.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/util/EndpointHelper.java?rev=983574r1=983573r2=983574view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/EndpointHelper.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/EndpointHelper.java 
Mon Aug  9 10:24:15 2010
@@ -22,6 +22,7 @@ import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicLong;
 import java.util.regex.PatternSyntaxException;
 
 import org.apache.camel.CamelContext;
@@ -42,6 +43,7 @@ import org.apache.commons.logging.LogFac
 public final class EndpointHelper {
 
 private static final transient Log LOG = 
LogFactory.getLog(EndpointHelper.class);
+private static final

svn commit: r983575 - in /camel/trunk/components/camel-web: ./ src/main/java/org/apache/camel/web/model/ src/main/java/org/apache/camel/web/resources/ src/main/resources/ src/main/webapp/org/apache/ca

2010-08-09 Thread jstrachan
Author: jstrachan
Date: Mon Aug  9 10:25:10 2010
New Revision: 983575

URL: http://svn.apache.org/viewvc?rev=983575view=rev
Log:
fix for CAMEL-3036 using CAMEL-3035 as a way to make easier endpoint links

Modified:
camel/trunk/components/camel-web/pom.xml

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
camel/trunk/components/camel-web/src/main/resources/logback.xml

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/CamelContextResource.index.ssp

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=983575r1=983574r2=983575view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Mon Aug  9 10:25:10 2010
@@ -334,6 +334,16 @@
 
   plugin
 groupIdorg.codehaus.mojo/groupId
+artifactIdtomcat-maven-plugin/artifactId
+version1.0/version
+configuration
+  path/rider/path
+/configuration
+  /plugin
+
+
+  plugin
+groupIdorg.codehaus.mojo/groupId
 artifactIdexec-maven-plugin/artifactId
 version1.1.1/version
 executions

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java?rev=983575r1=983574r2=983575view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/EndpointLink.java
 Mon Aug  9 10:25:10 2010
@@ -22,6 +22,7 @@ import javax.xml.bind.annotation.XmlAttr
 import javax.xml.bind.annotation.XmlRootElement;
 
 import org.apache.camel.Endpoint;
+import org.apache.camel.spi.HasId;
 import org.apache.camel.web.util.UriCharactersEncoder;
 
 /**
@@ -55,12 +56,12 @@ public class EndpointLink {
 
 public void load(Endpoint endpoint) {
 this.uri = endpoint.getEndpointUri();
-this.href = createHref(uri);
+this.href = createHref(uri, endpoint);
 }
 
 public void load(String key, Endpoint endpoint) {
 this.uri = endpoint.getEndpointUri();
-this.href = createHref(key);
+this.href = createHref(key, endpoint);
 }
 
 public String getHref() {
@@ -79,10 +80,16 @@ public class EndpointLink {
 this.uri = uri;
 }
 
-protected String createHref(String uri) {
-// must not include :// in endpoint link
-// TODO: might need to use 
org.apache.camel.util.UnsafeUriCharactersEncoder to safely encode URI for the 
web
-return /endpoints/ + UriCharactersEncoder.encode(uri);
+protected String createHref(String uri, Endpoint endpoint) {
+if (endpoint instanceof HasId) {
+HasId hasId = (HasId) endpoint;
+String id = hasId.getId();
+return /endpoints/ + id;
+} else {
+// must not include :// in endpoint link
+// TODO: might need to use 
org.apache.camel.util.UnsafeUriCharactersEncoder to safely encode URI for the 
web
+return /endpoints/ + UriCharactersEncoder.encode(uri);
+}
 }
 
 }

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java?rev=983575r1=983574r2=983575view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
 Mon Aug  9 10:25:10 2010
@@ -33,8 +33,11 @@ import javax.ws.rs.core.UriInfo;
 import com.sun.jersey.api.representation.Form;
 import com.sun.jersey.api.view.Viewable;
 import org.apache.camel.Endpoint;
+import org.apache.camel.spi.HasId;
 import org.apache.camel.web.model.EndpointLink;
 import org.apache.camel.web.model.Endpoints;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 
 /**
  * The active endpoints in Camel
@@ -42,6 +45,8 @@ import org.apache.camel.web.model.Endpoi
  * @version $Revision$
  */
 public class EndpointsResource extends CamelChildResourceSupport {
+private static final transient Log LOG = 
LogFactory.getLog(EndpointsResource.class);
+
 private String error = ;
 private String newUri = mock:someName;
 
@@ -75,9 +80,22 @@ public

svn commit: r983580 - /camel/trunk/components/camel-web/pom.xml

2010-08-09 Thread jstrachan
Author: jstrachan
Date: Mon Aug  9 10:54:31 2010
New Revision: 983580

URL: http://svn.apache.org/viewvc?rev=983580view=rev
Log:
use http://localhost:8080/ for default context when running with mvn 
tomcat:run

Modified:
camel/trunk/components/camel-web/pom.xml

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=983580r1=983579r2=983580view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Mon Aug  9 10:54:31 2010
@@ -337,7 +337,7 @@
 artifactIdtomcat-maven-plugin/artifactId
 version1.0/version
 configuration
-  path/rider/path
+  path//path
 /configuration
   /plugin
 




svn commit: r983585 - in /camel/trunk/components/camel-web: pom.xml src/main/webapp/favicon.ico src/test/java/org/apache/camel/web/spring/CamelRouteTest.java

2010-08-09 Thread jstrachan
Author: jstrachan
Date: Mon Aug  9 11:07:21 2010
New Revision: 983585

URL: http://svn.apache.org/viewvc?rev=983585view=rev
Log:
upgraded Jersey to get nicer stack traces with 404s, fixed up failing test case 
and added a better favicon.ico

Modified:
camel/trunk/components/camel-web/pom.xml
camel/trunk/components/camel-web/src/main/webapp/favicon.ico

camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=983585r1=983584r2=983585view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Mon Aug  9 11:07:21 2010
@@ -31,15 +31,9 @@
properties

camel.osgi.export.pkgorg.apache.camel.web.*/camel.osgi.export.pkg
scalate-version1.3-SNAPSHOT/scalate-version
-jersey-version1.4-ea04/jersey-version
-!--
-jersey-version1.4-SNAPSHOT/jersey-version
---
+jersey-version1.4-ea05/jersey-version
 logback-version0.9.24/logback-version
jetty-port8080/jetty-port
-!--
-   webdriver-version0.6.1039/webdriver-version
---
webdriver-version0.9.7376/webdriver-version
/properties
 

Modified: camel/trunk/components/camel-web/src/main/webapp/favicon.ico
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/webapp/favicon.ico?rev=983585r1=983584r2=983585view=diff
==
Binary files - no diff available.

Modified: 
camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java?rev=983585r1=983584r2=983585view=diff
==
--- 
camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java
 (original)
+++ 
camel/trunk/components/camel-web/src/test/java/org/apache/camel/web/spring/CamelRouteTest.java
 Mon Aug  9 11:07:21 2010
@@ -58,7 +58,8 @@ public class CamelRouteTest extends Asse
 public void setUp() throws Exception {
 applicationContext = new 
FileSystemXmlApplicationContext(src/main/webapp/WEB-INF/applicationContext.xml);
 applicationContext.start();
-camelContext = (CamelContext) 
applicationContext.getBean(camelContext, CamelContext.class);
+camelContext = applicationContext.getBean(CamelContext.class);
+//applicationContext.getBean(camelContext, CamelContext.class);
 assertNotNull(camelContext, camelContext);
 }
 




svn commit: r983721 - in /camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources: CamelContextResource/ ComponentResource/ ComponentsResource/ ConvertersFromResource/ Converte

2010-08-09 Thread jstrachan
Author: jstrachan
Date: Mon Aug  9 16:38:55 2010
New Revision: 983721

URL: http://svn.apache.org/viewvc?rev=983721view=rev
Log:
zapped some old JSP cruft

Removed:

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/CamelContextResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/ComponentResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/ComponentsResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/ConvertersFromResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/ConvertersResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/EndpointResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/EndpointsResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/ExchangeResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/LanguageResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/LanguagesResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/RouteResource/

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/RoutesResource/



svn commit: r983723 - in /camel/trunk/components/camel-web/src/main/webapp: WEB-INF/jspf/ com/sun/jersey/server/impl/wadl/WadlResource/ com/sun/jersey/server/impl/wadl/WadlResourceResource/

2010-08-09 Thread jstrachan
Author: jstrachan
Date: Mon Aug  9 16:39:28 2010
New Revision: 983723

URL: http://svn.apache.org/viewvc?rev=983723view=rev
Log:
zapped some old JSP cruft

Removed:
camel/trunk/components/camel-web/src/main/webapp/WEB-INF/jspf/

camel/trunk/components/camel-web/src/main/webapp/com/sun/jersey/server/impl/wadl/WadlResource/

camel/trunk/components/camel-web/src/main/webapp/com/sun/jersey/server/impl/wadl/WadlResourceResource/



svn commit: r982898 - /camel/trunk/components/pom.xml

2010-08-06 Thread jstrachan
Author: jstrachan
Date: Fri Aug  6 07:35:50 2010
New Revision: 982898

URL: http://svn.apache.org/viewvc?rev=982898view=rev
Log:
moved camel-web to be jdk6 only

Modified:
camel/trunk/components/pom.xml

Modified: camel/trunk/components/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/pom.xml?rev=982898r1=982897r2=982898view=diff
==
--- camel/trunk/components/pom.xml (original)
+++ camel/trunk/components/pom.xml Fri Aug  6 07:35:50 2010
@@ -115,7 +115,20 @@
 modulecamel-xmlsecurity/module
 modulecamel-xmpp/module
 modulecamel-xstream/module
-modulecamel-web/module
-modulecamel-web-standalone/module
   /modules
+  
+  profiles
+profile
+  idjdk1.6-modules/id
+  activation
+!-- for maven 2.0.x syntax --
+jdk1.6/jdk
+  /activation
+  modules
+modulecamel-web/module
+modulecamel-web-standalone/module
+  /modules
+/profile
+  /profiles
+  
 /project




svn commit: r982947 - /camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java

2010-08-06 Thread jstrachan
Author: jstrachan
Date: Fri Aug  6 13:16:30 2010
New Revision: 982947

URL: http://svn.apache.org/viewvc?rev=982947view=rev
Log:
added helper method

Modified:

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java?rev=982947r1=982946r2=982947view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java
 Fri Aug  6 13:16:30 2010
@@ -42,6 +42,10 @@ public class Route {
 return route.getId();
 }
 
+public String idOrCreate() {
+return route.idOrCreate(camelContext.getNodeIdFactory());
+}
+
 public DescriptionDefinition getDescription() {
 return route.getDescription();
 }




svn commit: r982979 - /camel/trunk/components/camel-web/pom.xml

2010-08-06 Thread jstrachan
Author: jstrachan
Date: Fri Aug  6 14:18:25 2010
New Revision: 982979

URL: http://svn.apache.org/viewvc?rev=982979view=rev
Log:
fix old versions of jersey in pom for CAMEL-3028

Modified:
camel/trunk/components/camel-web/pom.xml

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=982979r1=982978r2=982979view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Fri Aug  6 14:18:25 2010
@@ -357,10 +357,10 @@
goals
goaljavadoc/goal
/goals
+phasepackage/phase
 !--
-   phasecompile/phase
+phasecompile/phase
 --
-   phasepackage/phase
/execution
/executions
 
@@ -376,12 +376,12 @@
docletArtifact

groupIdcom.sun.jersey.contribs/groupId

artifactIdmaven-wadl-plugin/artifactId
-   
version1.1.4.1/version
+  version${jersey-version}/version
/docletArtifact
docletArtifact

groupIdcom.sun.jersey.contribs/groupId

artifactIdwadl-resourcedoc-doclet/artifactId
-   
version1.1.4.1/version
+  version${jersey-version}/version
/docletArtifact
!--
Also specify jersey and 
xerces as doclet artifacts as the
@@ -408,11 +408,13 @@

artifactIdjaxb-impl/artifactId

version${jaxb-version}/version
/docletArtifact
+!--
docletArtifact

groupIdjavax.activation/groupId

artifactIdactivation/artifactId
version1.1/version
/docletArtifact
+--
docletArtifact
groupIdstax/groupId

artifactIdstax-api/artifactId
@@ -428,7 +430,7 @@
plugin
groupIdcom.sun.jersey.contribs/groupId
artifactIdmaven-wadl-plugin/artifactId
-   version1.1.4.1/version
+version${jersey-version}/version
executions
execution
idgenerate/id
@@ -436,9 +438,11 @@
goalgenerate/goal
/goals
 !--
-   phasecompile/phase
+TODO - for some reason using a compile phase with maven 2.2.1 and 
jetty:run causes an odd classloader bug
+
+phasecompile/phase
 --
-   phasepackage/phase
+phasepackage/phase
/execution
/executions
configuration




svn commit: r982994 - /camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java

2010-08-06 Thread jstrachan
Author: jstrachan
Date: Fri Aug  6 14:39:24 2010
New Revision: 982994

URL: http://svn.apache.org/viewvc?rev=982994view=rev
Log:
added a little helper method for using in camel web

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java?rev=982994r1=982993r2=982994view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
 Fri Aug  6 14:39:24 2010
@@ -137,6 +137,13 @@ public abstract class OptionalIdentified
 return customId;
 }
 
+/**
+ * Returns the description text or null if there is no description text 
associated with this node
+ */
+public String getDescriptionText() {
+return (description != null) ? description.getText() : null;
+}
+
 // Implementation methods
 // 
-
 




svn commit: r982998 - /camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java

2010-08-06 Thread jstrachan
Author: jstrachan
Date: Fri Aug  6 14:48:55 2010
New Revision: 982998

URL: http://svn.apache.org/viewvc?rev=982998view=rev
Log:
major commit - not :)

Modified:

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java?rev=982998r1=982997r2=982998view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/model/Route.java
 Fri Aug  6 14:48:55 2010
@@ -54,6 +54,7 @@ public class Route {
 DescriptionDefinition definition = getDescription();
 return (definition != null) ? definition.getText() : ;
 }
+
 public ServiceStatus getStatus() {
 return route.getStatus(camelContext);
 }




svn commit: r982599 - /camel/trunk/components/camel-web/pom.xml

2010-08-05 Thread jstrachan
Author: jstrachan
Date: Thu Aug  5 13:06:16 2010
New Revision: 982599

URL: http://svn.apache.org/viewvc?rev=982599view=rev
Log:
added a temporary snapshot repo for CAMEL-3028

Modified:
camel/trunk/components/camel-web/pom.xml

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=982599r1=982598r2=982599view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Thu Aug  5 13:06:16 2010
@@ -77,6 +77,19 @@
enabledfalse/enabled
/snapshots
/repository
+   
+   !-- temporary repo until scalate-1.3 is out --
+repository
+  idfusesource.m2-snapshot/id
+  nameFuseSource Community Snapshot Repository/name
+  urlhttp://repo.fusesource.com/maven2-snapshot/url
+  snapshots
+enabledtrue/enabled
+  /snapshots
+  releases
+enabledfalse/enabled
+  /releases
+/repository
/repositories
 
pluginRepositories




svn commit: r982602 - /camel/trunk/components/camel-web/pom.xml

2010-08-05 Thread jstrachan
Author: jstrachan
Date: Thu Aug  5 13:12:04 2010
New Revision: 982602

URL: http://svn.apache.org/viewvc?rev=982602view=rev
Log:
added the correct temporary snapshot repo for CAMEL-3028

Modified:
camel/trunk/components/camel-web/pom.xml

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=982602r1=982601r2=982602view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Thu Aug  5 13:12:04 2010
@@ -80,9 +80,9 @@

!-- temporary repo until scalate-1.3 is out --
 repository
-  idfusesource.m2-snapshot/id
-  nameFuseSource Community Snapshot Repository/name
-  urlhttp://repo.fusesource.com/maven2-snapshot/url
+  idfusesource.snapshots/id
+  nameFuseSource Snapshot Repository/name
+  
urlhttp://repo.fusesource.com/nexus/content/repositories/snapshots/url
   snapshots
 enabledtrue/enabled
   /snapshots
@@ -90,7 +90,7 @@
 enabledfalse/enabled
   /releases
 /repository
-   /repositories
+  /repositories
 
pluginRepositories
pluginRepository




svn commit: r982612 - /camel/trunk/components/camel-web/pom.xml

2010-08-05 Thread jstrachan
Author: jstrachan
Date: Thu Aug  5 13:30:06 2010
New Revision: 982612

URL: http://svn.apache.org/viewvc?rev=982612view=rev
Log:
work around for odd classloader bug in mvn 2.2.1 when executing javadoc/wadl 
plugins when trying to run mvn jetty:run CAMEL-3028

Modified:
camel/trunk/components/camel-web/pom.xml

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=982612r1=982611r2=982612view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Thu Aug  5 13:30:06 2010
@@ -357,8 +357,10 @@
goals
goaljavadoc/goal
/goals
+!--
phasecompile/phase
-   !--phasepackage/phase--
+--
+   phasepackage/phase
/execution
/executions
 
@@ -433,7 +435,10 @@
goals
goalgenerate/goal
/goals
+!--
phasecompile/phase
+--
+   phasepackage/phase
/execution
/executions
configuration




svn commit: r962488 - /camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/spi/SpringInjector.java

2010-07-09 Thread jstrachan
Author: jstrachan
Date: Fri Jul  9 11:50:24 2010
New Revision: 962488

URL: http://svn.apache.org/viewvc?rev=962488view=rev
Log:
expose the application context, so from a CamelContext you can find the 
ApplicationContext if you need it

Modified:

camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/spi/SpringInjector.java

Modified: 
camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/spi/SpringInjector.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/spi/SpringInjector.java?rev=962488r1=962487r2=962488view=diff
==
--- 
camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/spi/SpringInjector.java
 (original)
+++ 
camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/spi/SpringInjector.java
 Fri Jul  9 11:50:24 2010
@@ -65,4 +65,9 @@ public class SpringInjector implements I
 public void setDependencyCheck(boolean dependencyCheck) {
 this.dependencyCheck = dependencyCheck;
 }
+
+
+public ConfigurableApplicationContext getApplicationContext() {
+return applicationContext;
+}
 }




svn commit: r961759 - /camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/CamelResourceConfig.java

2010-07-08 Thread jstrachan
Author: jstrachan
Date: Thu Jul  8 13:16:54 2010
New Revision: 961759

URL: http://svn.apache.org/viewvc?rev=961759view=rev
Log:
made it easier to reuse the CamelResourceConfig class, letting you pass in the 
packages as a constructor

Modified:

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/CamelResourceConfig.java

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/CamelResourceConfig.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/CamelResourceConfig.java?rev=961759r1=961758r2=961759view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/CamelResourceConfig.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/util/CamelResourceConfig.java
 Thu Jul  8 13:16:54 2010
@@ -34,13 +34,17 @@ import org.apache.camel.web.resources.Co
 public class CamelResourceConfig extends PackagesResourceConfig {
 
 public CamelResourceConfig() {
-super(createProperties());
+this(org.apache.camel.web);
 }
 
-protected static MapString, Object createProperties() {
+public CamelResourceConfig(String packages) {
+super(createProperties(packages));
+}
+
+protected static MapString, Object createProperties(String packages) {
 MapString, Object properties = new HashMapString, Object();
 
-properties.put(PackagesResourceConfig.PROPERTY_PACKAGES, 
getResourcePackages());
+properties.put(PackagesResourceConfig.PROPERTY_PACKAGES, packages);
 
 WadlGeneratorConfig config = WadlGeneratorConfig
 .generator(WadlGeneratorApplicationDoc.class)
@@ -63,8 +67,4 @@ public class CamelResourceConfig extends
 m.put(dot, MediaType.valueOf(Constants.DOT_MIMETYPE));
 return m;
 }
-
-protected static String getResourcePackages() {
-return org.apache.camel.web;
-}
 }
\ No newline at end of file




svn commit: r960883 - /camel/trunk/camel-core/src/main/java/org/apache/camel/model/DescriptionDefinition.java

2010-07-06 Thread jstrachan
Author: jstrachan
Date: Tue Jul  6 12:06:11 2010
New Revision: 960883

URL: http://svn.apache.org/viewvc?rev=960883view=rev
Log:
fix for CAMEL-2910 so we can store x,y and width,height locations of nodes in 
diagrams when visualising or editing routes

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/model/DescriptionDefinition.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/DescriptionDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/DescriptionDefinition.java?rev=960883r1=960882r2=960883view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/DescriptionDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/DescriptionDefinition.java
 Tue Jul  6 12:06:11 2010
@@ -32,6 +32,14 @@ import javax.xml.bind.annotation.XmlValu
 public class DescriptionDefinition {
 @XmlAttribute(required = false)
 private String lang;
+@XmlAttribute(required = false)
+private Double layoutX;
+@XmlAttribute(required = false)
+private Double layoutY;
+@XmlAttribute(required = false)
+private Double layoutWidth;
+@XmlAttribute(required = false)
+private Double layoutHeight;
 
 @XmlValue
 private String text;
@@ -51,4 +59,36 @@ public class DescriptionDefinition {
 public void setText(String text) {
 this.text = text;
 }
+
+public Double getLayoutHeight() {
+return layoutHeight;
+}
+
+public void setLayoutHeight(Double layoutHeight) {
+this.layoutHeight = layoutHeight;
+}
+
+public Double getLayoutWidth() {
+return layoutWidth;
+}
+
+public void setLayoutWidth(Double layoutWidth) {
+this.layoutWidth = layoutWidth;
+}
+
+public Double getLayoutX() {
+return layoutX;
+}
+
+public void setLayoutX(Double layoutX) {
+this.layoutX = layoutX;
+}
+
+public Double getLayoutY() {
+return layoutY;
+}
+
+public void setLayoutY(Double layoutY) {
+this.layoutY = layoutY;
+}
 }




svn commit: r960907 - in /camel/trunk/camel-core/src/main/java/org/apache/camel: model/BeanDefinition.java model/ExpressionNode.java model/FromDefinition.java model/OptionalIdentifiedDefinition.java m

2010-07-06 Thread jstrachan
Author: jstrachan
Date: Tue Jul  6 14:47:12 2010
New Revision: 960907

URL: http://svn.apache.org/viewvc?rev=960907view=rev
Log:
fix for CAMEL-2913 so we can mark some common properties as being required to 
help tooling

Added:
camel/trunk/camel-core/src/main/java/org/apache/camel/spi/Required.java   
(contents, props changed)
  - copied, changed from r960836, 
camel/trunk/camel-core/src/main/java/org/apache/camel/Consume.java
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java?rev=960907r1=960906r2=960907view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java 
Tue Jul  6 14:47:12 2010
@@ -25,6 +25,7 @@ import javax.xml.bind.annotation.XmlTran
 import org.apache.camel.Processor;
 import org.apache.camel.component.bean.BeanProcessor;
 import org.apache.camel.component.bean.RegistryBean;
+import org.apache.camel.spi.Required;
 import org.apache.camel.spi.RouteContext;
 import org.apache.camel.util.CamelContextHelper;
 import org.apache.camel.util.ObjectHelper;
@@ -72,6 +73,7 @@ public class BeanDefinition extends Outp
 return ref;
 }
 
+@Required
 public void setRef(String ref) {
 this.ref = ref;
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java?rev=960907r1=960906r2=960907view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java 
Tue Jul  6 14:47:12 2010
@@ -28,6 +28,7 @@ import org.apache.camel.Predicate;
 import org.apache.camel.Processor;
 import org.apache.camel.model.language.ExpressionDefinition;
 import org.apache.camel.processor.FilterProcessor;
+import org.apache.camel.spi.Required;
 import org.apache.camel.spi.RouteContext;
 
 /**
@@ -70,6 +71,7 @@ public class ExpressionNode extends Proc
 return expression;
 }
 
+@Required
 public void setExpression(ExpressionDefinition expression) {
 this.expression = expression;
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java?rev=960907r1=960906r2=960907view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java 
Tue Jul  6 14:47:12 2010
@@ -23,6 +23,7 @@ import javax.xml.bind.annotation.XmlRoot
 import javax.xml.bind.annotation.XmlTransient;
 
 import org.apache.camel.Endpoint;
+import org.apache.camel.spi.Required;
 import org.apache.camel.spi.RouteContext;
 import org.apache.camel.util.ObjectHelper;
 
@@ -87,6 +88,7 @@ public class FromDefinition extends Opti
  *
  * @param uri the endpoint URI to use
  */
+@Required
 public void setUri(String uri) {
 this.uri = uri;
 clear();

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java?rev=960907r1=960906r2=960907view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
 Tue Jul  6 14:47:12 2010
@@ -35,7 +35,7 @@ import org.apache.camel.spi.NodeIdFactor
  */
 @XmlType(name = optionalIdentifiedDefinition)
 @XmlAccessorType(XmlAccessType.FIELD)
-public abstract class OptionalIdentifiedDefinitionT extends 
OptionalIdentifiedDefinition {
+public abstract class OptionalIdentifiedDefinitionT extends 
OptionalIdentifiedDefinitionT {
 @XmlAttribute(required

svn commit: r959563 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/model/ components/camel-bam/src/main/java/org/apache/camel/bam/rules/ components/camel-scala/src/test/scala/org/apache/

2010-07-01 Thread jstrachan
Author: jstrachan
Date: Thu Jul  1 09:14:59 2010
New Revision: 959563

URL: http://svn.apache.org/viewvc?rev=959563view=rev
Log:
fix for CAMEL-2883 along with a test case in camel-scala so that we can use the 
ProcessorDefintion typed methods in the model from Scala without getting 
compile errors due to bad use of generics

Added:

camel/trunk/components/camel-scala/src/test/scala/org/apache/camel/scala/UsingModelTest.scala
  - copied, changed from r959354, 
camel/trunk/components/camel-scala/src/test/scala/org/apache/camel/scala/ScalaTypeConverterTest.scala
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/model/AOPDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/ConvertBodyDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/FinallyDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/InterceptDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/InterceptSendToEndpointDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/MarshalDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/MulticastDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnExceptionDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/OtherwiseDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/OutputDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/PipelineDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/PolicyDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/ProcessDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/RemoveHeaderDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/RemoveHeadersDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/RemovePropertyDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/ResequenceDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/SamplingDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/SetExchangePatternDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/StopDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/ThreadsDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/ThrottleDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/TransactedDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/UnmarshalDefinition.java

camel/trunk/components/camel-bam/src/main/java/org/apache/camel/bam/rules/TemporalRule.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/AOPDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/AOPDefinition.java?rev=959563r1=959562r2=959563view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/AOPDefinition.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/AOPDefinition.java 
Thu Jul  1 09:14:59 2010
@@ -36,7 +36,7 @@ import org.apache.camel.spi.RouteContext
 @XmlRootElement(name = aop)
 @XmlAccessorType(XmlAccessType.FIELD)
 @Deprecated
-public class AOPDefinition extends OutputDefinitionProcessorDefinition {
+public class AOPDefinition extends OutputDefinitionAOPDefinition {
 
 @XmlAttribute(required = false)
 private String beforeUri;

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java?rev=959563r1=959562r2=959563view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/BeanDefinition.java 
Thu Jul  1 09:14:59 2010
@@ -36,7 +36,7 @@ import org.apache.camel.util.ObjectHelpe
  */
 @XmlRootElement(name = bean)
 @XmlAccessorType(XmlAccessType.FIELD)
-public class BeanDefinition extends OutputDefinitionProcessorDefinition {
+public class BeanDefinition extends OutputDefinitionBeanDefinition {
 @XmlAttribute(required = false)
 private String ref;
 @XmlAttribute(required = false)

Modified

svn commit: r959624 - /camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RouteResource.java

2010-07-01 Thread jstrachan
Author: jstrachan
Date: Thu Jul  1 11:43:20 2010
New Revision: 959624

URL: http://svn.apache.org/viewvc?rev=959624view=rev
Log:
exposed the id property

Modified:

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RouteResource.java

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RouteResource.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RouteResource.java?rev=959624r1=959623r2=959624view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RouteResource.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RouteResource.java
 Thu Jul  1 11:43:20 2010
@@ -376,4 +376,7 @@ public class RouteResource extends Camel
 return error;
 }
 
+public String getId() {
+return id;
+}
 }




svn commit: r959694 - in /camel/trunk/components/camel-web/src/main: java/org/apache/camel/web/resources/RoutesResource.java webapp/org/apache/camel/web/resources/RouteResource/index.jsp

2010-07-01 Thread jstrachan
Author: jstrachan
Date: Thu Jul  1 15:27:48 2010
New Revision: 959694

URL: http://svn.apache.org/viewvc?rev=959694view=rev
Log:
fix for CAMEL-2891 to use a URI template for languages which doesn't clash and 
preserves extensibility to other representations

Modified:

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RoutesResource.java

camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/RouteResource/index.jsp

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RoutesResource.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RoutesResource.java?rev=959694r1=959693r2=959694view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RoutesResource.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RoutesResource.java
 Thu Jul  1 15:27:48 2010
@@ -111,7 +111,7 @@ public class RoutesResource extends Came
 /**
  * Looks up an individual route with specified language
  */
-@Path({id}/{language})
+@Path({id}/lang/{language})
 public RouteResource getRoute(@PathParam(id) String id, 
@PathParam(language) String language) {
 RouteResource routeResource = getRoute(id);
 if (routeResource != null) {

Modified: 
camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/RouteResource/index.jsp
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/RouteResource/index.jsp?rev=959694r1=959693r2=959694view=diff
==
--- 
camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/RouteResource/index.jsp
 (original)
+++ 
camel/trunk/components/camel-web/src/main/webapp/org/apache/camel/web/resources/RouteResource/index.jsp
 Thu Jul  1 15:27:48 2010
@@ -18,8 +18,8 @@
 /div
 
 ul
-lia href='c:url value=/routes/${it.route.id}/xml/edit/'Edit Route in 
Xml/a
-lia href='c:url value=/routes/${it.route.id}/groovy/edit/'Edit Route 
in Groovy/a
+lia href='c:url value=/routes/${it.route.id}/lang/xml/edit/'Edit Route 
in Xml/a
+lia href='c:url value=/routes/${it.route.id}/lang/groovy/edit/'Edit 
Route in Groovy/a
 liEdit Route in Ruby
 liEdit Route in Scala 
 /ul




svn commit: r959731 - in /camel/trunk/camel-core/src/main/java/org/apache/camel: model/FromDefinition.java model/SendDefinition.java view/GraphSupport.java

2010-07-01 Thread jstrachan
Author: jstrachan
Date: Thu Jul  1 17:26:41 2010
New Revision: 959731

URL: http://svn.apache.org/viewvc?rev=959731view=rev
Log:
fix for CAMEL-2893 so that getUriOrRef will return non-null when there is a URI 
defined

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java

camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java?rev=959731r1=959730r2=959731view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java 
Thu Jul  1 17:26:41 2010
@@ -119,7 +119,7 @@ public class FromDefinition extends Opti
  * Returns the endpoint URI or the name of the reference to it
  */
 public Object getUriOrRef() {
-if (ObjectHelper.isEmpty(uri)) {
+if (ObjectHelper.isNotEmpty(uri)) {
 return uri;
 } else if (endpoint != null) {
 return endpoint.getEndpointUri();

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java?rev=959731r1=959730r2=959731view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java 
Thu Jul  1 17:26:41 2010
@@ -105,7 +105,7 @@ public abstract class SendDefinitionTyp
  */
 public Object getUriOrRef() {
 String uri = getUri();
-if (ObjectHelper.isEmpty(uri)) {
+if (ObjectHelper.isNotEmpty(uri)) {
 return uri;
 } else if (endpoint != null) {
 return endpoint.getEndpointUri();

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java?rev=959731r1=959730r2=959731view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java 
Thu Jul  1 17:26:41 2010
@@ -67,7 +67,10 @@ public class GraphSupport {
 ToDefinition toType = (ToDefinition) node;
 key = toType.getUriOrRef();
 }
-NodeData answer = nodeMap.get(key);
+NodeData answer = null;
+if (key != null) {
+answer = nodeMap.get(key);
+}
 if (answer == null) {
 String id = node + (nodeMap.size() + 1);
 answer = new NodeData(id, node, imagePrefix);




svn commit: r954908 - /camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java

2010-06-15 Thread jstrachan
Author: jstrachan
Date: Tue Jun 15 14:29:40 2010
New Revision: 954908

URL: http://svn.apache.org/viewvc?rev=954908view=rev
Log:
added type converter so its easy to set the description on a 
ProcessorDefinition using reflection with a String

Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java?rev=954908r1=954907r2=954908view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/converter/CamelConverter.java
 Tue Jun 15 14:29:40 2010
@@ -22,6 +22,7 @@ import org.apache.camel.Expression;
 import org.apache.camel.Message;
 import org.apache.camel.Predicate;
 import org.apache.camel.Processor;
+import org.apache.camel.model.DescriptionDefinition;
 
 /**
  * Some useful converters for Camel APIs such as to convert a {...@link 
Predicate} or {...@link Expression}
@@ -56,4 +57,11 @@ public class CamelConverter {
 }
 };
 }
+
+@Converter
+public DescriptionDefinition toDefinition(String descriptionText) {
+DescriptionDefinition answer = new DescriptionDefinition();
+answer.setText(descriptionText);
+return answer;
+}
 }




svn commit: r921447 - in /camel/trunk/camel-core/src/main/java/org/apache/camel/view: GraphGeneratorSupport.java GraphSupport.java RouteDotGenerator.java

2010-03-10 Thread jstrachan
Author: jstrachan
Date: Wed Mar 10 16:50:51 2010
New Revision: 921447

URL: http://svn.apache.org/viewvc?rev=921447view=rev
Log:
minor refactor of the Graph visualisation code making it easier to reuse the 
code without necessarily creating a text output file from the EIP model

Added:

camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java   
(with props)
Modified:

camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphGeneratorSupport.java

camel/trunk/camel-core/src/main/java/org/apache/camel/view/RouteDotGenerator.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphGeneratorSupport.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphGeneratorSupport.java?rev=921447r1=921446r2=921447view=diff
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphGeneratorSupport.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphGeneratorSupport.java
 Wed Mar 10 16:50:51 2010
@@ -42,14 +42,11 @@ import org.apache.commons.logging.LogFac
 /**
  * @version $Revision$
  */
-public abstract class GraphGeneratorSupport {
-protected final transient Log log = LogFactory.getLog(getClass());
+public abstract class GraphGeneratorSupport extends GraphSupport {
 protected String dir;
 protected int clusterCounter;
 protected String extension;
 
-private final String imagePrefix = http://camel.apache.org/images/eip/;;
-private final MapObject, NodeData nodeMap = new HashMapObject, 
NodeData();
 private final boolean makeParentDirs = true;
 private MapString, ListRouteDefinition routeGroupMap;
 
@@ -112,61 +109,4 @@ public abstract class GraphGeneratorSupp
 
 protected abstract void generateFile(PrintWriter writer, MapString, 
ListRouteDefinition map);
 
-protected boolean isMulticastNode(ProcessorDefinition node) {
-return node instanceof MulticastDefinition || node instanceof 
ChoiceDefinition;
-}
-
-protected String getLabel(ListExpressionDefinition expressions) {
-CollectionStringBuffer buffer = new CollectionStringBuffer();
-for (ExpressionDefinition expression : expressions) {
-buffer.append(getLabel(expression));
-}
-return buffer.toString();
-}
-
-protected String getLabel(ExpressionDefinition expression) {
-if (expression != null) {
-return expression.getLabel();
-}
-return ;
-}
-
-protected NodeData getNodeData(Object node) {
-Object key = node;
-if (node instanceof FromDefinition) {
-FromDefinition fromType = (FromDefinition) node;
-key = fromType.getUriOrRef();
-} else if (node instanceof ToDefinition) {
-ToDefinition toType = (ToDefinition) node;
-key = toType.getUriOrRef();
-}
-NodeData answer = nodeMap.get(key);
-if (answer == null) {
-String id = node + (nodeMap.size() + 1);
-answer = new NodeData(id, node, imagePrefix);
-nodeMap.put(key, answer);
-}
-return answer;
-}
-
-protected MapString, ListRouteDefinition 
createRouteGroupMap(ListRouteDefinition routes) {
-MapString, ListRouteDefinition map = new HashMapString, 
ListRouteDefinition();
-for (RouteDefinition route : routes) {
-addRouteToMap(map, route);
-}
-return map;
-}
-
-protected void addRouteToMap(MapString, ListRouteDefinition map, 
RouteDefinition route) {
-String group = route.getGroup();
-if (group == null) {
-group = Camel Routes;
-}
-ListRouteDefinition list = map.get(group);
-if (list == null) {
-list = new ArrayListRouteDefinition();
-map.put(group, list);
-}
-list.add(route);
-}
 }

Added: 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java?rev=921447view=auto
==
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java 
(added)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/view/GraphSupport.java 
Wed Mar 10 16:50:51 2010
@@ -0,0 +1,134 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses

svn commit: r905598 - in /camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala: RichExchange.scala RichMessage.scala

2010-02-02 Thread jstrachan
Author: jstrachan
Date: Tue Feb  2 12:11:30 2010
New Revision: 905598

URL: http://svn.apache.org/viewvc?rev=905598view=rev
Log:
added a RichMessage plus made RichExchange an Exchange implementation so it can 
be used in the scalate endpoint

Added:

camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichMessage.scala
Modified:

camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichExchange.scala

Modified: 
camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichExchange.scala
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichExchange.scala?rev=905598r1=905597r2=905598view=diff
==
--- 
camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichExchange.scala
 (original)
+++ 
camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichExchange.scala
 Tue Feb  2 12:11:30 2010
@@ -16,13 +16,15 @@
  */
 package org.apache.camel.scala
 
-import org.apache.camel.Exchange
 import reflect.Manifest
+import org.apache.camel.spi.{UnitOfWork, Synchronization}
+import org.apache.camel.{ExchangePattern, Message, Endpoint, Exchange}
+import java.lang.{Exception, String, Class}
 
 /**
  * Rich wrapper for Camel's Exchange implementations
  */
-class RichExchange(val exchange : Exchange) {
+class RichExchange(val exchange : Exchange) extends Exchange {
 
   def in : Any = exchange.getIn().getBody()
   
@@ -38,4 +40,71 @@
 
   def out_=(message:Any) = exchange.getOut().setBody(message)
 
+
+  // Delegation methods
+  //-
+
+  def setUnitOfWork(unitOfWork: UnitOfWork) = 
exchange.setUnitOfWork(unitOfWork)
+
+  def setProperty(name: String, value: Any) = exchange.setProperty(name, value)
+
+  def setPattern(pattern: ExchangePattern) = exchange.setPattern(pattern)
+
+  def setOut(out: Message) = exchange.setOut(out)
+
+  def setIn(in: Message) = exchange.setIn(in)
+
+  def setFromEndpoint(fromEndpoint: Endpoint) = 
exchange.setFromEndpoint(fromEndpoint)
+
+  def setExchangeId(id: String) = exchange.setExchangeId(id)
+
+  def setException(e: Exception) = exchange.setException(e)
+
+  def removeProperty(name: String) = exchange.removeProperty(name)
+
+  def isTransacted = exchange.isTransacted
+
+  def isRollbackOnly = exchange.isRollbackOnly
+
+  def isFailed = exchange.isFailed
+
+  def hasProperties = exchange.hasProperties
+
+  def hasOut = exchange.hasOut
+
+  def getUnitOfWork = exchange.getUnitOfWork
+
+  def getProperty[T](name: String, propertyType : Class[T]) = 
exchange.getProperty(name, propertyType)
+
+  def getProperty[T](name: String, defaultValue: Any, propertyType : Class[T]) 
= exchange.getProperty(name, defaultValue, propertyType)
+
+  def getProperty(name: String, defaultValue: Any) = 
exchange.getProperty(name, defaultValue)
+
+  def getProperty(name: String) = exchange.getProperty(name)
+
+  def getProperties = exchange.getProperties
+
+  def getPattern = exchange.getPattern
+
+  def getOut[T](outType : Class[T]) = exchange.getOut(outType)
+
+  def getOut = exchange.getOut
+
+  def getIn[T](inType : Class[T]) = exchange.getIn(inType)
+
+  def getIn = exchange.getIn
+
+  def getFromEndpoint = exchange.getFromEndpoint
+
+  def getExchangeId = exchange.getExchangeId
+
+  def getException[T](exceptionType : Class[T]) = 
exchange.getException(exceptionType)
+
+  def getException = exchange.getException
+
+  def getContext = exchange.getContext
+
+  def copy = new RichExchange(exchange.copy)
+
+  def addOnCompletion(onCompletion: Synchronization) = 
exchange.addOnCompletion(onCompletion)
 }

Added: 
camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichMessage.scala
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichMessage.scala?rev=905598view=auto
==
--- 
camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichMessage.scala
 (added)
+++ 
camel/trunk/components/camel-scala/src/main/scala/org/apache/camel/scala/RichMessage.scala
 Tue Feb  2 12:11:30 2010
@@ -0,0 +1,76 @@
+package org.apache.camel.scala
+
+import org.apache.camel.Message
+import java.util.Map
+import java.lang.{Class, String}
+import javax.activation.DataHandler
+
+/**
+ * @version $Revision: 1.1 $
+ */
+
+class RichMessage(val message: Message) extends Message {
+
+  // Delegate methods
+  //-
+
+  def setMessageId(messageId: String) = message.setMessageId(messageId)
+
+  def setHeaders(headers: Map[String, Object]) = message.setHeaders(headers)
+
+  def setHeader(name: String, value: Any) = message.setHeader(name, value)
+
+  def setFault(fault: Boolean) = message.setFault(fault

svn commit: r891737 - in /camel/trunk/components/camel-web: ./ src/main/java/org/apache/camel/web/resources/ src/main/resources/META-INF/services/

2009-12-17 Thread jstrachan
Author: jstrachan
Date: Thu Dec 17 14:50:48 2009
New Revision: 891737

URL: http://svn.apache.org/viewvc?rev=891737view=rev
Log:
fix for CAMEL-2301 to switch to jackson for JSON marshalling

Added:
camel/trunk/components/camel-web/src/main/resources/META-INF/services/

camel/trunk/components/camel-web/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyReader

camel/trunk/components/camel-web/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyWriter
Modified:
camel/trunk/components/camel-web/pom.xml

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RouteResource.java

camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/RoutesResource.java

Modified: camel/trunk/components/camel-web/pom.xml
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/pom.xml?rev=891737r1=891736r2=891737view=diff
==
--- camel/trunk/components/camel-web/pom.xml (original)
+++ camel/trunk/components/camel-web/pom.xml Thu Dec 17 14:50:48 2009
@@ -91,9 +91,9 @@
   version${jersey-version}/version
 /dependency
 dependency
-  groupIdcom.sun.jersey/groupId
-  artifactIdjersey-json/artifactId
-  version${jersey-version}/version
+  groupIdorg.codehaus.jackson/groupId
+  artifactIdjackson-jaxrs/artifactId
+  version1.3.2/version
 /dependency
 dependency
   groupIdcom.sun.jersey/groupId

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java?rev=891737r1=891736r2=891737view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/CamelContextResource.java
 Thu Dec 17 14:50:48 2009
@@ -95,7 +95,7 @@
 @GET
 // TODO we can replace this long expression with a static constant
 // when Jersey supports JAX-RS 1.1
-@Produces({MediaType.TEXT_XML, MediaType.APPLICATION_XML, 
MediaType.APPLICATION_JSON})
+@Produces({MediaType.TEXT_XML, MediaType.APPLICATION_XML, 
MediaType.APPLICATION_JSON, text/json})
 public Camel getCamel() {
 return new Camel(camelContext, getVersion());
 }

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java?rev=891737r1=891736r2=891737view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/Constants.java
 Thu Dec 17 14:50:48 2009
@@ -23,7 +23,7 @@
 
 public static final String HTML_MIME_TYPES = text/html;qs=5;
 
-public static final String DATA_MIME_TYPES = 
text/xml,application/xml,application/json;
+public static final String DATA_MIME_TYPES = 
text/xml,application/xml,application/json,text/json;
 
 public static final String DOT_MIMETYPE = text/vnd.graphviz;
 public static final String JAXB_PACKAGES = 
org.apache.camel.model.Constants.JAXB_CONTEXT_PACKAGES + 
:org.apache.camel.web.model;

Modified: 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java?rev=891737r1=891736r2=891737view=diff
==
--- 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
 (original)
+++ 
camel/trunk/components/camel-web/src/main/java/org/apache/camel/web/resources/EndpointsResource.java
 Thu Dec 17 14:50:48 2009
@@ -53,7 +53,7 @@
  * Returns a list of endpoints available in this context
  */
 @GET
-@Produces({MediaType.TEXT_XML, MediaType.APPLICATION_XML, 
MediaType.APPLICATION_JSON})
+@Produces({MediaType.TEXT_XML, MediaType.APPLICATION_XML, 
MediaType.APPLICATION_JSON, text/json})
 public Endpoints getDTO() {
 return new Endpoints(getCamelContext());
 }

Modified: 
camel/trunk/components

  1   2   >