buildbot success in ASF Buildbot on camel-site-production
The Buildbot has detected a restored build on builder camel-site-production while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/camel-site-production/builds/485 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-cms-slave Build Reason: The Nightly scheduler named 'camel-site-production' triggered this build Build Source Stamp: [branch camel/website] HEAD Blamelist: Build succeeded! Sincerely, -The Buildbot
camel git commit: Upgrade groovy compiler plugin
Repository: camel Updated Branches: refs/heads/master 56a06b014 - 28128d9f3 Upgrade groovy compiler plugin Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/28128d9f Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/28128d9f Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/28128d9f Branch: refs/heads/master Commit: 28128d9f3e185087c756384d29e2cb4cd6a0aa05 Parents: 56a06b0 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 14:05:33 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 14:05:33 2015 +0200 -- components/camel-groovy/pom.xml | 161 ++- 1 file changed, 81 insertions(+), 80 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/28128d9f/components/camel-groovy/pom.xml -- diff --git a/components/camel-groovy/pom.xml b/components/camel-groovy/pom.xml index f65eef1..0920b16f 100644 --- a/components/camel-groovy/pom.xml +++ b/components/camel-groovy/pom.xml @@ -15,7 +15,8 @@ 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; +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 @@ -30,15 +31,15 @@ descriptionCamel Groovy support/description properties - camel.osgi.import.pkg - !org.apache.camel.component.groovy.*, - org.codehaus.groovy.runtime.callsite, - org.apache.camel.*;${camel.osgi.import.camel.version}, - ${camel.osgi.import.defaults}, - * - /camel.osgi.import.pkg - camel.osgi.export.pkgorg.apache.camel.language.groovy.*,org.apache.camel.groovy.*/camel.osgi.export.pkg - camel.osgi.export.serviceorg.apache.camel.spi.LanguageResolver;language=groovy/camel.osgi.export.service +camel.osgi.import.pkg + !org.apache.camel.component.groovy.*, + org.codehaus.groovy.runtime.callsite, + org.apache.camel.*;${camel.osgi.import.camel.version}, + ${camel.osgi.import.defaults}, + * +/camel.osgi.import.pkg + camel.osgi.export.pkgorg.apache.camel.language.groovy.*,org.apache.camel.groovy.*/camel.osgi.export.pkg + camel.osgi.export.serviceorg.apache.camel.spi.LanguageResolver;language=groovy/camel.osgi.export.service /properties dependencies @@ -57,7 +58,7 @@ !-- testing -- dependency groupIdorg.apache.camel/groupId - artifactIdcamel-test-spring/artifactId + artifactIdcamel-test-spring/artifactId scopetest/scope /dependency dependency @@ -76,82 +77,82 @@ scopetest/scope /dependency /dependencies - + build pluginManagement -plugins - !-- Eclipse m2e Lifecycle Management -- - plugin -groupIdorg.eclipse.m2e/groupId -artifactIdlifecycle-mapping/artifactId -version${lifecycle-mapping-version}/version -configuration - lifecycleMappingMetadata -pluginExecutions - pluginExecution -pluginExecutionFilter - groupIdorg.apache.maven.plugins/groupId - artifactIdmaven-compiler-plugin/artifactId - versionRange${maven-compiler-plugin-version}/versionRange - goals -goalcompile/goal -goaltestCompile/goal - /goals -/pluginExecutionFilter -action - ignore / -/action - /pluginExecution -/pluginExecutions - /lifecycleMappingMetadata -/configuration - /plugin -/plugins + plugins +!-- Eclipse m2e Lifecycle Management -- +plugin + groupIdorg.eclipse.m2e/groupId + artifactIdlifecycle-mapping/artifactId + version${lifecycle-mapping-version}/version + configuration +lifecycleMappingMetadata + pluginExecutions +pluginExecution + pluginExecutionFilter +groupIdorg.apache.maven.plugins/groupId +artifactIdmaven-compiler-plugin/artifactId + versionRange${maven-compiler-plugin-version}/versionRange +
[3/4] camel git commit: CAMEL-8966: Add toD to scala-dsl
CAMEL-8966: Add toD to scala-dsl Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/bfd3ff0f Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/bfd3ff0f Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/bfd3ff0f Branch: refs/heads/master Commit: bfd3ff0f8b12dfedbe8ab2572c983730bbc31bc1 Parents: 90f7fec Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 13:07:21 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 13:07:21 2015 +0200 -- .../scala/org/apache/camel/scala/dsl/DSL.scala | 2 + .../camel/scala/dsl/SAbstractDefinition.scala | 2 + .../camel/scala/dsl/builder/RouteBuilder.scala | 2 + .../apache/camel/scala/dsl/ToDynamicTest.scala | 47 4 files changed, 53 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/bfd3ff0f/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/DSL.scala -- diff --git a/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/DSL.scala b/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/DSL.scala index cfce461..2e48581 100644 --- a/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/DSL.scala +++ b/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/DSL.scala @@ -105,6 +105,8 @@ trait DSL { def throwException(exception: Exception) : DSL def throwException(exceptionType: Class[_ : Exception], message: String) : DSL def to(uris: String*) : DSL + def toD(uri: String) : DSL + def toD(uri: String, ignoreInvalidEndpoint: Boolean) : DSL def transacted : DSL def transacted(ref: String) : DSL def transform(expression: Exchange = Any) : DSL http://git-wip-us.apache.org/repos/asf/camel/blob/bfd3ff0f/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAbstractDefinition.scala -- diff --git a/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAbstractDefinition.scala b/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAbstractDefinition.scala index 23914dd..7530227 100644 --- a/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAbstractDefinition.scala +++ b/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAbstractDefinition.scala @@ -174,5 +174,7 @@ abstract class SAbstractDefinition[P : ProcessorDefinition[_]] extends DSL with } this } + def toD(uri: String) = wrap(target.toD(uri)) + def toD(uri: String, ignoreInvalidEndpoint: Boolean) = wrap(target.toD(uri, ignoreInvalidEndpoint)) } http://git-wip-us.apache.org/repos/asf/camel/blob/bfd3ff0f/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala -- diff --git a/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala b/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala index 9faf2a4..cbaa426 100644 --- a/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala +++ b/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/builder/RouteBuilder.scala @@ -212,6 +212,8 @@ class RouteBuilder extends Preamble with DSL with RoutesBuilder with Languages w def wireTap(uri: String, expression: Exchange = Any) = stack.top.wireTap(uri, expression) def to(uris: String*) = stack.top.to(uris: _*) + def toD(uri: String) = stack.top.toD(uri) + def toD(uri: String, ignoreInvalidEndpoint: Boolean) = stack.top.toD(uri, ignoreInvalidEndpoint) def --(uris: String*) = stack.top.to(uris: _*) } http://git-wip-us.apache.org/repos/asf/camel/blob/bfd3ff0f/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/ToDynamicTest.scala -- diff --git a/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/ToDynamicTest.scala b/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/ToDynamicTest.scala new file mode 100644 index 000..ec3e8ba --- /dev/null +++ b/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/ToDynamicTest.scala @@ -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 + * + *
[1/4] camel git commit: CAMEL-8966: Added toD as a simpler dynamic to as people often need this, and today they must use recipientList.
Repository: camel Updated Branches: refs/heads/master 164022d25 - 56a06b014 CAMEL-8966: Added toD as a simpler dynamic to as people often need this, and today they must use recipientList. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/dfe2dae8 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/dfe2dae8 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/dfe2dae8 Branch: refs/heads/master Commit: dfe2dae8cdc61a51870ff25824a42fecd780a8b6 Parents: 164022d Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 11:23:27 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 11:54:26 2015 +0200 -- .../camel/impl/DefaultLanguageResolver.java | 2 + .../apache/camel/model/DynamicToDefinition.java | 186 + .../apache/camel/model/ProcessorDefinition.java | 33 ++- .../org/apache/camel/model/ToDefinition.java| 2 +- .../camel/processor/DynamicSendProcessor.java | 208 +++ .../apache/camel/processor/SendProcessor.java | 4 +- .../resources/org/apache/camel/model/jaxb.index | 1 + .../management/ManagedSendProcessorTest.java| 2 +- .../camel/processor/ToDynamicIgnoreTest.java| 53 + ...amicLanguageSimpleAndXPathAndHeaderTest.java | 44 .../ToDynamicLanguageSimpleAndXPathTest.java| 44 .../processor/ToDynamicLanguageXPathTest.java | 44 .../apache/camel/processor/ToDynamicTest.java | 55 + .../processor/SpringToDynamicIgnoreTest.java| 30 +++ ...amicLanguageSimpleAndXPathAndHeaderTest.java | 30 +++ ...ringToDynamicLanguageSimpleAndXPathTest.java | 30 +++ .../SpringToDynamicLanguageXPathTest.java | 31 +++ .../spring/processor/SpringToDynamicTest.java | 30 +++ .../processor/SpringToDynamicIgnoreTest.xml | 34 +++ ...namicLanguageSimpleAndXPathAndHeaderTest.xml | 34 +++ ...pringToDynamicLanguageSimpleAndXPathTest.xml | 34 +++ .../SpringToDynamicLanguageXPathTest.xml| 34 +++ .../spring/processor/SpringToDynamicTest.xml| 34 +++ 23 files changed, 993 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/dfe2dae8/camel-core/src/main/java/org/apache/camel/impl/DefaultLanguageResolver.java -- diff --git a/camel-core/src/main/java/org/apache/camel/impl/DefaultLanguageResolver.java b/camel-core/src/main/java/org/apache/camel/impl/DefaultLanguageResolver.java index 5201136..161e1d9 100644 --- a/camel-core/src/main/java/org/apache/camel/impl/DefaultLanguageResolver.java +++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultLanguageResolver.java @@ -87,6 +87,8 @@ public class DefaultLanguageResolver implements LanguageResolver { type = findLanguageResolver(default, context); } catch (NoFactoryAvailableException e) { // ignore +} catch (ClassNotFoundException e) { +// ignore } catch (Exception e) { throw new IllegalArgumentException(Invalid URI, no LanguageResolver registered for scheme: + name, e); } http://git-wip-us.apache.org/repos/asf/camel/blob/dfe2dae8/camel-core/src/main/java/org/apache/camel/model/DynamicToDefinition.java -- diff --git a/camel-core/src/main/java/org/apache/camel/model/DynamicToDefinition.java b/camel-core/src/main/java/org/apache/camel/model/DynamicToDefinition.java new file mode 100644 index 000..fc1a2f7 --- /dev/null +++ b/camel-core/src/main/java/org/apache/camel/model/DynamicToDefinition.java @@ -0,0 +1,186 @@ +/** + * 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.model; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlRootElement; + +import org.apache.camel.ExchangePattern; +import
[4/4] camel git commit: CAMEL-8966: Add test to groovy dsl
CAMEL-8966: Add test to groovy dsl Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/56a06b01 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/56a06b01 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/56a06b01 Branch: refs/heads/master Commit: 56a06b014332ca556827915a73c993b3d0c6b937 Parents: bfd3ff0 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 13:59:43 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 13:59:43 2015 +0200 -- .../camel/groovy/extend/CamelGroovyMethodsTest.groovy | 13 +++-- 1 file changed, 11 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/56a06b01/components/camel-groovy/src/test/groovy/org/apache/camel/groovy/extend/CamelGroovyMethodsTest.groovy -- diff --git a/components/camel-groovy/src/test/groovy/org/apache/camel/groovy/extend/CamelGroovyMethodsTest.groovy b/components/camel-groovy/src/test/groovy/org/apache/camel/groovy/extend/CamelGroovyMethodsTest.groovy index 76db6db..2766892 100644 --- a/components/camel-groovy/src/test/groovy/org/apache/camel/groovy/extend/CamelGroovyMethodsTest.groovy +++ b/components/camel-groovy/src/test/groovy/org/apache/camel/groovy/extend/CamelGroovyMethodsTest.groovy @@ -18,13 +18,11 @@ package org.apache.camel.groovy.extend import org.apache.camel.EndpointInject import org.apache.camel.Exchange -import org.apache.camel.ProducerTemplate import org.apache.camel.builder.RouteBuilder import org.apache.camel.component.mock.MockEndpoint import org.apache.camel.test.junit4.CamelTestSupport import org.junit.Test - /** * Test a few DSL extensions. */ @@ -126,6 +124,9 @@ class CamelGroovyMethodsTest extends CamelTestSupport { } .to('mock:test1') +from('direct:toD') +.toD('mock:${header.foo}') + } } @@ -232,4 +233,12 @@ class CamelGroovyMethodsTest extends CamelTestSupport { // The created XML differs in terms of white spaces and line feeds. assertEquals(text.replaceAll('\\s+', ''), resultEndpoint.exchanges[0].in.body.replaceAll('\\s+', '')) } + +@Test +void testToD() { +resultEndpoint.expectedMessageCount(1) +template.sendBodyAndHeader('direct:toD', WORLD, foo, test1) +resultEndpoint.assertIsSatisfied() +} + }
[2/4] camel git commit: CAMEL-8966: Add mbean for toD
CAMEL-8966: Add mbean for toD Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/90f7feca Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/90f7feca Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/90f7feca Branch: refs/heads/master Commit: 90f7feca932b6e7cf8bfc9dfade45913edffcae1 Parents: dfe2dae Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 12:09:18 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 12:09:18 2015 +0200 -- .../mbean/ManagedDynamicSendProcessorMBean.java | 35 .../DefaultManagementObjectStrategy.java| 4 + .../mbean/ManagedDynamicSendProcessor.java | 74 +++ .../apache/camel/model/DynamicToDefinition.java | 7 +- .../camel/processor/DynamicSendProcessor.java | 8 +- .../ManagedDynamicSendProcessorTest.java| 95 6 files changed, 219 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/90f7feca/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedDynamicSendProcessorMBean.java -- diff --git a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedDynamicSendProcessorMBean.java b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedDynamicSendProcessorMBean.java new file mode 100644 index 000..7482cb8 --- /dev/null +++ b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedDynamicSendProcessorMBean.java @@ -0,0 +1,35 @@ +/** + * 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.api.management.mbean; + +import org.apache.camel.api.management.ManagedAttribute; + +public interface ManagedDynamicSendProcessorMBean extends ManagedProcessorMBean { + +@ManagedAttribute(description = The uri of the endpoint to send to. The uri can be dynamic computed using the expressions., mask = true) +String getUri(); + +@ManagedAttribute(description = Message Exchange Pattern) +String getMessageExchangePattern(); + +@ManagedAttribute(description = Sets the maximum size used by the ProducerCacheN which is used to cache and reuse producers.) +Integer getCacheSize(); + +@ManagedAttribute(description = Ignore the invalidate endpoint exception when try to create a producer with that endpoint) +Boolean isIgnoreInvalidEndpoint(); + +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/90f7feca/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java -- diff --git a/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java b/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java index 76a169c..3832d1c 100644 --- a/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java +++ b/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java @@ -38,6 +38,7 @@ import org.apache.camel.management.mbean.ManagedCamelContext; import org.apache.camel.management.mbean.ManagedComponent; import org.apache.camel.management.mbean.ManagedConsumer; import org.apache.camel.management.mbean.ManagedDelayer; +import org.apache.camel.management.mbean.ManagedDynamicSendProcessor; import org.apache.camel.management.mbean.ManagedEndpoint; import org.apache.camel.management.mbean.ManagedErrorHandler; import org.apache.camel.management.mbean.ManagedEventNotifier; @@ -55,6 +56,7 @@ import org.apache.camel.management.mbean.ManagedThroughputLogger; import org.apache.camel.model.ModelCamelContext; import org.apache.camel.model.ProcessorDefinition; import org.apache.camel.processor.Delayer; +import org.apache.camel.processor.DynamicSendProcessor; import org.apache.camel.processor.ErrorHandler; import org.apache.camel.processor.SendProcessor; import
[13/14] camel git commit: [CAMEL-8948] Add synchronous CamelBlueprintTestSupport test
[CAMEL-8948] Add synchronous CamelBlueprintTestSupport test Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/7aa3b59d Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/7aa3b59d Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/7aa3b59d Branch: refs/heads/master Commit: 7aa3b59dd7718a47c0f5e4417419b28772ba067b Parents: 2e502fa Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Mon Jul 20 11:12:30 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:38 2015 +0200 -- .../test/blueprint/CamelBlueprintHelper.java| 3 -- .../blueprint/CamelBlueprintTestSupport.java| 17 +++- ...intWithSynchronousBlueprintCreationTest.java | 45 3 files changed, 61 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/7aa3b59d/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java index b517b29..ece0688 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java @@ -113,9 +113,6 @@ public final class CamelBlueprintHelper { String uid = + System.currentTimeMillis(); String tempDir = target/bundles/ + uid; System.setProperty(org.osgi.framework.storage, tempDir); -// explicitly set this to false - we will not depend on the order of starting bundles, -// (and running their BP containers) but we will have to do more synchornization -System.setProperty(org.apache.aries.blueprint.synchronous, false); createDirectory(tempDir); // use another directory for the jar of the bundle as it cannot be in the same directory http://git-wip-us.apache.org/repos/asf/camel/blob/7aa3b59d/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java index 88194ec..c7581e3 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java @@ -74,9 +74,24 @@ public abstract class CamelBlueprintTestSupport extends CamelTestSupport { return true; } - +/** + * pOverride this method if you want to start Blueprint containers asynchronously using the thread + * that starts the bundles itself. + * By default this method returns codetrue/code which means Blueprint Extender will use thread pool + * (threads named codeBlueprint Extender: N/code) to startup Blueprint containers./p + * pKaraf and Fuse OSGi containers use synchronous startup./p + * pAsynchronous startup is more in the emspirit/em of OSGi and usually means that if everything works fine + * asynchronously, it'll work synchronously as well. This isn't always true otherwise./p + * @return + */ +protected boolean useAsynchronousBlueprintStartup() { +return true; +} + @SuppressWarnings({rawtypes, unchecked}) protected BundleContext createBundleContext() throws Exception { +System.setProperty(org.apache.aries.blueprint.synchronous, Boolean.toString(!useAsynchronousBlueprintStartup())); + final String symbolicName = getClass().getSimpleName(); final BundleContext answer = CamelBlueprintHelper.createBundleContext(symbolicName, getBlueprintDescriptor(), includeTestBundle(), getBundleFilter(), getBundleVersion(), getBundleDirectives()); http://git-wip-us.apache.org/repos/asf/camel/blob/7aa3b59d/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminEndpointWithSynchronousBlueprintCreationTest.java -- diff --git a/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminEndpointWithSynchronousBlueprintCreationTest.java
[09/14] camel git commit: [CAMEL-8948] Move aries.proxy before aries.blueprint bundles for correct ordering
[CAMEL-8948] Move aries.proxy before aries.blueprint bundles for correct ordering Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/ab845909 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/ab845909 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/ab845909 Branch: refs/heads/master Commit: ab845909b0daac83509eaf5c38aca3f774c73a5d Parents: 3db8438 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Fri Jul 17 21:20:10 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- components/camel-test-blueprint/pom.xml | 20 ++-- tests/camel-itest-osgi/pom.xml | 12 +++- 2 files changed, 21 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/ab845909/components/camel-test-blueprint/pom.xml -- diff --git a/components/camel-test-blueprint/pom.xml b/components/camel-test-blueprint/pom.xml index 7588375..0da9002 100644 --- a/components/camel-test-blueprint/pom.xml +++ b/components/camel-test-blueprint/pom.xml @@ -58,6 +58,16 @@ !-- the ordering of the dependencies can matter as we load the dependencies from the classpath with felix-connect, and you may get a weird error if wrong order -- dependency +groupIdorg.apache.aries.proxy/groupId +artifactIdorg.apache.aries.proxy.api/artifactId +version${aries-blueprint-proxy-version}/version +/dependency +dependency +groupIdorg.apache.aries.proxy/groupId +artifactIdorg.apache.aries.proxy.impl/artifactId +version${aries-blueprint-proxy-impl-version}/version +/dependency +dependency groupIdorg.apache.aries.blueprint/groupId artifactIdorg.apache.aries.blueprint.api/artifactId /dependency @@ -75,16 +85,6 @@ version${aries-util-version}/version /dependency dependency -groupIdorg.apache.aries.proxy/groupId -artifactIdorg.apache.aries.proxy.impl/artifactId -version${aries-blueprint-proxy-impl-version}/version -/dependency -dependency -groupIdorg.apache.aries.proxy/groupId -artifactIdorg.apache.aries.proxy.api/artifactId -version${aries-blueprint-proxy-version}/version -/dependency -dependency groupIdorg.apache.felix/groupId artifactIdorg.apache.felix.connect/artifactId version${felix-connect-version}/version http://git-wip-us.apache.org/repos/asf/camel/blob/ab845909/tests/camel-itest-osgi/pom.xml -- diff --git a/tests/camel-itest-osgi/pom.xml b/tests/camel-itest-osgi/pom.xml index db8c104..2ec17bb 100644 --- a/tests/camel-itest-osgi/pom.xml +++ b/tests/camel-itest-osgi/pom.xml @@ -43,7 +43,17 @@ !-- blueprint -- dependency groupIdorg.apache.aries.blueprint/groupId - artifactIdorg.apache.aries.blueprint/artifactId + artifactIdorg.apache.aries.blueprint.api/artifactId + scopetest/scope +/dependency +dependency + groupIdorg.apache.aries.blueprint/groupId + artifactIdorg.apache.aries.blueprint.core/artifactId + scopetest/scope +/dependency +dependency + groupIdorg.apache.aries.blueprint/groupId + artifactIdorg.apache.aries.blueprint.cm/artifactId scopetest/scope /dependency
camel git commit: CAMEL-8966: Lets use better name
Repository: camel Updated Branches: refs/heads/master 28128d9f3 - d2ea9b510 CAMEL-8966: Lets use better name Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/d2ea9b51 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/d2ea9b51 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/d2ea9b51 Branch: refs/heads/master Commit: d2ea9b5102630d7b80c95b616acbad4b1ead1bfb Parents: 28128d9 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 14:42:36 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 14:42:36 2015 +0200 -- .../mbean/ManagedDynamicSendProcessorMBean.java | 35 --- .../mbean/ManagedSendDynamicProcessorMBean.java | 35 +++ .../DefaultManagementObjectStrategy.java| 8 +- .../mbean/ManagedDynamicSendProcessor.java | 74 --- .../mbean/ManagedSendDynamicProcessor.java | 74 +++ .../apache/camel/model/DynamicToDefinition.java | 187 .../apache/camel/model/ProcessorDefinition.java | 4 +- .../apache/camel/model/ToDynamicDefinition.java | 187 .../camel/processor/DynamicSendProcessor.java | 214 --- .../camel/processor/SendDynamicProcessor.java | 214 +++ .../apache/camel/processor/SendProcessor.java | 2 +- .../resources/org/apache/camel/model/jaxb.index | 2 +- .../ManagedDynamicSendProcessorTest.java| 95 .../ManagedSendDynamicProcessorTest.java| 95 14 files changed, 613 insertions(+), 613 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/d2ea9b51/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedDynamicSendProcessorMBean.java -- diff --git a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedDynamicSendProcessorMBean.java b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedDynamicSendProcessorMBean.java deleted file mode 100644 index 7482cb8..000 --- a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedDynamicSendProcessorMBean.java +++ /dev/null @@ -1,35 +0,0 @@ -/** - * 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.api.management.mbean; - -import org.apache.camel.api.management.ManagedAttribute; - -public interface ManagedDynamicSendProcessorMBean extends ManagedProcessorMBean { - -@ManagedAttribute(description = The uri of the endpoint to send to. The uri can be dynamic computed using the expressions., mask = true) -String getUri(); - -@ManagedAttribute(description = Message Exchange Pattern) -String getMessageExchangePattern(); - -@ManagedAttribute(description = Sets the maximum size used by the ProducerCacheN which is used to cache and reuse producers.) -Integer getCacheSize(); - -@ManagedAttribute(description = Ignore the invalidate endpoint exception when try to create a producer with that endpoint) -Boolean isIgnoreInvalidEndpoint(); - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/d2ea9b51/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java -- diff --git a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java new file mode 100644 index 000..e1071ceb --- /dev/null +++ b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java @@ -0,0 +1,35 @@ +/** + * 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
[07/14] camel git commit: [CAMEL-8984] Explicitly start OsgiCamelContextPublisher, it didn't unregister OSGi service
[CAMEL-8984] Explicitly start OsgiCamelContextPublisher, it didn't unregister OSGi service Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/9aa1ab93 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/9aa1ab93 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/9aa1ab93 Branch: refs/heads/master Commit: 9aa1ab935a24f210a8592e08a34fc6cc5ed10eea Parents: ab84590 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Mon Jul 20 10:22:21 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- .../camel/blueprint/CamelContextFactoryBean.java | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/9aa1ab93/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java -- diff --git a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java index 2ae5729..1cdcf19 100644 --- a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java +++ b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/CamelContextFactoryBean.java @@ -179,6 +179,8 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBeanBlu private BundleContext bundleContext; @XmlTransient private boolean implicitId; +@XmlTransient +private OsgiCamelContextPublisher osgiCamelContextPublisher; public ClassBlueprintCamelContext getObjectType() { return BlueprintCamelContext.class; @@ -301,7 +303,9 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBeanBlu ClassLoader cl = new BundleDelegatingClassLoader(bundleContext.getBundle()); LOG.debug(Set the application context classloader to: {}, cl); getContext().setApplicationContextClassLoader(cl); -getContext().getManagementStrategy().addEventNotifier(new OsgiCamelContextPublisher(bundleContext)); +osgiCamelContextPublisher = new OsgiCamelContextPublisher(bundleContext); +osgiCamelContextPublisher.start(); + getContext().getManagementStrategy().addEventNotifier(osgiCamelContextPublisher); try { getClass().getClassLoader().loadClass(org.osgi.service.event.EventAdmin); getContext().getManagementStrategy().addEventNotifier(new OsgiEventAdminNotifier(bundleContext)); @@ -313,6 +317,14 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBeanBlu setupRoutes(); } +@Override +public void destroy() throws Exception { +super.destroy(); +if (osgiCamelContextPublisher != null) { +osgiCamelContextPublisher.shutdown(); +} +} + public String getDependsOn() { return dependsOn; }
[10/14] camel git commit: Fixed CS
Fixed CS Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/14a7dd79 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/14a7dd79 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/14a7dd79 Branch: refs/heads/master Commit: 14a7dd79148f9306dcd2f748b56fd6550e9406ab Parents: 7aa3b59 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Mon Jul 20 14:51:28 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:38 2015 +0200 -- .../apache/camel/cdi/CdiBeanManagerHelper.java | 3 + .../http/HttpGetHeadersNotCopiedTest.java | 5 +- .../http4/HttpCamelHeadersNotCopiedTest.java| 10 +-- .../CamelSpringBootApplicationController.java | 4 +- .../test/blueprint/CamelBlueprintHelper.java| 4 +- .../blueprint/CamelBlueprintTestSupport.java| 10 +-- .../component/undertow/UndertowProducer.java| 3 +- .../maven/packaging/PackageDataFormatMojo.java | 64 +++- .../maven/packaging/PackageLanguageMojo.java| 64 +++- 9 files changed, 92 insertions(+), 75 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/14a7dd79/components/camel-cdi/src/main/java/org/apache/camel/cdi/CdiBeanManagerHelper.java -- diff --git a/components/camel-cdi/src/main/java/org/apache/camel/cdi/CdiBeanManagerHelper.java b/components/camel-cdi/src/main/java/org/apache/camel/cdi/CdiBeanManagerHelper.java index 312e90a..91ecbd3 100644 --- a/components/camel-cdi/src/main/java/org/apache/camel/cdi/CdiBeanManagerHelper.java +++ b/components/camel-cdi/src/main/java/org/apache/camel/cdi/CdiBeanManagerHelper.java @@ -26,6 +26,9 @@ import javax.enterprise.inject.spi.BeanManager; */ public final class CdiBeanManagerHelper { +private CdiBeanManagerHelper() { +} + /** * To lookup a bean by a type */ http://git-wip-us.apache.org/repos/asf/camel/blob/14a7dd79/components/camel-http/src/test/java/org/apache/camel/component/http/HttpGetHeadersNotCopiedTest.java -- diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpGetHeadersNotCopiedTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpGetHeadersNotCopiedTest.java index cf24c4d..aae01db 100644 --- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpGetHeadersNotCopiedTest.java +++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpGetHeadersNotCopiedTest.java @@ -16,11 +16,10 @@ */ package org.apache.camel.component.http; -import org.apache.camel.builder.RouteBuilder; -import org.junit.Before; - import java.util.Map; +import org.apache.camel.builder.RouteBuilder; + public class HttpGetHeadersNotCopiedTest extends HttpGetWithHeadersTest { @Override http://git-wip-us.apache.org/repos/asf/camel/blob/14a7dd79/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpCamelHeadersNotCopiedTest.java -- diff --git a/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpCamelHeadersNotCopiedTest.java b/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpCamelHeadersNotCopiedTest.java index fa80631..4268767 100644 --- a/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpCamelHeadersNotCopiedTest.java +++ b/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpCamelHeadersNotCopiedTest.java @@ -5,9 +5,9 @@ * 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 - * p/ - * http://www.apache.org/licenses/LICENSE-2.0 - * p/ + * + * 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. @@ -16,11 +16,11 @@ */ package org.apache.camel.component.http4; +import java.util.Map; + import org.apache.camel.Exchange; import org.apache.http.HttpStatus; -import java.util.Map; - public class HttpCamelHeadersNotCopiedTest extends HttpCamelHeadersTest { @Override http://git-wip-us.apache.org/repos/asf/camel/blob/14a7dd79/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/CamelSpringBootApplicationController.java -- diff --git
[08/14] camel git commit: Remove references to PojoSR
Remove references to PojoSR Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/3db84387 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/3db84387 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/3db84387 Branch: refs/heads/master Commit: 3db84387a1a0f2d4620603abbd91f183a8754a2a Parents: aa37931 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Fri Jul 17 21:11:25 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- components/camel-test-blueprint/pom.xml | 2 +- .../org/apache/camel/test/blueprint/CamelBlueprintHelper.java| 4 ++-- .../apache/camel/test/blueprint/CamelBlueprintTestSupport.java | 2 +- .../camel-test-blueprint/src/test/resources/log4j.properties | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/3db84387/components/camel-test-blueprint/pom.xml -- diff --git a/components/camel-test-blueprint/pom.xml b/components/camel-test-blueprint/pom.xml index e555777..7588375 100644 --- a/components/camel-test-blueprint/pom.xml +++ b/components/camel-test-blueprint/pom.xml @@ -56,7 +56,7 @@ /dependency !-- the ordering of the dependencies can matter as we load the dependencies from the classpath - with pojosr, and you may get a weird error if wrong order -- + with felix-connect, and you may get a weird error if wrong order -- dependency groupIdorg.apache.aries.blueprint/groupId artifactIdorg.apache.aries.blueprint.api/artifactId http://git-wip-us.apache.org/repos/asf/camel/blob/3db84387/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java index 2eea106..42592c3 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java @@ -103,7 +103,7 @@ public final class CamelBlueprintHelper { } public static BundleContext createBundleContext(String name, String bundleFilter, TinyBundle bundle) throws Exception { -// ensure pojosr stores bundles in an unique target directory +// ensure felix-connect stores bundles in an unique target directory String uid = + System.currentTimeMillis(); String tempDir = target/bundles/ + uid; System.setProperty(org.osgi.framework.storage, tempDir); @@ -129,7 +129,7 @@ public final class CamelBlueprintHelper { } } -// setup pojosr to use our bundles +// setup felix-connect to use our bundles MapString, Object config = new HashMapString, Object(); config.put(PojoServiceRegistryFactory.BUNDLE_DESCRIPTORS, bundles); http://git-wip-us.apache.org/repos/asf/camel/blob/3db84387/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java index a49b848..1bc22a5 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java @@ -162,7 +162,7 @@ public abstract class CamelBlueprintTestSupport extends CamelTestSupport { ConfigurationAdmin configAdmin = CamelBlueprintHelper.getOsgiService(answer, ConfigurationAdmin.class); // passing null as second argument ties the configuration to correct bundle. // using single-arg method causes: -// *ERROR* Cannot use configuration xxx.properties for [org.osgi.service.cm.ManagedService, id=N, bundle=N/jar:file:xyz.jar!/]: No visibility to configuration bound to file:pojosr +// *ERROR* Cannot use configuration xxx.properties for [org.osgi.service.cm.ManagedService, id=N, bundle=N/jar:file:xyz.jar!/]: No visibility to configuration bound to felix-connect Configuration config = configAdmin.getConfiguration(pid, null);
[14/14] camel git commit: [CAMEL-8948] Use property-placeholder/@update-strategy=reload in tests which require reload of BP container
[CAMEL-8948] Use property-placeholder/@update-strategy=reload in tests which require reload of BP container Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/21309c04 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/21309c04 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/21309c04 Branch: refs/heads/master Commit: 21309c048e35c8eba0d482873e14d47974189456 Parents: a7d325b Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Mon Jul 20 09:45:43 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:38 2015 +0200 -- .../camel/test/blueprint/BlueprintPropertiesTest.java | 2 ++ .../apache/camel/test/blueprint/configadmin-loadfile.xml | 6 +++--- .../camel/test/blueprint/configadmin-loadfileoverride.xml | 10 +++--- .../apache/camel/test/blueprint/configadmin-outside.xml | 6 +++--- .../org/apache/camel/test/blueprint/main-loadfile.xml | 6 +++--- 5 files changed, 18 insertions(+), 12 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/21309c04/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/BlueprintPropertiesTest.java -- diff --git a/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/BlueprintPropertiesTest.java b/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/BlueprintPropertiesTest.java index 857959d..09ccc35 100644 --- a/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/BlueprintPropertiesTest.java +++ b/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/BlueprintPropertiesTest.java @@ -19,6 +19,7 @@ package org.apache.camel.test.blueprint; import org.junit.Test; import org.osgi.framework.Bundle; import org.osgi.service.blueprint.container.BlueprintContainer; +import org.osgi.service.blueprint.container.BlueprintEvent; /** * @@ -49,6 +50,7 @@ public class BlueprintPropertiesTest extends CamelBlueprintTestSupport { } camelCore.start(); +CamelBlueprintHelper.waitForBlueprintContainer(null, test.getBundleContext(), getClass().getSimpleName(), BlueprintEvent.CREATED, null); getOsgiService(BlueprintContainer.class, (osgi.blueprint.container.symbolicname= + getClass().getSimpleName() + ), 500); } http://git-wip-us.apache.org/repos/asf/camel/blob/21309c04/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/configadmin-loadfile.xml -- diff --git a/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/configadmin-loadfile.xml b/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/configadmin-loadfile.xml index b0726cd..85659d8 100644 --- a/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/configadmin-loadfile.xml +++ b/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/configadmin-loadfile.xml @@ -17,14 +17,14 @@ -- blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; - xmlns:cm=http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0; + xmlns:cm=http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0; xsi:schemaLocation= - http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0 http://aries.apache.org/schemas/blueprint-cm/blueprint-cm-1.0.0.xsd + http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0 http://aries.apache.org/schemas/blueprint-cm/blueprint-cm-1.1.0.xsd http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd; !-- START SNIPPET: e1 -- !-- blueprint property placeholders, that will use etc/stuff.cfg as the properties file -- - cm:property-placeholder persistent-id=stuff/ + cm:property-placeholder persistent-id=stuff update-strategy=reload/ !-- a bean that uses a blueprint property placeholder -- bean id=myCoolBean class=org.apache.camel.test.blueprint.MyCoolBean http://git-wip-us.apache.org/repos/asf/camel/blob/21309c04/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/configadmin-loadfileoverride.xml -- diff --git a/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/configadmin-loadfileoverride.xml b/components/camel-test-blueprint/src/test/resources/org/apache/camel/test/blueprint/configadmin-loadfileoverride.xml index cd72116..c9e45d3 100644 ---
[12/14] camel git commit: [CAMEL-8948] Downgrade to aries.blueprint.cm-1.0.6. 1.0.7 has one timing issue
[CAMEL-8948] Downgrade to aries.blueprint.cm-1.0.6. 1.0.7 has one timing issue Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a7d325b5 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a7d325b5 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a7d325b5 Branch: refs/heads/master Commit: a7d325b5723d8e8116449940e86e20c689678319 Parents: 9b6737b Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Mon Jul 20 09:44:00 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:38 2015 +0200 -- parent/pom.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/a7d325b5/parent/pom.xml -- diff --git a/parent/pom.xml b/parent/pom.xml index 0e52ca5..9f7455b 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -45,7 +45,7 @@ apache-gora-version0.4/apache-gora-version apache-mime4j-version0.7.2/apache-mime4j-version aries-blueprint-api-version1.0.1/aries-blueprint-api-version -aries-blueprint-cm-version1.0.7/aries-blueprint-cm-version +aries-blueprint-cm-version1.0.6/aries-blueprint-cm-version aries-blueprint-core-version1.4.4/aries-blueprint-core-version aries-blueprint-proxy-version1.0.1/aries-blueprint-proxy-version aries-blueprint-proxy-impl-version1.0.4/aries-blueprint-proxy-impl-version @@ -3145,6 +3145,7 @@ /goals configuration stricttrue/strict + skiptrue/skip /configuration /execution /executions
[11/14] camel git commit: [CAMEL-8948] Add CamelBlueprintTestSupport tests for update-strategy=none
[CAMEL-8948] Add CamelBlueprintTestSupport tests for update-strategy=none Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/2e502fa0 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/2e502fa0 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/2e502fa0 Branch: refs/heads/master Commit: 2e502fa02699bc0808179a1f755ed160987d2091 Parents: 21309c0 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Mon Jul 20 11:05:34 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:38 2015 +0200 -- ...oadLoadConfigurationFileAndOverrideTest.java | 65 ...gAdminNoReloadLoadConfigurationFileTest.java | 51 +++ ...erridePropertiesOutsideCamelContextTest.java | 57 + .../configadmin-no-reload-loadfile.xml | 45 ++ .../configadmin-no-reload-loadfileoverride.xml | 54 .../blueprint/configadmin-no-reload-outside.xml | 50 +++ 6 files changed, 322 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/2e502fa0/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminNoReloadLoadConfigurationFileAndOverrideTest.java -- diff --git a/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminNoReloadLoadConfigurationFileAndOverrideTest.java b/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminNoReloadLoadConfigurationFileAndOverrideTest.java new file mode 100644 index 000..9f7faaa --- /dev/null +++ b/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminNoReloadLoadConfigurationFileAndOverrideTest.java @@ -0,0 +1,65 @@ +/** + * 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.test.blueprint; + +import java.util.Dictionary; + +import org.junit.Test; + +// START SNIPPET: e1 + +/** + * This example will load a Blueprint .cfg file, and also override its property placeholders from this unit test + * source code directly. + * But having codeupdate-strategy=none/code means that BP container won't be reloaded + */ +public class ConfigAdminNoReloadLoadConfigurationFileAndOverrideTest extends CamelBlueprintTestSupport { + +@Override +protected String getBlueprintDescriptor() { +// which blueprint XML file to use for this test +return org/apache/camel/test/blueprint/configadmin-no-reload-loadfileoverride.xml; +} + +@Override +protected String[] loadConfigAdminConfigurationFile() { +// which .cfg file to use, and the name of the persistence-id +return new String[]{src/test/resources/etc/stuff.cfg, stuff}; +} + +@Override +protected String useOverridePropertiesWithConfigAdmin(Dictionary props) throws Exception { +// override / add extra properties +props.put(destination, mock:extra); + +// return the persistence-id to use +return stuff; +} + +@Test +public void testConfigAdmin() throws Exception { +// regular unit test method +getMockEndpoint(mock:original).expectedBodiesReceived(Hello World, Hey Hello WorldHey Hello World); +getMockEndpoint(mock:extra).setExpectedMessageCount(0); + +template.sendBody(direct:start, World); + +assertMockEndpointsSatisfied(); +} + +} +// END SNIPPET: e1 http://git-wip-us.apache.org/repos/asf/camel/blob/2e502fa0/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminNoReloadLoadConfigurationFileTest.java -- diff --git a/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminNoReloadLoadConfigurationFileTest.java b/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminNoReloadLoadConfigurationFileTest.java new file mode 100644 index
[05/14] camel git commit: [camel-test-blueprint] Ensure loadConfigAdminConfigurationFile() provided file is valid
[camel-test-blueprint] Ensure loadConfigAdminConfigurationFile() provided file is valid Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/7fba34a9 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/7fba34a9 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/7fba34a9 Branch: refs/heads/master Commit: 7fba34a9a5de8ece63e0fae23eccc64090f8491a Parents: dc23d6a Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Fri Jul 10 15:01:24 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- .../blueprint/CamelBlueprintTestSupport.java| 4 ++ ...gAdminLoadConfigurationFileNotFoundTest.java | 57 2 files changed, 61 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/7fba34a9/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java index d707370..a49b848 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java @@ -16,6 +16,7 @@ */ package org.apache.camel.test.blueprint; +import java.io.File; import java.util.Dictionary; import java.util.LinkedHashMap; import java.util.LinkedHashSet; @@ -111,6 +112,9 @@ public abstract class CamelBlueprintTestSupport extends CamelTestSupport { } if (file != null) { +if (!new File(file[0]).exists()) { +throw new IllegalArgumentException(The provided file \ + file[0] + \ from loadConfigAdminConfigurationFile doesn't exist); +} CamelBlueprintHelper.setPersistentFileForConfigAdmin(answer, file[1], file[0], props); } http://git-wip-us.apache.org/repos/asf/camel/blob/7fba34a9/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminLoadConfigurationFileNotFoundTest.java -- diff --git a/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminLoadConfigurationFileNotFoundTest.java b/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminLoadConfigurationFileNotFoundTest.java new file mode 100644 index 000..2f6d465 --- /dev/null +++ b/components/camel-test-blueprint/src/test/java/org/apache/camel/test/blueprint/ConfigAdminLoadConfigurationFileNotFoundTest.java @@ -0,0 +1,57 @@ +/** + * 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.test.blueprint; + +import org.junit.Test; +import org.osgi.framework.BundleContext; + +/** + * + */ +public class ConfigAdminLoadConfigurationFileNotFoundTest extends CamelBlueprintTestSupport { + +@Override +protected String getBlueprintDescriptor() { +return org/apache/camel/test/blueprint/configadmin-loadfile.xml; +} + +@Override +public void setUp() throws Exception { +try { +super.setUp(); +fail(Should throw IllegalArgumentException, because the config file wasn't found); +} catch (IllegalArgumentException e) { + assertTrue(e.getMessage().contains(../../src/test/resources/etc/stuff.cfg)); +} +} + +// START SNIPPET: e1 +@Override +protected String[] loadConfigAdminConfigurationFile() { +// String[0] = tell Camel the path of the .cfg file to use for OSGi ConfigAdmin in the blueprint XML file +// this file should exist +// String[1] = tell Camel the persistence-id of the cm:property-placeholder in the blueprint XML file +return new
[03/14] camel git commit: [CAMEL-8948] More reliable CamelBlueprintTestSupport tests - always wait for BlueprintEvent.CREATED
[CAMEL-8948] More reliable CamelBlueprintTestSupport tests - always wait for BlueprintEvent.CREATED Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/dc23d6a4 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/dc23d6a4 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/dc23d6a4 Branch: refs/heads/master Commit: dc23d6a458a6abd4c633586af6048ee03c09cf71 Parents: d2ea9b5 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Fri Jul 10 15:00:10 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- .../test/blueprint/CamelBlueprintHelper.java| 3 ++- .../blueprint/CamelBlueprintTestSupport.java| 20 2 files changed, 18 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/dc23d6a4/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java index 88f4d4a..2eea106 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java @@ -185,7 +185,8 @@ public final class CamelBlueprintHelper { .getOsgiService(bundleContext, ConfigurationAdmin.class); if (configAdmin != null) { // ensure we update -Configuration config = configAdmin.getConfiguration(pid); +// we *have to* use null as 2nd arg to have correct bundle location for Configuration object +Configuration config = configAdmin.getConfiguration(pid, null); LOG.info(Updating ConfigAdmin {} by overriding properties {}, config, props); config.update(props); } http://git-wip-us.apache.org/repos/asf/camel/blob/dc23d6a4/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java index a6b861c..d707370 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java @@ -167,6 +167,19 @@ public abstract class CamelBlueprintTestSupport extends CamelTestSupport { config.update(props); latch.await(CamelBlueprintHelper.DEFAULT_TIMEOUT, TimeUnit.MILLISECONDS); +} else { +// let's wait for BP container to start +final CountDownLatch latch = new CountDownLatch(1); +answer.registerService(BlueprintListener.class, new BlueprintListener() { +@Override +public void blueprintEvent(BlueprintEvent event) { +if (event.getType() == BlueprintEvent.CREATED event.getBundle().getSymbolicName().equals(symbolicName)) { +latch.countDown(); +} +} +}, null); + +latch.await(CamelBlueprintHelper.DEFAULT_TIMEOUT, TimeUnit.MILLISECONDS); } return answer; @@ -192,13 +205,12 @@ public abstract class CamelBlueprintTestSupport extends CamelTestSupport { super.setUp(); +// we don't have to wait for BP container's OSGi service - we've already waited +// for BlueprintEvent.CREATED + // start context when we are ready log.debug(Staring CamelContext: {}, context.getName()); context.start(); - -// must wait for blueprint container to be published then the namespace parser is complete and we are ready for testing -log.debug(Waiting for BlueprintContainer to be published with symbolicName: {}, symbolicName); -getOsgiService(BlueprintContainer.class, (osgi.blueprint.container.symbolicname= + symbolicName + )); } /**
[02/14] camel git commit: [CAMEL-8948] Precise synchronization with BP container of the test bundle
[CAMEL-8948] Precise synchronization with BP container of the test bundle Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/692e479b Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/692e479b Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/692e479b Branch: refs/heads/master Commit: 692e479b940b1198df3cec386c16aa4fd071e16c Parents: 9aa1ab9 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Fri Jul 17 21:40:16 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- .../test/blueprint/CamelBlueprintHelper.java| 52 ++- .../blueprint/CamelBlueprintTestSupport.java| 91 +++- .../org/apache/camel/test/blueprint/Main.java | 3 +- 3 files changed, 82 insertions(+), 64 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/692e479b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java index 42592c3..4e84211 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java @@ -35,6 +35,9 @@ import java.util.Iterator; import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.Set; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.TimeUnit; import java.util.jar.JarInputStream; import org.apache.camel.impl.DefaultClassResolver; @@ -58,6 +61,9 @@ import org.osgi.framework.Filter; import org.osgi.framework.FrameworkUtil; import org.osgi.framework.InvalidSyntaxException; import org.osgi.framework.ServiceReference; +import org.osgi.framework.ServiceRegistration; +import org.osgi.service.blueprint.container.BlueprintEvent; +import org.osgi.service.blueprint.container.BlueprintListener; import org.osgi.service.cm.Configuration; import org.osgi.service.cm.ConfigurationAdmin; import org.osgi.util.tracker.ServiceTracker; @@ -107,6 +113,9 @@ public final class CamelBlueprintHelper { String uid = + System.currentTimeMillis(); String tempDir = target/bundles/ + uid; System.setProperty(org.osgi.framework.storage, tempDir); +// explicitly set this to false - we will not depend on the order of starting bundles, +// (and running their BP containers) but we will have to do more synchornization +System.setProperty(org.apache.aries.blueprint.synchronous, false); createDirectory(tempDir); // use another directory for the jar of the bundle as it cannot be in the same directory @@ -169,7 +178,8 @@ public final class CamelBlueprintHelper { // pick up persistent file configuration @SuppressWarnings({unchecked, rawtypes}) public static void setPersistentFileForConfigAdmin(BundleContext bundleContext, String pid, - String fileName, Dictionary props) throws IOException { + String fileName, final Dictionary props, + String symbolicName, SetLong bpEvents) throws IOException, InterruptedException { if (pid != null) { if (fileName == null) { throw new IllegalArgumentException(The persistent file should not be null); @@ -186,9 +196,20 @@ public final class CamelBlueprintHelper { if (configAdmin != null) { // ensure we update // we *have to* use null as 2nd arg to have correct bundle location for Configuration object -Configuration config = configAdmin.getConfiguration(pid, null); +final Configuration config = configAdmin.getConfiguration(pid, null); LOG.info(Updating ConfigAdmin {} by overriding properties {}, config, props); -config.update(props); +// we will have update and in consequence, BP container reload, let's wait for it to +// be CREATED again +CamelBlueprintHelper.waitForBlueprintContainer(bpEvents, bundleContext, symbolicName, BlueprintEvent.CREATED, new Runnable() { +@Override +public void run() { +try { +config.update(props); +
[01/14] camel git commit: [CAMEL-8948] CamelBlueprintTestSupport detects if BP container will be reloaded and syncs with the reload
Repository: camel Updated Branches: refs/heads/master d2ea9b510 - 14a7dd791 [CAMEL-8948] CamelBlueprintTestSupport detects if BP container will be reloaded and syncs with the reload Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/9b6737bd Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/9b6737bd Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/9b6737bd Branch: refs/heads/master Commit: 9b6737bd904bc2ec893060d8fe50494f0713fa27 Parents: 692e479 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Mon Jul 20 09:43:09 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- .../test/blueprint/CamelBlueprintHelper.java| 27 --- .../blueprint/CamelBlueprintTestSupport.java| 75 +--- .../org/apache/camel/test/blueprint/Main.java | 7 +- 3 files changed, 87 insertions(+), 22 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/9b6737bd/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java index 4e84211..b517b29 100644 --- a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java +++ b/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintHelper.java @@ -179,7 +179,8 @@ public final class CamelBlueprintHelper { @SuppressWarnings({unchecked, rawtypes}) public static void setPersistentFileForConfigAdmin(BundleContext bundleContext, String pid, String fileName, final Dictionary props, - String symbolicName, SetLong bpEvents) throws IOException, InterruptedException { + String symbolicName, SetLong bpEvents, + boolean expectReload) throws IOException, InterruptedException { if (pid != null) { if (fileName == null) { throw new IllegalArgumentException(The persistent file should not be null); @@ -198,18 +199,22 @@ public final class CamelBlueprintHelper { // we *have to* use null as 2nd arg to have correct bundle location for Configuration object final Configuration config = configAdmin.getConfiguration(pid, null); LOG.info(Updating ConfigAdmin {} by overriding properties {}, config, props); -// we will have update and in consequence, BP container reload, let's wait for it to +// we may have update and in consequence, BP container reload, let's wait for it to // be CREATED again -CamelBlueprintHelper.waitForBlueprintContainer(bpEvents, bundleContext, symbolicName, BlueprintEvent.CREATED, new Runnable() { -@Override -public void run() { -try { -config.update(props); -} catch (IOException e) { -throw new RuntimeException(e.getMessage(), e); +if (expectReload) { + CamelBlueprintHelper.waitForBlueprintContainer(bpEvents, bundleContext, symbolicName, BlueprintEvent.CREATED, new Runnable() { +@Override +public void run() { +try { +config.update(props); +} catch (IOException e) { +throw new RuntimeException(e.getMessage(), e); +} } -} -}); +}); +} else { +config.update(props); +} } } http://git-wip-us.apache.org/repos/asf/camel/blob/9b6737bd/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java -- diff --git a/components/camel-test-blueprint/src/main/java/org/apache/camel/test/blueprint/CamelBlueprintTestSupport.java
[04/14] camel git commit: [CAMEL-8948] Replace old aggregate Aries BP bundle with correct bundles (api, core, cm)
[CAMEL-8948] Replace old aggregate Aries BP bundle with correct bundles (api, core, cm) Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/c52c9196 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/c52c9196 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/c52c9196 Branch: refs/heads/master Commit: c52c9196afe80f333f2be384463466c7ddf2272f Parents: 7fba34a Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Fri Jul 10 15:02:37 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- components/camel-cxf/pom.xml| 2 +- components/camel-test-blueprint/pom.xml | 11 +-- parent/pom.xml | 18 -- platforms/karaf/features/pom.xml| 7 ++- 4 files changed, 28 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/c52c9196/components/camel-cxf/pom.xml -- diff --git a/components/camel-cxf/pom.xml b/components/camel-cxf/pom.xml index ae34eee..fab4458 100644 --- a/components/camel-cxf/pom.xml +++ b/components/camel-cxf/pom.xml @@ -145,7 +145,7 @@ /dependency dependency groupIdorg.apache.aries.blueprint/groupId - artifactIdorg.apache.aries.blueprint/artifactId + artifactIdorg.apache.aries.blueprint.core/artifactId scopeprovided/scope /dependency http://git-wip-us.apache.org/repos/asf/camel/blob/c52c9196/components/camel-test-blueprint/pom.xml -- diff --git a/components/camel-test-blueprint/pom.xml b/components/camel-test-blueprint/pom.xml index e80a759..e555777 100644 --- a/components/camel-test-blueprint/pom.xml +++ b/components/camel-test-blueprint/pom.xml @@ -57,10 +57,17 @@ !-- the ordering of the dependencies can matter as we load the dependencies from the classpath with pojosr, and you may get a weird error if wrong order -- -!-- yes this is correct to use aries.blueprint as dependency (as it has all the pieces needed by pojosr) and use the core-version -- dependency groupIdorg.apache.aries.blueprint/groupId -artifactIdorg.apache.aries.blueprint/artifactId +artifactIdorg.apache.aries.blueprint.api/artifactId +/dependency +dependency +groupIdorg.apache.aries.blueprint/groupId +artifactIdorg.apache.aries.blueprint.core/artifactId +/dependency +dependency +groupIdorg.apache.aries.blueprint/groupId +artifactIdorg.apache.aries.blueprint.cm/artifactId /dependency dependency groupIdorg.apache.aries/groupId http://git-wip-us.apache.org/repos/asf/camel/blob/c52c9196/parent/pom.xml -- diff --git a/parent/pom.xml b/parent/pom.xml index e39986b..367d2d7 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -44,10 +44,11 @@ apacheds-version2.0.0-M20/apacheds-version apache-gora-version0.4/apache-gora-version apache-mime4j-version0.7.2/apache-mime4j-version -aries-blueprint-api-version1.0.0/aries-blueprint-api-version -aries-blueprint-core-version1.1.0/aries-blueprint-core-version -aries-blueprint-proxy-version1.0.0/aries-blueprint-proxy-version - aries-blueprint-proxy-impl-version1.0.1/aries-blueprint-proxy-impl-version +aries-blueprint-api-version1.0.1/aries-blueprint-api-version +aries-blueprint-cm-version1.0.6/aries-blueprint-cm-version +aries-blueprint-core-version1.4.3/aries-blueprint-core-version +aries-blueprint-proxy-version1.0.1/aries-blueprint-proxy-version + aries-blueprint-proxy-impl-version1.0.4/aries-blueprint-proxy-impl-version aries-util-version1.1.0/aries-util-version arquillian-junit-container-version1.1.8.Final/arquillian-junit-container-version arquillian-weld-se-embedded-version1.0.0.CR8/arquillian-weld-se-embedded-version @@ -2614,14 +2615,19 @@ !-- blueprint -- dependency groupIdorg.apache.aries.blueprint/groupId -artifactIdorg.apache.aries.blueprint/artifactId -version${aries-blueprint-core-version}/version +artifactIdorg.apache.aries.blueprint.api/artifactId +version${aries-blueprint-api-version}/version /dependency dependency groupIdorg.apache.aries.blueprint/groupId artifactIdorg.apache.aries.blueprint.core/artifactId version${aries-blueprint-core-version}/version /dependency + dependency +groupIdorg.apache.aries.blueprint/groupId +artifactIdorg.apache.aries.blueprint.cm/artifactId +
[06/14] camel git commit: [CAMEL-8948] Upgrade to blueprint-core-1.4.4 with fixed NS handler registration
[CAMEL-8948] Upgrade to blueprint-core-1.4.4 with fixed NS handler registration Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/aa379312 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/aa379312 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/aa379312 Branch: refs/heads/master Commit: aa3793121b6778a5053650c355fe2bdb0644f4a1 Parents: c52c919 Author: Grzegorz Grzybek gr.grzy...@gmail.com Authored: Fri Jul 17 08:09:29 2015 +0200 Committer: Grzegorz Grzybek gr.grzy...@gmail.com Committed: Mon Jul 20 14:51:37 2015 +0200 -- parent/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/aa379312/parent/pom.xml -- diff --git a/parent/pom.xml b/parent/pom.xml index 367d2d7..0e52ca5 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -45,8 +45,8 @@ apache-gora-version0.4/apache-gora-version apache-mime4j-version0.7.2/apache-mime4j-version aries-blueprint-api-version1.0.1/aries-blueprint-api-version -aries-blueprint-cm-version1.0.6/aries-blueprint-cm-version -aries-blueprint-core-version1.4.3/aries-blueprint-core-version +aries-blueprint-cm-version1.0.7/aries-blueprint-cm-version +aries-blueprint-core-version1.4.4/aries-blueprint-core-version aries-blueprint-proxy-version1.0.1/aries-blueprint-proxy-version aries-blueprint-proxy-impl-version1.0.4/aries-blueprint-proxy-impl-version aries-util-version1.1.0/aries-util-version
buildbot success in ASF Buildbot on camel-site-production
The Buildbot has detected a restored build on builder camel-site-production while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/camel-site-production/builds/488 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-cms-slave Build Reason: The Nightly scheduler named 'camel-site-production' triggered this build Build Source Stamp: [branch camel/website] HEAD Blamelist: Build succeeded! Sincerely, -The Buildbot
svn commit: r959028 [3/4] - in /websites/production/camel/content: book-in-one-page.html book-pattern-appendix.html cache/main.pageCache camel-2160-release.html how-to-use-a-dynamic-uri-in-to.html mes
Modified: websites/production/camel/content/camel-2160-release.html == --- websites/production/camel/content/camel-2160-release.html (original) +++ websites/production/camel/content/camel-2160-release.html Mon Jul 20 14:19:35 2015 @@ -84,7 +84,7 @@ tbody tr td valign=top width=100% -div class=wiki-content maincontenth1 id=Camel2.16.0Release-Camel2.16.0release(currentlyinprogress)Camel 2.16.0#160;release (currently in progress)/h1div style=padding-right:20px;float:left;margin-left:-20px;pspan class=confluence-embedded-file-wrapperimg class=confluence-embedded-image confluence-external-resource src=http://camel.apache.org/download.data/camel-box-v1.0-150x200.png; data-image-src=http://camel.apache.org/download.data/camel-box-v1.0-150x200.png;/span/p/divdiv style=min-height:200px#160;/divh2 id=Camel2.16.0Release-NewandNoteworthyNew and Noteworthy/h2pWelcome to the 2.16.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)/ppNoteworthy improvements:/pulliThe route models (definition classes) preserve property placeholders, which allows round trip editing, and also prevents showing potential sensitive information/liliAdded onPrepareFailure option to#160;a shape =rect href=dead-letter-channel.htmlDead Letter Channel/a to allow a custom processor to prepare the Exchange before sending to the dead letter queue./lilia shape=rect href=mongodb.htmlMongoDB/a tailable consumers now allow setting the codereadPreference/code option./liliUsing setFaultBody / setFaultHeader behaves similar to setBody / setHeader to preserve existing headers/attachments by setting on existing IN or OUT message./liliJava DSL using choice with end vs endChoice now validates you use them as intended. Any misconfiguration now throws an exception explaining the problem./lilia shape=rect href=pojo-producing.htmlPOJO Producing/a and#160;a shape=rect href=pojo-consuming.htmlPOJO Consuming/a lifecycle is now in sync with a shape=rect href=camelcontext.htmlCamelContext/a#160;which ensures it works as similar to Camel#160;a shape=rect href=routes.htmlRoutes/a does. Also the created producer/consumer is stopped when#160;a shape=rect href=camelcontext.htmlCamelContext/a#160;is stopping to cleanup properly./lilia shape=rect href=jms.htmlJMS/a#160;component now allows configuring concurrentConsumers/maxConcurrentConsumers separately between from(jms) vs to(jms) using request/reply over JMS/lilispana shape=rect class=external-link href=https://issues.apache.org/jira/browse/CAMEL-8506;Added SEARCH/a operation to Elasticsearch component/span/lilispanThe#160;a shape=rect href=properties.htmlProperties/a component (property placeholder) now supports an encoding option to allow reading the .properties files using a specific charset such as UTF-8. By default ISO-8859-1 is used (latin1)/span/lilispanAdded#160;codereceviveBufferSize/code option to the a shape=rect href=ftp.htmlFTP/a#160;component to make download faster. The size is by default 32kb buffer./span/lilispanThe#160;a shape=rect href=aggregator2.html Aggregator2/a EIP now allows an external source using a#160;codeAggregateController/code to control the aggregator, such as for forcing completing a group or all groups, or query runtime information from the aggregator. A default controller is provided out of the box if none has been configured./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now enlists in JMX using a#160;codeManagedAggregateProcessorMBean/code which has more information, and also allows using the aggregate controller to control it./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now includes more runtime statistics which can be accessed from Java and JMX about number of incoming and completed exchanges, and per different completion triggers./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now supports pre-completion mode if the aggregation strategy implements#160;codePreCompletionAwareAg gregationStrategy/code. This supports the use-case where an incoming Exchange are used to determine if the current aggregated group is completed or not. If completed the group is emitted as-is, and the new incoming Exchange is used to start a new group from scratch./span/lilispanAdded options to#160;a shape=rect href=mail.htmlMail/a consumer so it can skip or handle a mail message that cannot be read from the mail server in the batch; and then move on to read the next message. This ensures the consumer can deal with mail boxes that has problematic mails that otherwise will cause no mails to be retrieve by the consumer in the batch./span/liliThe runtime route processors and their corresponding model definition are now linked by their id using codeHasId/code, so its easier to obtain the processor or model definition from the
svn commit: r959028 [4/4] - in /websites/production/camel/content: book-in-one-page.html book-pattern-appendix.html cache/main.pageCache camel-2160-release.html how-to-use-a-dynamic-uri-in-to.html mes
Modified: websites/production/camel/content/message-endpoint.html == --- websites/production/camel/content/message-endpoint.html (original) +++ websites/production/camel/content/message-endpoint.html Mon Jul 20 14:19:35 2015 @@ -85,15 +85,47 @@ tbody tr td valign=top width=100% -div class=wiki-content maincontenth3 id=MessageEndpoint-MessageEndpointMessage Endpoint/h3pCamel supports the a shape=rect class=external-link href=http://www.enterpriseintegrationpatterns.com/MessageEndpoint.html; rel=nofollowMessage Endpoint/a from the a shape=rect href=enterprise-integration-patterns.htmlEIP patterns/a using the a shape=rect class=external-link href=http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Endpoint.html;Endpoint/a interface./ppspan class=confluence-embedded-file-wrapperimg class=confluence-embedded-image confluence-external-resource src=http://www.enterpriseintegrationpatterns.com/img/MessageEndpointSolution.gif; data-image-src=http://www.enterpriseintegrationpatterns.com/img/MessageEndpointSolution.gif;/span/ppWhen using the a shape=rect href=dsl.htmlDSL/a to create a shape=rect href=routes.htmlRoutes/a you typically refer to Message Endpoints by their a shape=rect href=uris.htmlURIs/a rather than directly using the a shape=rect class=external-link href=http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Endpoint.html;Endpoint/a interface. Its then a responsibility of the a shape=rect class=external-link href=http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/CamelContext.html;CamelContext/a to create and activate the necessary Endpoint instances using the available a shape=rect class=external-link href=http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Component.html;Component/a implementations./ph4 id=MessageEndpoint-ExampleExample/h4pThe following example route demonstrates the use of a a shape=rect href=https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=38922;File/a Consumer Endpoint and a shape=rect href=jms.htmlJMS/a Producer Endpoint/ppstrongbr clear=none/strong/ppstron gUsing the#160;a shape=rect href=fluent-builders.htmlFluent Builders/a/strong/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl -pre class=brush: java; gutter: false; theme: Default style=font-size:12px;from(file://local/router/messages/foo) - .to(jms:queue:foo);/pre +div class=wiki-content maincontenth3 id=MessageEndpoint-MessageEndpointMessage Endpoint/h3pCamel supports the a shape=rect class=external-link href=http://www.enterpriseintegrationpatterns.com/MessageEndpoint.html; rel=nofollowMessage Endpoint/a from the a shape=rect href=enterprise-integration-patterns.htmlEIP patterns/a using the a shape=rect class=external-link href=http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Endpoint.html;Endpoint/a interface./ppspan class=confluence-embedded-file-wrapperimg class=confluence-embedded-image confluence-external-resource src=http://www.enterpriseintegrationpatterns.com/img/MessageEndpointSolution.gif; data-image-src=http://www.enterpriseintegrationpatterns.com/img/MessageEndpointSolution.gif;/span/ppWhen using the a shape=rect href=dsl.htmlDSL/a to create a shape=rect href=routes.htmlRoutes/a you typically refer to Message Endpoints by their a shape=rect href=uris.htmlURIs/a rather than directly using the a shape=rect class=external-link href=http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Endpoint.html;Endpoint/a interface. Its then a responsibility of the a shape=rect class=external-link href=http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/CamelContext.html;CamelContext/a to create and activate the necessary Endpoint instances using the available a shape=rect class=external-link href=http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Component.html;Component/a implementations./ph4 id=MessageEndpoint-ExampleExample/h4pThe following example route demonstrates the use of a a shape=rect href=https://cwiki.apache.org/confluence/display/SM/File;File/a Consumer Endpoint and a shape=rect href=jms.htmlJMS/a Producer Endpoint/ppstrongbr clear=none/strong/ppstrongUsing the#160;a shape=rect href=fluent-builders.htmlFluent Builders/a/strong/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[from(quot;file://local/router/messages/fooquot;) + .to(quot;jms:queue:fooquot;);]]/script /div/divp#160;/ppstrongstrongUsing the#160;a shape=rect href=spring-xml-extensions.htmlSpring XML Extensions/a/strong/strong/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl
svn commit: r959028 [2/4] - in /websites/production/camel/content: book-in-one-page.html book-pattern-appendix.html cache/main.pageCache camel-2160-release.html how-to-use-a-dynamic-uri-in-to.html mes
Modified: websites/production/camel/content/book-pattern-appendix.html == --- websites/production/camel/content/book-pattern-appendix.html (original) +++ websites/production/camel/content/book-pattern-appendix.html Mon Jul 20 14:19:35 2015 @@ -386,7 +386,39 @@ from(quot;activemq:My.Queuequot;). lt;from uri=quot;file://local/router/messages/fooquot;/gt; lt;to uri=quot;jms:queue:fooquot;/gt; lt;/routegt;]]/script -/div/divp#160;/ppFor more details see/pullia shape=rect href=message.htmlMessage/abr clear=nonebr clear=none/li/ulp/ph4 id=BookPatternAppendix-UsingThisPattern.5Using This Pattern/h4 +/div/divp#160;/ph3 id=BookPatternAppendix-DynamicToDynamic To/h3pstrongAvailable as of Camel 2.16/strong/ppThere is a new lt;toDgt; that allows to send a message to a dynamic computed#160;a shape=rect href=endpoint.htmlEndpoint/a using one or more#160;a shape=rect href=expression.htmlExpression/a that are concat together. By default the#160;a shape=rect href=simple.htmlSimple/a language is used to compute the#160;endpoint. For example to send a message to a endpoint defined by a header you can do/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: xml; gutter: false; theme: Default type=syntaxhighlighter![CDATA[lt;routegt; + lt;from uri=quot;direct:startquot;/gt; + lt;toD uri=quot;${header.fooquot;/gt; +lt;/routegt;]]/script +/div/divpAnd in Java DSL/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[from(quot;direct:startquot;) + .toD(quot;${header.foo}quot;);]]/script +/div/divp#160;/ppYou can also prefix the uri with a value because by default the uri is evaluated using the#160;a shape=rect href=simple.htmlSimple/a language/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: xml; gutter: false; theme: Default type=syntaxhighlighter![CDATA[lt;routegt; + lt;from uri=quot;direct:startquot;/gt; + lt;toD uri=quot;mock:${header.fooquot;/gt; +lt;/routegt;]]/script +/div/divpAnd in Java DSL/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[from(quot;direct:startquot;) + .toD(quot;mock:${header.foo}quot;);]]/script +/div/divpIn the example above we compute an endpoint that has prefix mock: and then the header foo is appended. So for example if the header foo has value order, then the endpoint is computed as mock:order./ppYou can also use other languages that #160;a shape=rect href=simple.htmlSimple/a#160;such as#160;a shape=rect href=xpath.htmlXPath/a/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: xml; gutter: false; theme: Default type=syntaxhighlighter![CDATA[lt;routegt; + lt;from uri=quot;direct:startquot;/gt; + lt;toD uri=quot;xpath:/order/@uriquot;/gt; +lt;/routegt;]]/script +/div/divpThis is done by specifying the name of the language followed by a colon./pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[from(quot;direct:startquot;) + .toD(quot;xpath:/order/@uriquot;);]]/script +/div/divpYou can also concat multiple#160;a shape=rect href=language.htmlLanguage/a(s) together using the plus sign#160;code+/code such as shown below:/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: xml; gutter: false; theme: Default type=syntaxhighlighter![CDATA[lt;routegt; + lt;from uri=quot;direct:startquot;/gt; + lt;toD uri=quot;jms:${header.base}+xpath:/order/@idquot;/gt; +lt;/routegt;]]/script +/div/divpIn the example above the uri is a combination of#160;a shape=rect href=simple.htmlSimple/a#160;language and#160;a shape=rect href=xpath.htmlXPath/a#160;where the first part is simple (simple is default language). And then the plus sign separate to another language, where we specify the language name followed by a colon/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[from(quot;direct:startquot;) + .toD(quot;jms:${header.base}+xpath:/order/@idquot;);]]/script +/div/divpYou can concat as many languages as you want, just separate them with the plus sign/ppThe Dynamic To has a few options you can configure/pdiv class=table-wraptable class=confluenceTabletbodytrth colspan=1 rowspan=1 class=confluenceThName/thth colspan=1 rowspan=1 class=confluenceThDefault Value/thth colspan=1 rowspan=1 class=confluenceThDescription/th/trtrtd colspan=1 rowspan=1
buildbot failure in ASF Buildbot on camel-site-production
The Buildbot has detected a new failure on builder camel-site-production while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/camel-site-production/builds/487 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-cms-slave Build Reason: The Nightly scheduler named 'camel-site-production' triggered this build Build Source Stamp: [branch camel/website] HEAD Blamelist: BUILD FAILED: failed compile Sincerely, -The Buildbot
camel git commit: [CAMEL-8987] Vert.x endpoints supports mutliple consumers.
Repository: camel Updated Branches: refs/heads/master 14a7dd791 - da9f0f773 [CAMEL-8987] Vert.x endpoints supports mutliple consumers. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/da9f0f77 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/da9f0f77 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/da9f0f77 Branch: refs/heads/master Commit: da9f0f773f37a09c61c276e0e4b6ac19ab4ba09b Parents: 14a7dd7 Author: Henryk Konsek hekon...@gmail.com Authored: Mon Jul 20 17:08:39 2015 +0200 Committer: Henryk Konsek hekon...@gmail.com Committed: Mon Jul 20 17:08:39 2015 +0200 -- .../camel/component/vertx/VertxEndpoint.java| 8 +++- .../vertx/VertxMultipleConsumerTest.java| 48 2 files changed, 55 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/da9f0f77/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxEndpoint.java -- diff --git a/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxEndpoint.java b/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxEndpoint.java index e1fef5c..2831282 100644 --- a/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxEndpoint.java +++ b/components/camel-vertx/src/main/java/org/apache/camel/component/vertx/VertxEndpoint.java @@ -19,6 +19,7 @@ package org.apache.camel.component.vertx; import io.vertx.core.Vertx; import io.vertx.core.eventbus.EventBus; import org.apache.camel.Consumer; +import org.apache.camel.MultipleConsumersSupport; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.impl.DefaultEndpoint; @@ -31,7 +32,7 @@ import org.apache.camel.spi.UriPath; * A Camel Endpoint for working with a href=http://vertx.io/;vert.x/a event bus endpoints */ @UriEndpoint(scheme = vertx, title = Vert.x, syntax = vertx:address, consumerClass = VertxConsumer.class, label = eventbus) -public class VertxEndpoint extends DefaultEndpoint { +public class VertxEndpoint extends DefaultEndpoint implements MultipleConsumersSupport { @UriPath @Metadata(required = true) private String address; @@ -62,6 +63,11 @@ public class VertxEndpoint extends DefaultEndpoint { return true; } +@Override +public boolean isMultipleConsumersSupported() { +return true; +} + public EventBus getEventBus() { if (getVertx() != null) { return getVertx().eventBus(); http://git-wip-us.apache.org/repos/asf/camel/blob/da9f0f77/components/camel-vertx/src/test/java/org/apache/camel/component/vertx/VertxMultipleConsumerTest.java -- diff --git a/components/camel-vertx/src/test/java/org/apache/camel/component/vertx/VertxMultipleConsumerTest.java b/components/camel-vertx/src/test/java/org/apache/camel/component/vertx/VertxMultipleConsumerTest.java new file mode 100644 index 000..d20299d --- /dev/null +++ b/components/camel-vertx/src/test/java/org/apache/camel/component/vertx/VertxMultipleConsumerTest.java @@ -0,0 +1,48 @@ +/** + * 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.vertx; + +import org.apache.camel.builder.RouteBuilder; +import org.apache.camel.component.mock.MockEndpoint; +import org.junit.Test; + +public class VertxMultipleConsumerTest extends VertxBaseTestSupport { + +protected String startUri = vertx:foo.start?pubSub=true; +protected String resultUri = mock:result; + +protected MockEndpoint resultEndpoint; + +@Test +public void shouldSendMessageToMultpleConsumers() throws Exception { +resultEndpoint = context.getEndpoint(resultUri, MockEndpoint.class); +resultEndpoint.expectedMessageCount(2); + +template.sendBody(startUri, msg); + +resultEndpoint.assertIsSatisfied(); +} + +protected RouteBuilder createRouteBuilder() throws
buildbot success in ASF Buildbot on camel-site-production
The Buildbot has detected a restored build on builder camel-site-production while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/camel-site-production/builds/494 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-cms-slave Build Reason: The Nightly scheduler named 'camel-site-production' triggered this build Build Source Stamp: [branch camel/website] HEAD Blamelist: Build succeeded! Sincerely, -The Buildbot
svn commit: r959048 - in /websites/production/camel/content: book-architecture.html book-in-one-page.html cache/main.pageCache component-list.html components.html transport.html uris.html
Author: buildbot Date: Mon Jul 20 18:55:44 2015 New Revision: 959048 Log: Production update by buildbot for camel Modified: websites/production/camel/content/book-architecture.html websites/production/camel/content/book-in-one-page.html websites/production/camel/content/cache/main.pageCache websites/production/camel/content/component-list.html websites/production/camel/content/components.html websites/production/camel/content/transport.html websites/production/camel/content/uris.html Modified: websites/production/camel/content/book-architecture.html == --- websites/production/camel/content/book-architecture.html (original) +++ websites/production/camel/content/book-architecture.html Mon Jul 20 18:55:44 2015 @@ -175,7 +175,9 @@ Camel uses a Java based a shape=rect /div/div/tdtd colspan=1 rowspan=1 class=confluenceTdpProvides a simple a shape=rect href=browsableendpoint.htmlBrowsableEndpoint/a which can be useful for testing, visualisation tools or debugging. The exchanges sent to the endpoint are all available to be browsed./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpa shape=rect href=cache.htmlCache/a / camel-cache/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl script class=brush: plain; gutter: false; theme: Default type=syntaxhighlighter![CDATA[cache://cacheName[?options] ]]/script -/div/div/tdtd colspan=1 rowspan=1 class=confluenceTdpThe cache component facilitates creation of caching endpoints and processors using a shape=rect class=external-link href=http://ehcache.org/; rel=nofollowEHCache/a as the cache implementation./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpa shape=rect href=class.htmlClass/a / camel-core/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +/div/div/tdtd colspan=1 rowspan=1 class=confluenceTdpThe cache component facilitates creation of caching endpoints and processors using a shape=rect class=external-link href=http://ehcache.org/; rel=nofollowEHCache/a as the cache implementation./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpa shape=rect href=cassandra.htmlCassandra/a / span style=color: rgb(0,0,0);camel-cassandraql/span/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[cql:localhost/keyspace]]/script +/div/divpspan style=color: rgb(0,0,0);br clear=none/span/p/tdtd colspan=1 rowspan=1 class=confluenceTdFor integrating with a shape=rect class=external-link href=http://cassandra.apache.org/;Apache Cassandra/a./td/trtrtd colspan=1 rowspan=1 class=confluenceTdpa shape=rect href=class.htmlClass/a / camel-core/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl script class=brush: plain; gutter: false; theme: Default type=syntaxhighlighter![CDATA[class:className[?options] ]]/script /div/div/tdtd colspan=1 rowspan=1 class=confluenceTdpUses the a shape=rect href=bean-binding.htmlBean Binding/a to bind message exchanges to beans in the a shape=rect href=registry.htmlRegistry/a. Is also used for exposing and invoking POJO (Plain Old Java Objects)./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpa shape=rect href=chunk.htmlChunk/a / camel-chunk/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl @@ -281,7 +283,7 @@ disruptor-vm:someName[?lt;optiongt;] script class=brush: plain; gutter: false; theme: Default type=syntaxhighlighter![CDATA[gtask://queue-name[?options] ]]/script /div/div/tdtd colspan=1 rowspan=1 class=confluenceTdpSupports asynchronous message processing on Google App Engine by using the a shape=rect class=external-link href=http://code.google.com/appengine/docs/java/taskqueue/; rel=nofollowtask queueing service/a as message queue. See also a shape=rect href=gae.htmlCamel Components for Google App Engine/a./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpa shape=rect href=googlecalendar.htmlGoogle Calendar/a / a shape=rect href=googlecalendar.htmlcamel-google-calendar/a/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl -script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[google-calendar://endpoint-prefix/endpoint?[options]Â  ]]/script +script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[google-calendar://endpoint-prefix/endpoint?[options]?]]/script /div/div/tdtd colspan=1 rowspan=1 class=confluenceTdpSupports interaction with a shape=rect class=external-link href=https://developers.google.com/google-apps/calendar/v3/reference/; rel=nofollowGoogle Calendar's REST API/a./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpa shape=rect href=googledrive.htmlGoogle Drive/a / a shape=rect
camel git commit: Upgrade Mongo Java Driver to 3.0.3 version
Repository: camel Updated Branches: refs/heads/master ebf0f8dff - 8e6be5bbb Upgrade Mongo Java Driver to 3.0.3 version Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/8e6be5bb Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/8e6be5bb Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/8e6be5bb Branch: refs/heads/master Commit: 8e6be5bbb2b08b3a31b45848f2bf7ff4fb88fecd Parents: ebf0f8d Author: Andrea Cosentino anco...@gmail.com Authored: Mon Jul 20 17:50:32 2015 +0200 Committer: Andrea Cosentino anco...@gmail.com Committed: Mon Jul 20 17:50:32 2015 +0200 -- parent/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/8e6be5bb/parent/pom.xml -- diff --git a/parent/pom.xml b/parent/pom.xml index 9f7455b..757af53 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -361,7 +361,7 @@ minimal-json-version0.9.3/minimal-json-version mock-javamail-version1.9/mock-javamail-version mockito-version1.9.5/mockito-version -mongo-java-driver-version3.0.2/mongo-java-driver-version +mongo-java-driver-version3.0.3/mongo-java-driver-version mqtt-client-version1.10/mqtt-client-version msv-version2013.6.1/msv-version mustache-java-version0.8.16/mustache-java-version
svn commit: r959035 - in /websites/production/camel/content: cache/main.pageCache vertx.html
Author: buildbot Date: Mon Jul 20 16:19:50 2015 New Revision: 959035 Log: Production update by buildbot for camel Modified: websites/production/camel/content/cache/main.pageCache websites/production/camel/content/vertx.html Modified: websites/production/camel/content/cache/main.pageCache == Binary files - no diff available. Modified: websites/production/camel/content/vertx.html == --- websites/production/camel/content/vertx.html (original) +++ websites/production/camel/content/vertx.html Mon Jul 20 16:19:50 2015 @@ -96,7 +96,12 @@ /div/divp#160;/ph3 id=Vertx-URIformatURI format/h3div class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[vertx:channelName[?options] ]]/script -/div/divh3 id=Vertx-OptionsOptions/h3div class=table-wraptable class=confluenceTabletbodytrth colspan=1 rowspan=1 class=confluenceThpName/p/thth colspan=1 rowspan=1 class=confluenceThpDefault Value/p/thth colspan=1 rowspan=1 class=confluenceThpDescription/p/th/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodepubSub/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpcodefalse/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpstrongCamel 2.12.3:/strong Whether to use publish/subscribe instead of point to point when sending to a vertx endpoint./p/td/tr/tbody/table/divpreYou can append query options to the URI in the following format, ?option=valueamp;option=valueamp;.../prep#160;/pp/ph3 id=Vertx-SeeAlsoSee Also/h3 +/div/divh3 id=Vertx-OptionsOptions/h3div class=table-wraptable class=confluenceTabletbodytrth colspan=1 rowspan=1 class=confluenceThpName/p/thth colspan=1 rowspan=1 class=confluenceThpDefault Value/p/thth colspan=1 rowspan=1 class=confluenceThpDescription/p/th/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodepubSub/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpcodefalse/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpstrongCamel 2.12.3:/strong Whether to use publish/subscribe instead of point to point when sending to a vertx endpoint./p/td/tr/tbody/table/divpreYou can append query options to the URI in the following format, ?option=valueamp;option=valueamp;.../preh3 id=Vertx-ConnectingtotheexistingVert.xinstanceConnecting to the existing Vert.x instance/h3pIf you would like to connect to the Vert.x instance already existing in your JVM, you can set the instance on the component level:/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl +script class=brush: java; gutter: false; theme: Default type=syntaxhighlighter![CDATA[Vertx vertx = ...; +VertxComponent vertxComponent = new VertxComponent(); +vertxComponent.setVertx(vertx); +camelContext.addComponent(quot;vertxquot;, vertxComponent);]]/script +/div/divp/ph3 id=Vertx-SeeAlsoSee Also/h3 ullia shape=rect href=configuring-camel.htmlConfiguring Camel/a/lilia shape=rect href=component.htmlComponent/a/lilia shape=rect href=endpoint.htmlEndpoint/a/lilia shape=rect href=getting-started.htmlGetting Started/a/li/ul/div /td td valign=top
camel git commit: CAMEL-8957: Added unit test
Repository: camel Updated Branches: refs/heads/master 8dbdfd28b - a93800e6e CAMEL-8957: Added unit test Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a93800e6 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a93800e6 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a93800e6 Branch: refs/heads/master Commit: a93800e6ee1a3a27833a408f0ae0eb7b1440ad8b Parents: 8dbdfd2 Author: Christian Mueller cmuel...@apache.org Authored: Mon Jul 20 19:11:05 2015 +0200 Committer: Christian Mueller cmuel...@apache.org Committed: Mon Jul 20 19:11:05 2015 +0200 -- ...rceptSendToEndpointWithLoadbalancerTest.java | 70 ...erceptSendToEndpointWithLoadbalancerTest.xml | 30 + 2 files changed, 100 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/a93800e6/components/camel-test-spring/src/test/java/org/apache/camel/test/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.java -- diff --git a/components/camel-test-spring/src/test/java/org/apache/camel/test/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.java b/components/camel-test-spring/src/test/java/org/apache/camel/test/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.java new file mode 100644 index 000..9bb41c8 --- /dev/null +++ b/components/camel-test-spring/src/test/java/org/apache/camel/test/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.java @@ -0,0 +1,70 @@ +/** + * 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.test.issues; + +import org.apache.camel.Exchange; +import org.apache.camel.Processor; +import org.apache.camel.builder.AdviceWithRouteBuilder; +import org.apache.camel.builder.RouteBuilder; +import org.apache.camel.model.RouteDefinition; +import org.apache.camel.test.spring.CamelSpringTestSupport; +import org.junit.Test; +import org.springframework.context.support.AbstractApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +public class AdviceWithInterceptSendToEndpointWithLoadbalancerTest extends CamelSpringTestSupport { + +@Override +protected AbstractApplicationContext createApplicationContext() { +return new ClassPathXmlApplicationContext(org/apache/camel/test/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.xml); +} + +@Override +public boolean isUseAdviceWith() { +return true; +} + +@Test +public void testSimpleMultipleAdvice() throws Exception { +RouteDefinition route = context.getRouteDefinitions().get(0); +route.adviceWith(context, new RouteBuilder() { +public void configure() throws Exception { +interceptSendToEndpoint(seda:end1) +.skipSendToOriginalEndpoint() +.to(mock:end); +} +}); + +context.start(); + +getMockEndpoint(mock:end).expectedMessageCount(1); + +template.sendBody(direct:start, Hello World); + +assertMockEndpointsSatisfied(); +} + +public static class LoadbalancerTestRoute extends RouteBuilder { + +@Override +public void configure() throws Exception { +from(direct:start) +.loadBalance().failover() +.to(seda:end1, seda:end2); +} +} +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/a93800e6/components/camel-test-spring/src/test/resources/org/apache/camel/test/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.xml -- diff --git a/components/camel-test-spring/src/test/resources/org/apache/camel/test/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.xml b/components/camel-test-spring/src/test/resources/org/apache/camel/test/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.xml new file mode 100644 index 000..7fb613d ---
svn commit: r959042 - in /websites/production/camel/content: advicewith.html cache/main.pageCache
Author: buildbot Date: Mon Jul 20 17:18:32 2015 New Revision: 959042 Log: Production update by buildbot for camel Modified: websites/production/camel/content/advicewith.html websites/production/camel/content/cache/main.pageCache Modified: websites/production/camel/content/advicewith.html == --- websites/production/camel/content/advicewith.html (original) +++ websites/production/camel/content/advicewith.html Mon Jul 20 17:18:32 2015 @@ -110,7 +110,7 @@ public void testAdvised() throws Excepti assertMockEndpointsSatisfied(); } ]]/script -/div/divdiv class=confluence-information-macro confluence-information-macro-warningp class=titleRecommendation/pspan class=aui-icon aui-icon-small aui-iconfont-error confluence-information-macro-icon/spandiv class=confluence-information-macro-bodypIt is recommended to only advice a given route once (you can of course advice multiple routes). If you do it multiple times, then it may not work as expected, especially when any kind of error handling is involved.br clear=none The Camel team plan for Camel 3.0 to support this as internal refactorings in the routing engine is needed to support this properly./p/div/divdiv class=confluence-information-macro confluence-information-macro-tipp class=titleTelling Camel you are using adviceWith/pspan class=aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon/spandiv class=confluence-information-macro-bodypFrom strongCamel 2.9/strong onwards its recommended to override the codeisUseAdviceWith/code method and return true to tell Camel you are using advice with in your unit tests. Then after you have done the adviceWith, then you must start codeCamelContext/code manually. See further below for an example./p/div/divh3 id=AdviceWith-UsingAdviceWithRouteBuilderUsing AdviceWithRouteBuilder/h3pstrongAvailable as of Camel 2.7/strong/ppThe codeAdviceWithRouteBuilder/code is a specialized codeRouteBuilder/code which has additional methods for advising routes. For example this allows you to manipulate the advised route, such as replacing a node with some other nodes./ppThe codeAdviceWithRouteBuilder/code offers the following extra methods/pdiv class=table-wraptable class=confluenceTabletbodytrth colspan=1 rowspan=1 class=confluenceThpMethod/p/thth colspan=1 rowspan=1 class=confluenceThpDescription/p/th/trtrtd colspan=1 rowspan=1 class=confluenceTdp codemockEndpoints/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpIs used to easily mock all endpoints. See more details and examples at a shape=rect href=mock.htmlMock/a./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodemockEndpoints(patterns)/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpIs used to easily mock endpoints using a pattern. See more details and examples at a shape=rect href=mock.htmlMock/a. See below for pattern matching. From Camel 2.10 onwards you can specify multiple patterns./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodemockEndpointsAndSkip(patterns)/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpIs used to easily mock endpoints using a pattern, and strongskip/strong sending to the original endpoint. See more details and examples at a shape=rect href=mock.htmlMock/a. See below for pattern matching. You can specify multipl e patterns./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodeweaveById(pattern)/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpIs used to select node(s) matching by id's, and weave in the following nodes. See below for pattern matching and examples./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodeweaveByToString(pattern)/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpIs used to select nodes(s) matching by their codetoString/code representation, and weave in the following nodes. See below for pattern matching and examples./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodeweaveByType(Class)/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpstrongCamel 2.8:/strong Is used to select node(s) matching by their class type (the classes from the org.apache.camel.model package), and weave in the following nodes. See below for examples./p/td/trt rtd colspan=1 rowspan=1 class=confluenceTdpcodeweaveAddFirst/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpstrongCamel 2.8:/strong Is a short hand to easily weave in the following nodes in the start of the route./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodeweaveAddLast/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpstrongCamel 2.8:/strong Is a short hand to easily weave in the following nodes in the end of the route./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodereplaceFromWith(uri)/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpstrongCamel 2.9:/strong To replace the route input with a new endpoint uri./p/td/tr/tbody/table/divpThe codepattern/code option is
svn commit: r959031 - in /websites/production/camel/content: cache/main.pageCache camel-2160-release.html
Author: buildbot Date: Mon Jul 20 15:19:30 2015 New Revision: 959031 Log: Production update by buildbot for camel Modified: websites/production/camel/content/cache/main.pageCache websites/production/camel/content/camel-2160-release.html Modified: websites/production/camel/content/cache/main.pageCache == Binary files - no diff available. Modified: websites/production/camel/content/camel-2160-release.html == --- websites/production/camel/content/camel-2160-release.html (original) +++ websites/production/camel/content/camel-2160-release.html Mon Jul 20 15:19:30 2015 @@ -84,7 +84,7 @@ tbody tr td valign=top width=100% -div class=wiki-content maincontenth1 id=Camel2.16.0Release-Camel2.16.0release(currentlyinprogress)Camel 2.16.0#160;release (currently in progress)/h1div style=padding-right:20px;float:left;margin-left:-20px;pspan class=confluence-embedded-file-wrapperimg class=confluence-embedded-image confluence-external-resource src=http://camel.apache.org/download.data/camel-box-v1.0-150x200.png; data-image-src=http://camel.apache.org/download.data/camel-box-v1.0-150x200.png;/span/p/divdiv style=min-height:200px#160;/divh2 id=Camel2.16.0Release-NewandNoteworthyNew and Noteworthy/h2pWelcome to the 2.16.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)/ppNoteworthy improvements:/pulliThe route models (definition classes) preserve property placeholders, which allows round trip editing, and also prevents showing potential sensitive information/liliAdded onPrepareFailure option to#160;a shape =rect href=dead-letter-channel.htmlDead Letter Channel/a to allow a custom processor to prepare the Exchange before sending to the dead letter queue./lilia shape=rect href=mongodb.htmlMongoDB/a tailable consumers now allow setting the codereadPreference/code option./liliUsing setFaultBody / setFaultHeader behaves similar to setBody / setHeader to preserve existing headers/attachments by setting on existing IN or OUT message./liliJava DSL using choice with end vs endChoice now validates you use them as intended. Any misconfiguration now throws an exception explaining the problem./lilia shape=rect href=pojo-producing.htmlPOJO Producing/a and#160;a shape=rect href=pojo-consuming.htmlPOJO Consuming/a lifecycle is now in sync with a shape=rect href=camelcontext.htmlCamelContext/a#160;which ensures it works as similar to Camel#160;a shape=rect href=routes.htmlRoutes/a does. Also the created producer/consumer is stopped when#160;a shape=rect href=camelcontext.htmlCamelContext/a#160;is stopping to cleanup properly./lilia shape=rect href=jms.htmlJMS/a#160;component now allows configuring concurrentConsumers/maxConcurrentConsumers separately between from(jms) vs to(jms) using request/reply over JMS/lilispana shape=rect class=external-link href=https://issues.apache.org/jira/browse/CAMEL-8506;Added SEARCH/a operation to Elasticsearch component/span/lilispanThe#160;a shape=rect href=properties.htmlProperties/a component (property placeholder) now supports an encoding option to allow reading the .properties files using a specific charset such as UTF-8. By default ISO-8859-1 is used (latin1)/span/lilispanAdded#160;codereceviveBufferSize/code option to the a shape=rect href=ftp.htmlFTP/a#160;component to make download faster. The size is by default 32kb buffer./span/lilispanThe#160;a shape=rect href=aggregator2.html Aggregator2/a EIP now allows an external source using a#160;codeAggregateController/code to control the aggregator, such as for forcing completing a group or all groups, or query runtime information from the aggregator. A default controller is provided out of the box if none has been configured./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now enlists in JMX using a#160;codeManagedAggregateProcessorMBean/code which has more information, and also allows using the aggregate controller to control it./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now includes more runtime statistics which can be accessed from Java and JMX about number of incoming and completed exchanges, and per different completion triggers./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now supports pre-completion mode if the aggregation strategy implements#160;codePreCompletionAwareAg gregationStrategy/code. This supports the use-case where an incoming Exchange are used to determine if the current aggregated group is completed or not. If completed the group is emitted as-is, and the new incoming Exchange is used to start a new group from scratch./span/lilispanAdded options to#160;a shape=rect href=mail.htmlMail/a consumer so it can skip or handle a mail message that cannot be read from the mail
camel git commit: Update plugins to versions that don't hit the now non-existent codehaus repo
Repository: camel Updated Branches: refs/heads/master 8e6be5bbb - 8dbdfd28b Update plugins to versions that don't hit the now non-existent codehaus repo Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/8dbdfd28 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/8dbdfd28 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/8dbdfd28 Branch: refs/heads/master Commit: 8dbdfd28bdb51025bbc56978752ae8cc63283871 Parents: 8e6be5b Author: Daniel Kulp dk...@apache.org Authored: Mon Jul 20 12:11:40 2015 -0400 Committer: Daniel Kulp dk...@apache.org Committed: Mon Jul 20 12:12:01 2015 -0400 -- components/camel-grape/pom.xml | 8 1 file changed, 4 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/8dbdfd28/components/camel-grape/pom.xml -- diff --git a/components/camel-grape/pom.xml b/components/camel-grape/pom.xml index 7a9b294..de57bfb 100644 --- a/components/camel-grape/pom.xml +++ b/components/camel-grape/pom.xml @@ -31,8 +31,8 @@ descriptionCamel Component for Grape/description properties -groovy-eclipse-batch.version2.3.7-01/groovy-eclipse-batch.version -groovy-eclipse-compiler.version2.9.1-01/groovy-eclipse-compiler.version +groovy-eclipse-batch.version2.4.3-01/groovy-eclipse-batch.version +groovy-eclipse-compiler.version2.9.2-01/groovy-eclipse-compiler.version plexus-compiler-api.version2.4/plexus-compiler-api.version /properties @@ -124,7 +124,7 @@ replacements replacement tokenARTIFACT_VERSION/token - value${version}/value + value${project.version}/value /replacement /replacements /configuration @@ -132,4 +132,4 @@ /plugins /build -/project \ No newline at end of file +/project
[2/7] camel git commit: CAMEL-8965: WireTap supports dynamic uris like toD does
CAMEL-8965: WireTap supports dynamic uris like toD does Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/cc556718 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/cc556718 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/cc556718 Branch: refs/heads/master Commit: cc556718cf3467cc2475bcda44c16fb7ce19149f Parents: 4376cb3 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 21:38:42 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 22:54:08 2015 +0200 -- .../management/mbean/ManagedWireTapMBean.java | 4 +- .../mbean/ManagedWireTapProcessor.java | 6 +- .../apache/camel/model/ProcessorDefinition.java | 102 --- .../apache/camel/model/ToDynamicDefinition.java | 24 +++-- .../apache/camel/model/WireTapDefinition.java | 81 ++- .../camel/processor/WireTapProcessor.java | 37 +++ .../camel/management/ManagedWireTapTest.java| 6 +- .../camel/processor/CBRWithWireTapTest.java | 4 +- .../camel/processor/WireTapCustomPool2Test.java | 2 +- .../camel/processor/WireTapCustomPoolTest.java | 2 +- .../camel/processor/WireTapExpressionTest.java | 2 +- .../camel/processor/WireTapNewExchangeTest.java | 2 +- .../processor/WireTapOnPrepareRefTest.java | 2 +- .../src/test/resources/log4j.properties | 6 +- .../FileWireTapWithXMLPayloadIssueTest.xml | 4 +- .../SpringAggregateFromWireTapTest.xml | 4 +- .../processor/SpringComplexBlockWithEndTest.xml | 4 +- .../processor/SpringWireTapExpressionTest.xml | 4 +- .../processor/SpringWireTapNewExchangeTest.xml | 3 +- .../spring/processor/SpringWireTapTest.xml | 8 +- .../SpringWireTapUsingFireAndForgetCopyTest.xml | 7 +- .../SpringWireTapUsingFireAndForgetTest.xml | 7 +- .../spring/processor/WireTapOnPrepareTest.xml | 4 +- 23 files changed, 135 insertions(+), 190 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/cc556718/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java -- diff --git a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java index 52663cc..ac60c49 100644 --- a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java +++ b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java @@ -20,8 +20,8 @@ import org.apache.camel.api.management.ManagedAttribute; public interface ManagedWireTapMBean extends ManagedProcessorMBean { -@ManagedAttribute(description = Expression that returns the uri to use for the wire tap destination, mask = true) -String getExpression(); +@ManagedAttribute(description = The uri of the endpoint to wiretap to. The uri can be dynamic computed using the expressions., mask = true) +String getUri(); @ManagedAttribute(description = Sets the maximum size used by the ProducerCache which is used to cache and reuse producers) Integer getCacheSize(); http://git-wip-us.apache.org/repos/asf/camel/blob/cc556718/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedWireTapProcessor.java -- diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedWireTapProcessor.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedWireTapProcessor.java index 60471fd..88b72ad 100644 --- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedWireTapProcessor.java +++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedWireTapProcessor.java @@ -41,9 +41,9 @@ public class ManagedWireTapProcessor extends ManagedProcessor implements Managed super.init(strategy); boolean sanitize = strategy.getManagementAgent().getMask() != null ? strategy.getManagementAgent().getMask() : false; if (sanitize) { -uri = URISupport.sanitizeUri(processor.getExpression().toString()); +uri = URISupport.sanitizeUri(processor.getUri()); } else { -uri = processor.getExpression().toString(); +uri = processor.getUri(); } } @@ -51,7 +51,7 @@ public class ManagedWireTapProcessor extends ManagedProcessor implements Managed return processor; } -public String getExpression() { +public String getUri() { return uri; } http://git-wip-us.apache.org/repos/asf/camel/blob/cc556718/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
[4/7] camel git commit: CAMEL-8965: Add mbean for wiretap
CAMEL-8965: Add mbean for wiretap Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/4376cb3d Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/4376cb3d Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/4376cb3d Branch: refs/heads/master Commit: 4376cb3db8380bf8d21a60ec3910763a85b1e74a Parents: b269ae5 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 17:55:10 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 22:54:08 2015 +0200 -- .../mbean/ManagedSendDynamicProcessorMBean.java | 2 +- .../management/mbean/ManagedWireTapMBean.java | 35 .../DefaultManagementObjectStrategy.java| 8 +- .../mbean/ManagedWireTapProcessor.java | 70 +++ .../apache/camel/model/EnrichDefinition.java| 4 +- .../camel/model/PollEnrichDefinition.java | 2 +- .../apache/camel/model/WireTapDefinition.java | 67 +++ .../camel/processor/WireTapProcessor.java | 23 + .../camel/management/ManagedWireTapTest.java| 90 9 files changed, 295 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/4376cb3d/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java -- diff --git a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java index e1071ceb..9a6ae94 100644 --- a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java +++ b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedSendDynamicProcessorMBean.java @@ -26,7 +26,7 @@ public interface ManagedSendDynamicProcessorMBean extends ManagedProcessorMBean @ManagedAttribute(description = Message Exchange Pattern) String getMessageExchangePattern(); -@ManagedAttribute(description = Sets the maximum size used by the ProducerCacheN which is used to cache and reuse producers.) +@ManagedAttribute(description = Sets the maximum size used by the ProducerCache which is used to cache and reuse producers) Integer getCacheSize(); @ManagedAttribute(description = Ignore the invalidate endpoint exception when try to create a producer with that endpoint) http://git-wip-us.apache.org/repos/asf/camel/blob/4376cb3d/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java -- diff --git a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java new file mode 100644 index 000..52663cc --- /dev/null +++ b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedWireTapMBean.java @@ -0,0 +1,35 @@ +/** + * 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.api.management.mbean; + +import org.apache.camel.api.management.ManagedAttribute; + +public interface ManagedWireTapMBean extends ManagedProcessorMBean { + +@ManagedAttribute(description = Expression that returns the uri to use for the wire tap destination, mask = true) +String getExpression(); + +@ManagedAttribute(description = Sets the maximum size used by the ProducerCache which is used to cache and reuse producers) +Integer getCacheSize(); + +@ManagedAttribute(description = Ignore the invalidate endpoint exception when try to create a producer with that endpoint) +Boolean isIgnoreInvalidEndpoint(); + +@ManagedAttribute(description = Uses a copy of the original exchange) +Boolean isCopy(); + +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/4376cb3d/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java
[5/7] camel git commit: CAMEL-8965: WireTap supports dynamic uris like toD does
CAMEL-8965: WireTap supports dynamic uris like toD does Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/8ba9da1b Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/8ba9da1b Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/8ba9da1b Branch: refs/heads/master Commit: 8ba9da1b752b7eb43603e9b506599c4f4e7ad9fd Parents: cc55671 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 21:57:03 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 22:54:09 2015 +0200 -- .../main/java/org/apache/camel/model/ToDynamicDefinition.java| 1 + .../java/org/apache/camel/management/ManagedWireTapTest.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/8ba9da1b/camel-core/src/main/java/org/apache/camel/model/ToDynamicDefinition.java -- diff --git a/camel-core/src/main/java/org/apache/camel/model/ToDynamicDefinition.java b/camel-core/src/main/java/org/apache/camel/model/ToDynamicDefinition.java index 7f5483b..ef6e90d 100644 --- a/camel-core/src/main/java/org/apache/camel/model/ToDynamicDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/ToDynamicDefinition.java @@ -70,6 +70,7 @@ public class ToDynamicDefinition extends NoOutputDefinitionToDynamicDefinition Expression exp = createExpression(routeContext); SendDynamicProcessor processor = new SendDynamicProcessor(uri, exp); +processor.setCamelContext(routeContext.getCamelContext()); processor.setPattern(pattern); if (cacheSize != null) { processor.setCacheSize(cacheSize); http://git-wip-us.apache.org/repos/asf/camel/blob/8ba9da1b/camel-core/src/test/java/org/apache/camel/management/ManagedWireTapTest.java -- diff --git a/camel-core/src/test/java/org/apache/camel/management/ManagedWireTapTest.java b/camel-core/src/test/java/org/apache/camel/management/ManagedWireTapTest.java index 4638037..0946a99 100644 --- a/camel-core/src/test/java/org/apache/camel/management/ManagedWireTapTest.java +++ b/camel-core/src/test/java/org/apache/camel/management/ManagedWireTapTest.java @@ -63,11 +63,11 @@ public class ManagedWireTapTest extends ManagementTestSupport { TabularData data = (TabularData) mbeanServer.invoke(on, explain, new Object[]{false}, new String[]{boolean}); assertNotNull(data); -assertEquals(2, data.size()); +assertEquals(3, data.size()); data = (TabularData) mbeanServer.invoke(on, explain, new Object[]{true}, new String[]{boolean}); assertNotNull(data); -assertEquals(10, data.size()); +assertEquals(11, data.size()); String json = (String) mbeanServer.invoke(on, informationJson, null, null); assertNotNull(json);
[7/7] camel git commit: CAMEL-8965: WireTap supports dynamic uris like toD does
CAMEL-8965: WireTap supports dynamic uris like toD does Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/01dead92 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/01dead92 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/01dead92 Branch: refs/heads/master Commit: 01dead92e3c8a5eea84318bdef5081b0d143f107 Parents: 42effa4 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 22:53:52 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 22:54:09 2015 +0200 -- .../src/main/java/org/apache/camel/model/WireTapDefinition.java | 3 +++ 1 file changed, 3 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/01dead92/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java -- diff --git a/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java b/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java index 4cf47a1..22a1e22 100644 --- a/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java @@ -73,6 +73,9 @@ public class WireTapDefinitionType extends ProcessorDefinitionType extends T boolean shutdownThreadPool = ProcessorDefinitionHelper.willCreateNewThreadPool(routeContext, this, true); ExecutorService threadPool = ProcessorDefinitionHelper.getConfiguredExecutorService(routeContext, WireTap, this, true); +// must use InOnly for WireTap +setPattern(ExchangePattern.InOnly); + // create the send dynamic producer to send to the wire tapped endpoint SendDynamicProcessor dynamicTo = (SendDynamicProcessor) super.createProcessor(routeContext);
[1/7] camel git commit: CAMEL-8965: WireTap supports dynamic uris like enrich/pollEnrich now does.
Repository: camel Updated Branches: refs/heads/master d14fa8c45 - 01dead92e CAMEL-8965: WireTap supports dynamic uris like enrich/pollEnrich now does. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/2696b57b Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/2696b57b Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/2696b57b Branch: refs/heads/master Commit: 2696b57b831712548d10be1651e053685d6e25da Parents: d14fa8c Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 16:18:35 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 22:54:07 2015 +0200 -- .../apache/camel/model/ProcessorDefinition.java | 88 - .../apache/camel/model/WireTapDefinition.java | 125 +++ .../camel/processor/WireTapProcessor.java | 42 +++ ...outeRemoveWireTapExplicitThreadPoolTest.java | 2 +- .../camel/processor/CBRWithWireTapTest.java | 4 +- .../camel/processor/WireTapCustomPool2Test.java | 2 +- .../camel/processor/WireTapNewExchangeTest.java | 2 +- .../processor/WireTapOnPrepareRefTest.java | 2 +- .../camel/processor/WireTapOnPrepareTest.java | 2 +- ...eTapUsingFireAndForgetCopyAsDefaultTest.java | 4 +- .../WireTapUsingFireAndForgetCopyTest.java | 4 +- .../FileWireTapWithXMLPayloadIssueTest.xml | 4 +- .../SpringAggregateFromWireTapTest.xml | 4 +- .../processor/SpringComplexBlockWithEndTest.xml | 4 +- .../processor/SpringWireTapNewExchangeTest.xml | 3 +- .../spring/processor/SpringWireTapTest.xml | 10 +- .../SpringWireTapUsingFireAndForgetCopyTest.xml | 7 +- .../SpringWireTapUsingFireAndForgetTest.xml | 7 +- .../spring/processor/WireTapOnPrepareTest.xml | 4 +- 19 files changed, 133 insertions(+), 187 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/2696b57b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java -- diff --git a/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java index 17ccb0e..91d0e6f 100644 --- a/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java @@ -1471,6 +1471,7 @@ public abstract class ProcessorDefinitionType extends ProcessorDefinitionType addOutput(answer); return ExpressionClause.createAndSetExpression(answer); } + /** * a href=http://camel.apache.org/load-balancer.html;Load Balancer EIP:/a * Creates a loadbalance @@ -2255,14 +2256,28 @@ public abstract class ProcessorDefinitionType extends ProcessorDefinitionType * destination gets a copy of the original message to avoid the processors * interfering with each other using {@link ExchangePattern#InOnly}. * + * @return the builder + */ +public ExpressionClauseWireTapDefinition wireTap() { +WireTapDefinition answer = new WireTapDefinition(); +addOutput(answer); +return ExpressionClause.createAndSetExpression(answer); +} + +/** + * a href=http://camel.apache.org/wiretap.html;WireTap EIP:/a + * Sends messages to all its child outputs; so that each processor and + * destination gets a copy of the original message to avoid the processors + * interfering with each other using {@link ExchangePattern#InOnly}. + * * @param uri the destination * @return the builder */ -public WireTapDefinitionType wireTap(String uri) { -WireTapDefinitionType answer = new WireTapDefinitionType(); -answer.setUri(uri); +public Type wireTap(String uri) { +WireTapDefinition answer = new WireTapDefinition(); +answer.setExpression(new SimpleExpression(uri)); addOutput(answer); -return answer; +return (Type) this; } /** @@ -2275,15 +2290,13 @@ public abstract class ProcessorDefinitionType extends ProcessorDefinitionType * @param executorService a custom {@link ExecutorService} to use as thread pool * for sending tapped exchanges * @return the builder - * @deprecated use the fluent builder from {@link WireTapDefinition}, will be removed in Camel 3.0 */ -@Deprecated -public WireTapDefinitionType wireTap(String uri, ExecutorService executorService) { -WireTapDefinitionType answer = new WireTapDefinitionType(); -answer.setUri(uri); +public Type wireTap(String uri, ExecutorService executorService) { +WireTapDefinition answer = new WireTapDefinition(); +answer.setExpression(new SimpleExpression(uri));
[6/7] camel git commit: Upgrade RX
Upgrade RX Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/42effa45 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/42effa45 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/42effa45 Branch: refs/heads/master Commit: 42effa45703e55eb22212db33c3d680881b81f39 Parents: 8ba9da1 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 21:58:22 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 22:54:09 2015 +0200 -- parent/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/42effa45/parent/pom.xml -- diff --git a/parent/pom.xml b/parent/pom.xml index 2e941628..afcb098 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -414,7 +414,7 @@ rhino-version1.7R2/rhino-version rome-bundle-version1.0_3/rome-bundle-version rome-version1.0/rome-version -rxjava-version1.0.12/rxjava-version +rxjava-version1.0.13/rxjava-version saaj-impl-version1.3.2_2/saaj-impl-version saxon-bundle-version9.5.1-5_1/saxon-bundle-version saxon-version9.5.1-5/saxon-version
[3/7] camel git commit: CAMEL-8965: WireTap supports dynamic uris like enrich/pollEnrich now does.
CAMEL-8965: WireTap supports dynamic uris like enrich/pollEnrich now does. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/b269ae57 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/b269ae57 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/b269ae57 Branch: refs/heads/master Commit: b269ae570314bd45f122a24ed4a92ef18f86c7f3 Parents: 2696b57 Author: Claus Ibsen davscl...@apache.org Authored: Mon Jul 20 16:51:06 2015 +0200 Committer: Claus Ibsen davscl...@apache.org Committed: Mon Jul 20 22:54:08 2015 +0200 -- .../apache/camel/model/ProcessorDefinition.java | 16 +++ .../apache/camel/model/WireTapDefinition.java | 3 +- .../camel/processor/SendDynamicProcessor.java | 5 ++ .../model/GatherAllStaticEndpointUrisTest.java | 2 +- .../camel/processor/WireTapExpressionTest.java | 49 .../processor/SpringWireTapExpressionTest.java | 32 + .../processor/SpringWireTapExpressionTest.xml | 37 +++ 7 files changed, 142 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/b269ae57/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java -- diff --git a/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java index 91d0e6f..57bf273 100644 --- a/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java @@ -2270,6 +2270,22 @@ public abstract class ProcessorDefinitionType extends ProcessorDefinitionType * destination gets a copy of the original message to avoid the processors * interfering with each other using {@link ExchangePattern#InOnly}. * + * @param expression the expression to compute the uri to use as wire tap + * @return the builder + */ +public Type wireTap(Expression expression) { +WireTapDefinition answer = new WireTapDefinition(); +answer.setExpression(new ExpressionDefinition(expression)); +addOutput(answer); +return (Type) this; +} + +/** + * a href=http://camel.apache.org/wiretap.html;WireTap EIP:/a + * Sends messages to all its child outputs; so that each processor and + * destination gets a copy of the original message to avoid the processors + * interfering with each other using {@link ExchangePattern#InOnly}. + * * @param uri the destination * @return the builder */ http://git-wip-us.apache.org/repos/asf/camel/blob/b269ae57/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java -- diff --git a/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java b/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java index ebe95b1..64e339e 100644 --- a/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java @@ -73,7 +73,8 @@ public class WireTapDefinition extends NoOutputExpressionNode implements Executo ExecutorService threadPool = ProcessorDefinitionHelper.getConfiguredExecutorService(routeContext, WireTap, this, true); // create the send dynamic producer to send to the wire tapped endpoint -Processor dynamicTo = new SendDynamicProcessor(null, getExpression()); +SendDynamicProcessor dynamicTo = new SendDynamicProcessor(getExpression()); +dynamicTo.setCamelContext(routeContext.getCamelContext()); // create error handler we need to use for processing the wire tapped Processor target = wrapInErrorHandler(routeContext, dynamicTo); http://git-wip-us.apache.org/repos/asf/camel/blob/b269ae57/camel-core/src/main/java/org/apache/camel/processor/SendDynamicProcessor.java -- diff --git a/camel-core/src/main/java/org/apache/camel/processor/SendDynamicProcessor.java b/camel-core/src/main/java/org/apache/camel/processor/SendDynamicProcessor.java index b207ba5..bdde81e 100644 --- a/camel-core/src/main/java/org/apache/camel/processor/SendDynamicProcessor.java +++ b/camel-core/src/main/java/org/apache/camel/processor/SendDynamicProcessor.java @@ -54,6 +54,11 @@ public class SendDynamicProcessor extends ServiceSupport implements AsyncProcess protected boolean ignoreInvalidEndpoint; protected int cacheSize; +public SendDynamicProcessor(Expression expression) { +this.uri = null; +this.expression = expression; +} + public SendDynamicProcessor(String uri,
camel git commit: Upgrade Scala Maven Plugin to version 3.2.1
Repository: camel Updated Branches: refs/heads/master c3e86695e - d14fa8c45 Upgrade Scala Maven Plugin to version 3.2.1 Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/d14fa8c4 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/d14fa8c4 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/d14fa8c4 Branch: refs/heads/master Commit: d14fa8c4544213dc6728f80db229caed70c51502 Parents: c3e8669 Author: Andrea Cosentino anco...@gmail.com Authored: Mon Jul 20 21:57:11 2015 +0200 Committer: Andrea Cosentino anco...@gmail.com Committed: Mon Jul 20 21:57:11 2015 +0200 -- parent/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/d14fa8c4/parent/pom.xml -- diff --git a/parent/pom.xml b/parent/pom.xml index 8a76192..2e941628 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -420,7 +420,7 @@ saxon-version9.5.1-5/saxon-version scala-version2.11.7/scala-version scala-2.10-version2.10.4/scala-2.10-version -scala-maven-plugin-version3.2.0/scala-maven-plugin-version +scala-maven-plugin-version3.2.1/scala-maven-plugin-version scalatest-version2.2.5/scalatest-version scalaxml-version1.0.4/scalaxml-version scribe-version1.3.7/scribe-version
camel git commit: CAMEL-8988 - can't manually trigger a quartz2 job
Repository: camel Updated Branches: refs/heads/master a93800e6e - 32b5c8923 CAMEL-8988 - can't manually trigger a quartz2 job Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/32b5c892 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/32b5c892 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/32b5c892 Branch: refs/heads/master Commit: 32b5c8923e6207e987b1234ef795c498254852e5 Parents: a93800e Author: Jonathan Anstey jans...@gmail.com Authored: Mon Jul 20 16:39:10 2015 -0230 Committer: Jonathan Anstey jans...@gmail.com Committed: Mon Jul 20 16:40:00 2015 -0230 -- .../camel/component/quartz2/CamelJob.java | 19 ++ .../quartz2/QuartzManuallyTriggerJobTest.java | 66 2 files changed, 85 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/32b5c892/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java -- diff --git a/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java b/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java index 3e74abc..ff97347 100644 --- a/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java +++ b/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java @@ -16,12 +16,16 @@ */ package org.apache.camel.component.quartz2; +import java.util.Collection; +import java.util.Map; + import org.apache.camel.CamelContext; import org.apache.camel.CamelExchangeException; import org.apache.camel.DelegateEndpoint; import org.apache.camel.Endpoint; import org.apache.camel.Exchange; import org.apache.camel.Route; +import org.apache.camel.util.EndpointHelper; import org.quartz.Job; import org.quartz.JobDetail; import org.quartz.JobExecutionContext; @@ -121,6 +125,7 @@ public class CamelJob implements Job { // fallback and lookup existing from registry (eg maybe a @Consume POJO with a quartz endpoint, and thus not from a route) String endpointUri = quartzContext.getMergedJobDataMap().getString(QuartzConstants.QUARTZ_ENDPOINT_URI); + QuartzEndpoint result = null; // Even though the same camelContext.getEndpoint call, but if/else display different log. @@ -129,6 +134,10 @@ public class CamelJob implements Job { LOG.debug(Getting Endpoint from camelContext.); } result = camelContext.getEndpoint(endpointUri, QuartzEndpoint.class); +} else if ((result = searchForEndpointMatch(camelContext, endpointUri)) != null) { +if (LOG.isDebugEnabled()) { +LOG.debug(Found match for endpoint URI = + endpointUri + by searching endpoint list.); +} } else { LOG.warn(Cannot find existing QuartzEndpoint with uri: {}. Creating new endpoint instance., endpointUri); result = camelContext.getEndpoint(endpointUri, QuartzEndpoint.class); @@ -139,4 +148,14 @@ public class CamelJob implements Job { return result; } + +protected QuartzEndpoint searchForEndpointMatch(CamelContext camelContext, String endpointUri) { +CollectionEndpoint endpoints = camelContext.getEndpoints(); +for (Endpoint endpoint : endpoints) { +if (endpointUri.equals(endpoint.getEndpointUri())) { +return (QuartzEndpoint) endpoint; +} +} +return null; +} } http://git-wip-us.apache.org/repos/asf/camel/blob/32b5c892/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/QuartzManuallyTriggerJobTest.java -- diff --git a/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/QuartzManuallyTriggerJobTest.java b/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/QuartzManuallyTriggerJobTest.java new file mode 100644 index 000..4b8991b --- /dev/null +++ b/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/QuartzManuallyTriggerJobTest.java @@ -0,0 +1,66 @@ +/** + * 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
camel git commit: CAMEL-8988 - can't manually trigger a quartz2 job
Repository: camel Updated Branches: refs/heads/camel-2.15.x e8b81a9bf - fa3e160a0 CAMEL-8988 - can't manually trigger a quartz2 job Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/fa3e160a Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/fa3e160a Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/fa3e160a Branch: refs/heads/camel-2.15.x Commit: fa3e160a0928fd699c58bd89b579c4c251d78e58 Parents: e8b81a9 Author: Jonathan Anstey jans...@gmail.com Authored: Mon Jul 20 16:39:10 2015 -0230 Committer: Jonathan Anstey jans...@gmail.com Committed: Mon Jul 20 16:40:31 2015 -0230 -- .../camel/component/quartz2/CamelJob.java | 19 ++ .../quartz2/QuartzManuallyTriggerJobTest.java | 66 2 files changed, 85 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/fa3e160a/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java -- diff --git a/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java b/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java index 3e74abc..ff97347 100644 --- a/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java +++ b/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/CamelJob.java @@ -16,12 +16,16 @@ */ package org.apache.camel.component.quartz2; +import java.util.Collection; +import java.util.Map; + import org.apache.camel.CamelContext; import org.apache.camel.CamelExchangeException; import org.apache.camel.DelegateEndpoint; import org.apache.camel.Endpoint; import org.apache.camel.Exchange; import org.apache.camel.Route; +import org.apache.camel.util.EndpointHelper; import org.quartz.Job; import org.quartz.JobDetail; import org.quartz.JobExecutionContext; @@ -121,6 +125,7 @@ public class CamelJob implements Job { // fallback and lookup existing from registry (eg maybe a @Consume POJO with a quartz endpoint, and thus not from a route) String endpointUri = quartzContext.getMergedJobDataMap().getString(QuartzConstants.QUARTZ_ENDPOINT_URI); + QuartzEndpoint result = null; // Even though the same camelContext.getEndpoint call, but if/else display different log. @@ -129,6 +134,10 @@ public class CamelJob implements Job { LOG.debug(Getting Endpoint from camelContext.); } result = camelContext.getEndpoint(endpointUri, QuartzEndpoint.class); +} else if ((result = searchForEndpointMatch(camelContext, endpointUri)) != null) { +if (LOG.isDebugEnabled()) { +LOG.debug(Found match for endpoint URI = + endpointUri + by searching endpoint list.); +} } else { LOG.warn(Cannot find existing QuartzEndpoint with uri: {}. Creating new endpoint instance., endpointUri); result = camelContext.getEndpoint(endpointUri, QuartzEndpoint.class); @@ -139,4 +148,14 @@ public class CamelJob implements Job { return result; } + +protected QuartzEndpoint searchForEndpointMatch(CamelContext camelContext, String endpointUri) { +CollectionEndpoint endpoints = camelContext.getEndpoints(); +for (Endpoint endpoint : endpoints) { +if (endpointUri.equals(endpoint.getEndpointUri())) { +return (QuartzEndpoint) endpoint; +} +} +return null; +} } http://git-wip-us.apache.org/repos/asf/camel/blob/fa3e160a/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/QuartzManuallyTriggerJobTest.java -- diff --git a/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/QuartzManuallyTriggerJobTest.java b/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/QuartzManuallyTriggerJobTest.java new file mode 100644 index 000..4b8991b --- /dev/null +++ b/components/camel-quartz2/src/test/java/org/apache/camel/component/quartz2/QuartzManuallyTriggerJobTest.java @@ -0,0 +1,66 @@ +/** + * 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 + *
camel git commit: CAMEL-8989 - sjms drops null body messages
Repository: camel Updated Branches: refs/heads/master 32b5c8923 - 13635fc41 CAMEL-8989 - sjms drops null body messages Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/13635fc4 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/13635fc4 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/13635fc4 Branch: refs/heads/master Commit: 13635fc415faa461c59c1cff20090aeeb85c1441 Parents: 32b5c89 Author: Jonathan Anstey jans...@gmail.com Authored: Mon Jul 20 17:10:32 2015 -0230 Committer: Jonathan Anstey jans...@gmail.com Committed: Mon Jul 20 17:10:32 2015 -0230 -- .../camel/component/jms/JmsRouteTest.java | 10 .../component/sjms/producer/InOnlyProducer.java | 3 ++ .../sjms/consumer/EmptyMessageBodyTest.java | 48 3 files changed, 61 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/13635fc4/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java -- diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java index fb95843..908ae1c 100644 --- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java +++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java @@ -40,6 +40,16 @@ public class JmsRouteTest extends CamelTestSupport { assertSendAndReceiveBody(Hello there!); } +@Test +public void testSendEmptyMessage() throws Exception { +resultEndpoint.expectedMessageCount(2); + +sendExchange(); +sendExchange(null); + +resultEndpoint.assertIsSatisfied(); +} + protected void assertSendAndReceiveBody(Object expectedBody) throws InterruptedException { resultEndpoint.expectedBodiesReceived(expectedBody); resultEndpoint.message(0).header(cheese).isEqualTo(123); http://git-wip-us.apache.org/repos/asf/camel/blob/13635fc4/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java -- diff --git a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java index 253edbd..71f5770 100644 --- a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java +++ b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java @@ -104,6 +104,9 @@ public class InOnlyProducer extends SjmsProducer { Message message = JmsMessageHelper.createMessage(producer.getSession(), payload, exchange.getIn().getHeaders(), getEndpoint()); messages.add(message); } +} else { +Message message = JmsMessageHelper.createMessage(producer.getSession(), null, exchange.getIn().getHeaders(), getEndpoint()); +messages.add(message); } if (isEndpointTransacted()) { http://git-wip-us.apache.org/repos/asf/camel/blob/13635fc4/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/consumer/EmptyMessageBodyTest.java -- diff --git a/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/consumer/EmptyMessageBodyTest.java b/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/consumer/EmptyMessageBodyTest.java new file mode 100644 index 000..b798bd1 --- /dev/null +++ b/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/consumer/EmptyMessageBodyTest.java @@ -0,0 +1,48 @@ +/** + * 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.sjms.consumer; + +import org.apache.camel.Exchange; +import
camel git commit: CAMEL-8989 - sjms drops null body messages
Repository: camel Updated Branches: refs/heads/camel-2.15.x fa3e160a0 - 9ff5aadd0 CAMEL-8989 - sjms drops null body messages Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/9ff5aadd Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/9ff5aadd Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/9ff5aadd Branch: refs/heads/camel-2.15.x Commit: 9ff5aadd03fa12f5cb3e41081648e7de6d0466dd Parents: fa3e160 Author: Jonathan Anstey jans...@gmail.com Authored: Mon Jul 20 17:10:32 2015 -0230 Committer: Jonathan Anstey jans...@gmail.com Committed: Mon Jul 20 17:11:05 2015 -0230 -- .../camel/component/jms/JmsRouteTest.java | 10 .../component/sjms/producer/InOnlyProducer.java | 3 ++ .../sjms/consumer/EmptyMessageBodyTest.java | 48 3 files changed, 61 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/9ff5aadd/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java -- diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java index fb95843..908ae1c 100644 --- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java +++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteTest.java @@ -40,6 +40,16 @@ public class JmsRouteTest extends CamelTestSupport { assertSendAndReceiveBody(Hello there!); } +@Test +public void testSendEmptyMessage() throws Exception { +resultEndpoint.expectedMessageCount(2); + +sendExchange(); +sendExchange(null); + +resultEndpoint.assertIsSatisfied(); +} + protected void assertSendAndReceiveBody(Object expectedBody) throws InterruptedException { resultEndpoint.expectedBodiesReceived(expectedBody); resultEndpoint.message(0).header(cheese).isEqualTo(123); http://git-wip-us.apache.org/repos/asf/camel/blob/9ff5aadd/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java -- diff --git a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java index 253edbd..71f5770 100644 --- a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java +++ b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/producer/InOnlyProducer.java @@ -104,6 +104,9 @@ public class InOnlyProducer extends SjmsProducer { Message message = JmsMessageHelper.createMessage(producer.getSession(), payload, exchange.getIn().getHeaders(), getEndpoint()); messages.add(message); } +} else { +Message message = JmsMessageHelper.createMessage(producer.getSession(), null, exchange.getIn().getHeaders(), getEndpoint()); +messages.add(message); } if (isEndpointTransacted()) { http://git-wip-us.apache.org/repos/asf/camel/blob/9ff5aadd/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/consumer/EmptyMessageBodyTest.java -- diff --git a/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/consumer/EmptyMessageBodyTest.java b/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/consumer/EmptyMessageBodyTest.java new file mode 100644 index 000..b798bd1 --- /dev/null +++ b/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/consumer/EmptyMessageBodyTest.java @@ -0,0 +1,48 @@ +/** + * 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.sjms.consumer; + +import
camel git commit: Upgrade Scalatest to version 2.2.5
Repository: camel Updated Branches: refs/heads/master 13635fc41 - c3e86695e Upgrade Scalatest to version 2.2.5 Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/c3e86695 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/c3e86695 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/c3e86695 Branch: refs/heads/master Commit: c3e86695ed2111c2d833b7288aa433028c558276 Parents: 13635fc Author: Andrea Cosentino anco...@gmail.com Authored: Mon Jul 20 21:01:34 2015 +0200 Committer: Andrea Cosentino anco...@gmail.com Committed: Mon Jul 20 21:48:31 2015 +0200 -- parent/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/c3e86695/parent/pom.xml -- diff --git a/parent/pom.xml b/parent/pom.xml index 757af53..8a76192 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -421,7 +421,7 @@ scala-version2.11.7/scala-version scala-2.10-version2.10.4/scala-2.10-version scala-maven-plugin-version3.2.0/scala-maven-plugin-version -scalatest-version2.2.0/scalatest-version +scalatest-version2.2.5/scalatest-version scalaxml-version1.0.4/scalaxml-version scribe-version1.3.7/scribe-version scribe-bundle-version1.3.7_1/scribe-bundle-version
svn commit: r959055 [3/3] - in /websites/production/camel/content: book-in-one-page.html book-pattern-appendix.html cache/main.pageCache camel-2160-release.html message-endpoint.html wire-tap.html
Modified: websites/production/camel/content/wire-tap.html == --- websites/production/camel/content/wire-tap.html (original) +++ websites/production/camel/content/wire-tap.html Mon Jul 20 20:19:47 2015 @@ -86,14 +86,14 @@ tbody tr td valign=top width=100% -div class=wiki-content maincontenth3 id=WireTap-WireTapWire Tap/h3pa shape=rect class=external-link href=http://www.enterpriseintegrationpatterns.com/WireTap.html; rel=nofollowWire Tap/a (from the a shape=rect href=enterprise-integration-patterns.htmlEIP patterns/a) allows you to route messages to a separate location while they are being forwarded to the ultimate destination./ppspan class=confluence-embedded-file-wrapperimg class=confluence-embedded-image confluence-external-resource src=http://www.enterpriseintegrationpatterns.com/img/WireTap.gif; data-image-src=http://www.enterpriseintegrationpatterns.com/img/WireTap.gif;/span/pdiv class=confluence-information-macro confluence-information-macro-informationp class=titleStreams/pspan class=aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon/spandiv class=confluence-information-macro-bodypIf you a shape=rect href=wire-tap.htmlWire Tap /a a stream message body then you should consider enabling a shape=rect href=stream-caching.htmlStream caching/a to ensure the message body can be read at each endpoint. See more details at a shape=rect href=stream-caching.htmlStream caching/a./p/div/divh3 id=WireTap-OptionsOptions/h3div class=table-wraptable class=confluenceTabletbodytrth colspan=1 rowspan=1 class=confluenceThpName/p/thth colspan=1 rowspan=1 class=confluenceThpDefault Value/p/thth colspan=1 rowspan=1 class=confluenceThpDescription/p/th/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodeuri/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdp#160;/p/tdtd colspan=1 rowspan=1 class=confluenceTdpThe URI of the endpoint to which the wire-tapped message will be sent. You should use either codeuri/code or coderef/code./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdp coderef/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdp#160;/p/tdtd colspan=1 rowspan=1 class=confluenceTdpReference identifier of the endpoint to which the wire-tapped message will be sent. You should use either codeuri/code or coderef/code./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodeexecutorServiceRef/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdp#160;/p/tdtd colspan=1 rowspan=1 class=confluenceTdpReference identifier of a custom a shape=rect href=threading-model.htmlThread Pool/a to use when processing the wire-tapped messages. If not set, Camel will use a default thread pool./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodeprocessorRef/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdp#160;/p/tdtd colspan=1 rowspan=1 class=confluenceTdpReference identifier of a custom a shape=rect href=processor.ht mlProcessor/a to use for creating a new message (e.g., the send a new message mode). See below./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodecopy/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpcodetrue/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdpstrongCamel 2.3/strong: Whether to copy the a shape=rect href=exchange.htmlExchange/a before wire-tapping the message./p/td/trtrtd colspan=1 rowspan=1 class=confluenceTdpcodeonPrepareRef/code/p/tdtd colspan=1 rowspan=1 class=confluenceTdp#160;/p/tdtd colspan=1 rowspan=1 class=confluenceTdpstrongCamel 2.8:/strong Reference identifier of a custom a shape=rect href=processor.htmlProcessor/a to prepare the copy of the a shape=rect href=exchange.htmlExchange/a to be wire-tapped. This allows you to do any custom logic, such as deep-cloning the message payload./p/td/tr/tbody/tab le/divh3 id=WireTap-WireTapthreadpoolWireTap thread pool/h3pThe a shape=rect href=wire-tap.htmlWire Tap/a uses a thread pool to process the tapped messages. This thread pool will by default use the settings detailed at a shape=rect href=threading-model.htmlThreading Model/a. In particular, when the pool is exhausted (with all threads utilized), further wiretaps will be executed synchronously by the calling thread. To remedy this, you can configure an explicit thread pool on the a shape=rect href=wire-tap.htmlWire Tap/a having either a different rejection policy, a larger worker queue, or more worker threads./ph3 id=WireTap-WireTapnodeWireTap node/h3pCamel's Wire Tap node supports two flavors when tapping an a shape=rect href=exchange.htmlExchange/a:/pp-With the traditional Wire Tap, Camel will copy the original a shape=rect href=exchange.htmlExchange/a and set its a shape=rect href=exchange-pattern.htmlExchange P attern/a to InOnly, as we want the tapped a shape=rect href=exchange.htmlExchange/a to be sent in a fire and forget style. The tapped a shape=rect href=exchange.htmlExchange/a is then
svn commit: r959055 [1/3] - in /websites/production/camel/content: book-in-one-page.html book-pattern-appendix.html cache/main.pageCache camel-2160-release.html message-endpoint.html wire-tap.html
Author: buildbot Date: Mon Jul 20 20:19:47 2015 New Revision: 959055 Log: Production update by buildbot for camel Modified: websites/production/camel/content/book-in-one-page.html websites/production/camel/content/book-pattern-appendix.html websites/production/camel/content/cache/main.pageCache websites/production/camel/content/camel-2160-release.html websites/production/camel/content/message-endpoint.html websites/production/camel/content/wire-tap.html Modified: websites/production/camel/content/book-in-one-page.html == --- websites/production/camel/content/book-in-one-page.html (original) +++ websites/production/camel/content/book-in-one-page.html Mon Jul 20 20:19:47 2015 @@ -3683,11 +3683,11 @@ The tutorial has been designed in two pa While not actual tutorials you might find working through the source of the various a shape=rect href=examples.htmlExamples/a useful./li/ul h2 id=BookInOnePage-TutorialonSpringRemotingwithJMSTutorial on Spring Remoting with JMS/h2p#160;/pdiv class=confluence-information-macro confluence-information-macro-informationp class=titleThanks/pspan class=aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon/spandiv class=confluence-information-macro-bodypThis tutorial was kindly donated to Apache Camel by Martin Gilday./p/div/divh2 id=BookInOnePage-PrefacePreface/h2pThis tutorial aims to guide the reader through the stages of creating a project which uses Camel to facilitate the routing of messages from a JMS queue to a a shape=rect class=external-link href=http://www.springramework.org; rel=nofollowSpring/a service. The route works in a synchronous fashion returning a response to the client./ppstyle type=text/css/*![CDATA[*/ -div.rbtoc1437418418860 {padding: 0px;} -div.rbtoc1437418418860 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1437418418860 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1437423480342 {padding: 0px;} +div.rbtoc1437423480342 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1437423480342 li {margin-left: 0px;padding-left: 0px;} -/*]]*//style/pdiv class=toc-macro rbtoc1437418418860 +/*]]*//style/pdiv class=toc-macro rbtoc1437423480342 ul class=toc-indentationlia shape=rect href=#BookInOnePage-TutorialonSpringRemotingwithJMSTutorial on Spring Remoting with JMS/a/lilia shape=rect href=#BookInOnePage-PrefacePreface/a/lilia shape=rect href=#BookInOnePage-PrerequisitesPrerequisites/a/lilia shape=rect href=#BookInOnePage-DistributionDistribution/a/lilia shape=rect href=#BookInOnePage-AboutAbout/a/lilia shape=rect href=#BookInOnePage-CreatetheCamelProjectCreate the Camel Project/a ul class=toc-indentationlia shape=rect href=#BookInOnePage-UpdatethePOMwithDependenciesUpdate the POM with Dependencies/a/li/ul /lilia shape=rect href=#BookInOnePage-WritingtheServerWriting the Server/a @@ -5787,11 +5787,11 @@ So we completed the last piece in the pi pThis example has been removed from strongCamel 2.9/strong onwards. Apache Axis 1.4 is a very old and unsupported framework. We encourage users to use a shape=rect href=cxf.htmlCXF/a instead of Axis./p/div/div style type=text/css/*![CDATA[*/ -div.rbtoc1437418419584 {padding: 0px;} -div.rbtoc1437418419584 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1437418419584 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1437423481132 {padding: 0px;} +div.rbtoc1437423481132 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1437423481132 li {margin-left: 0px;padding-left: 0px;} -/*]]*//stylediv class=toc-macro rbtoc1437418419584 +/*]]*//stylediv class=toc-macro rbtoc1437423481132 ul class=toc-indentationlia shape=rect href=#BookInOnePage-TutorialusingAxis1.4withApacheCamelTutorial using Axis 1.4 with Apache Camel/a ul class=toc-indentationlia shape=rect href=#BookInOnePage-PrerequisitesPrerequisites/a/lilia shape=rect href=#BookInOnePage-DistributionDistribution/a/lilia shape=rect href=#BookInOnePage-IntroductionIntroduction/a/lilia shape=rect href=#BookInOnePage-SettinguptheprojecttorunAxisSetting up the project to run Axis/a ul class=toc-indentationlia shape=rect href=#BookInOnePage-Maven2Maven 2/a/lilia shape=rect href=#BookInOnePage-wsdlwsdl/a/lilia shape=rect href=#BookInOnePage-ConfiguringAxisConfiguring Axis/a/lilia shape=rect href=#BookInOnePage-RunningtheExampleRunning the Example/a/li/ul @@ -12202,7 +12202,7 @@ from(quot;activemq:My.Queuequot;). /div/divpIn the example above the uri is a combination of#160;a shape=rect href=simple.htmlSimple/a#160;language and#160;a shape=rect href=xpath.htmlXPath/a#160;where the first part is simple (simple is default language). And then the plus sign separate to another language, where we specify the language name followed by a colon/pdiv class=code panel pdl style=border-width: 1px;div class=codeContent panelContent pdl script class=brush: java; gutter: false; theme: Default
buildbot success in ASF Buildbot on camel-site-production
The Buildbot has detected a restored build on builder camel-site-production while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/camel-site-production/builds/496 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-cms-slave Build Reason: The Nightly scheduler named 'camel-site-production' triggered this build Build Source Stamp: [branch camel/website] HEAD Blamelist: Build succeeded! Sincerely, -The Buildbot
svn commit: r959055 [2/3] - in /websites/production/camel/content: book-in-one-page.html book-pattern-appendix.html cache/main.pageCache camel-2160-release.html message-endpoint.html wire-tap.html
Modified: websites/production/camel/content/camel-2160-release.html == --- websites/production/camel/content/camel-2160-release.html (original) +++ websites/production/camel/content/camel-2160-release.html Mon Jul 20 20:19:47 2015 @@ -84,7 +84,7 @@ tbody tr td valign=top width=100% -div class=wiki-content maincontenth1 id=Camel2.16.0Release-Camel2.16.0release(currentlyinprogress)Camel 2.16.0#160;release (currently in progress)/h1div style=padding-right:20px;float:left;margin-left:-20px;pspan class=confluence-embedded-file-wrapperimg class=confluence-embedded-image confluence-external-resource src=http://camel.apache.org/download.data/camel-box-v1.0-150x200.png; data-image-src=http://camel.apache.org/download.data/camel-box-v1.0-150x200.png;/span/p/divdiv style=min-height:200px#160;/divh2 id=Camel2.16.0Release-NewandNoteworthyNew and Noteworthy/h2pWelcome to the 2.16.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)/ppNoteworthy improvements:/pulliThe route models (definition classes) preserve property placeholders, which allows round trip editing, and also prevents showing potential sensitive information/liliAdded onPrepareFailure option to#160;a shape =rect href=dead-letter-channel.htmlDead Letter Channel/a to allow a custom processor to prepare the Exchange before sending to the dead letter queue./lilia shape=rect href=mongodb.htmlMongoDB/a tailable consumers now allow setting the codereadPreference/code option./liliUsing setFaultBody / setFaultHeader behaves similar to setBody / setHeader to preserve existing headers/attachments by setting on existing IN or OUT message./liliJava DSL using choice with end vs endChoice now validates you use them as intended. Any misconfiguration now throws an exception explaining the problem./lilia shape=rect href=pojo-producing.htmlPOJO Producing/a and#160;a shape=rect href=pojo-consuming.htmlPOJO Consuming/a lifecycle is now in sync with a shape=rect href=camelcontext.htmlCamelContext/a#160;which ensures it works as similar to Camel#160;a shape=rect href=routes.htmlRoutes/a does. Also the created producer/consumer is stopped when#160;a shape=rect href=camelcontext.htmlCamelContext/a#160;is stopping to cleanup properly./lilia shape=rect href=jms.htmlJMS/a#160;component now allows configuring concurrentConsumers/maxConcurrentConsumers separately between from(jms) vs to(jms) using request/reply over JMS/lilispana shape=rect class=external-link href=https://issues.apache.org/jira/browse/CAMEL-8506;Added SEARCH/a operation to Elasticsearch component/span/lilispanThe#160;a shape=rect href=properties.htmlProperties/a component (property placeholder) now supports an encoding option to allow reading the .properties files using a specific charset such as UTF-8. By default ISO-8859-1 is used (latin1)/span/lilispanAdded#160;codereceviveBufferSize/code option to the a shape=rect href=ftp.htmlFTP/a#160;component to make download faster. The size is by default 32kb buffer./span/lilispanThe#160;a shape=rect href=aggregator2.html Aggregator2/a EIP now allows an external source using a#160;codeAggregateController/code to control the aggregator, such as for forcing completing a group or all groups, or query runtime information from the aggregator. A default controller is provided out of the box if none has been configured./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now enlists in JMX using a#160;codeManagedAggregateProcessorMBean/code which has more information, and also allows using the aggregate controller to control it./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now includes more runtime statistics which can be accessed from Java and JMX about number of incoming and completed exchanges, and per different completion triggers./span/lilispanThe#160;a shape=rect href=aggregator2.htmlAggregator2/a now supports pre-completion mode if the aggregation strategy implements#160;codePreCompletionAwareAg gregationStrategy/code. This supports the use-case where an incoming Exchange are used to determine if the current aggregated group is completed or not. If completed the group is emitted as-is, and the new incoming Exchange is used to start a new group from scratch./span/lilispanAdded options to#160;a shape=rect href=mail.htmlMail/a consumer so it can skip or handle a mail message that cannot be read from the mail server in the batch; and then move on to read the next message. This ensures the consumer can deal with mail boxes that has problematic mails that otherwise will cause no mails to be retrieve by the consumer in the batch./span/liliThe runtime route processors and their corresponding model definition are now linked by their id using codeHasId/code, so its easier to obtain the processor or model definition from the
buildbot failure in ASF Buildbot on camel-site-production
The Buildbot has detected a new failure on builder camel-site-production while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/camel-site-production/builds/495 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-cms-slave Build Reason: The Nightly scheduler named 'camel-site-production' triggered this build Build Source Stamp: [branch camel/website] HEAD Blamelist: BUILD FAILED: failed compile Sincerely, -The Buildbot
camel git commit: Improved logging.
Repository: camel Updated Branches: refs/heads/master da9f0f773 - ebf0f8dff Improved logging. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/ebf0f8df Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/ebf0f8df Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/ebf0f8df Branch: refs/heads/master Commit: ebf0f8dffe4d87fa906d5dde662d3e1db246393f Parents: da9f0f7 Author: Henryk Konsek hekon...@gmail.com Authored: Mon Jul 20 17:16:28 2015 +0200 Committer: Henryk Konsek hekon...@gmail.com Committed: Mon Jul 20 17:16:28 2015 +0200 -- .../main/java/org/apache/camel/component/vertx/VertxComponent.java | 2 ++ 1 file changed, 2 insertions(+) -- http://git-wip-us.apache.org/repos/asf/camel/blob/ebf0f8df/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 index cf4a326..2478c24 100644 --- 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 @@ -191,6 +191,8 @@ public class VertxComponent extends UriEndpointComponent implements EndpointComp LOG.info(Waiting for EventBus to be ready using {} sec as timeout, timeout); latch.await(timeout, TimeUnit.SECONDS); } +} else { +LOG.debug(Using Vert.x instance set on the component level.); } }