You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2017/01/22 18:51:47 UTC

[01/11] camel git commit: CAMEL-10546: Remove the use of the deprecated api in camel-spring-boot

Repository: camel
Updated Branches:
  refs/heads/master bac2b54c9 -> 06c6cd757


CAMEL-10546: Remove the use of the deprecated api in camel-spring-boot


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

Branch: refs/heads/master
Commit: a15893955a135daaeeb8751cad5cf2beb06d7795
Parents: 116a09a
Author: aldettinger <al...@gmail.com>
Authored: Sun Jan 22 17:18:15 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 18:06:43 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/camel/spring/boot/CamelAutoConfiguration.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/a1589395/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/CamelAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/CamelAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/CamelAutoConfiguration.java
index fd6275f..4870a65 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/CamelAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/CamelAutoConfiguration.java
@@ -113,7 +113,7 @@ public class CamelAutoConfiguration {
         camelContext.getShutdownStrategy().setLogInflightExchangesOnTimeout(config.isShutdownLogInflightExchangesOnTimeout());
 
         if (config.getLogDebugMaxChars() > 0) {
-            camelContext.getProperties().put(Exchange.LOG_DEBUG_BODY_MAX_CHARS, "" + config.getLogDebugMaxChars());
+            camelContext.getGlobalOptions().put(Exchange.LOG_DEBUG_BODY_MAX_CHARS, "" + config.getLogDebugMaxChars());
         }
 
         // stream caching


[11/11] camel git commit: CAMEL-10737: file component should support parent folder in tempFileName

Posted by da...@apache.org.
CAMEL-10737: file component should support parent folder in tempFileName


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

Branch: refs/heads/master
Commit: 06c6cd757c4e4c6cc4ec97fbfa1daf9aeb2cd14d
Parents: 13e5259
Author: Claus Ibsen <da...@apache.org>
Authored: Sun Jan 22 19:20:45 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 19:20:45 2017 +0100

----------------------------------------------------------------------
 .../apache/camel/component/file/GenericFileProducer.java |  3 +++
 .../src/main/java/org/apache/camel/util/FileUtil.java    | 11 ++++++++++-
 .../component/file/FileProduceTempFileNameTest.java      | 11 +++++++++++
 3 files changed, 24 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/06c6cd75/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java b/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java
index b27af40..a4769ec 100644
--- a/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java
+++ b/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java
@@ -389,6 +389,9 @@ public class GenericFileProducer<T> extends DefaultProducer {
             answer = normalizePath(answer);
         }
 
+        // stack path in case the temporary file uses .. paths
+        answer = FileUtil.compactPath(answer, getFileSeparator());
+
         return answer;
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/06c6cd75/camel-core/src/main/java/org/apache/camel/util/FileUtil.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/util/FileUtil.java b/camel-core/src/main/java/org/apache/camel/util/FileUtil.java
index 81585fc..fee4be4 100644
--- a/camel-core/src/main/java/org/apache/camel/util/FileUtil.java
+++ b/camel-core/src/main/java/org/apache/camel/util/FileUtil.java
@@ -267,14 +267,23 @@ public final class FileUtil {
      * and uses OS specific file separators (eg {@link java.io.File#separator}).
      */
     public static String compactPath(String path) {
-        return compactPath(path, File.separatorChar);
+        return compactPath(path, "" + File.separatorChar);
     }
 
     /**
      * Compacts a path by stacking it and reducing <tt>..</tt>,
      * and uses the given separator.
+     *
      */
     public static String compactPath(String path, char separator) {
+        return compactPath(path, "" + separator);
+    }
+
+    /**
+     * Compacts a path by stacking it and reducing <tt>..</tt>,
+     * and uses the given separator.
+     */
+    public static String compactPath(String path, String separator) {
         if (path == null) {
             return null;
         }

http://git-wip-us.apache.org/repos/asf/camel/blob/06c6cd75/camel-core/src/test/java/org/apache/camel/component/file/FileProduceTempFileNameTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/component/file/FileProduceTempFileNameTest.java b/camel-core/src/test/java/org/apache/camel/component/file/FileProduceTempFileNameTest.java
index a136046..243c169 100644
--- a/camel-core/src/test/java/org/apache/camel/component/file/FileProduceTempFileNameTest.java
+++ b/camel-core/src/test/java/org/apache/camel/component/file/FileProduceTempFileNameTest.java
@@ -29,6 +29,7 @@ import org.apache.camel.builder.RouteBuilder;
 public class FileProduceTempFileNameTest extends ContextTestSupport {
 
     private String fileUrl = "file://target/tempandrename/?tempFileName=inprogress-${file:name.noext}.tmp";
+    private String parentFileUrl = "file://target/tempandrename/?tempFileName=../work/${file:name.noext}.tmp";
 
     @Override
     protected void setUp() throws Exception {
@@ -63,6 +64,16 @@ public class FileProduceTempFileNameTest extends ContextTestSupport {
         assertEquals("The generated file should exists: " + file, true, file.exists());
     }
 
+    public void testCreateParentTempFileName() throws Exception {
+        Endpoint endpoint = context.getEndpoint(parentFileUrl);
+        GenericFileProducer<?> producer = (GenericFileProducer<?>) endpoint.createProducer();
+        Exchange exchange = endpoint.createExchange();
+        exchange.getIn().setHeader(Exchange.FILE_NAME, "claus.txt");
+
+        String tempFileName = producer.createTempFileName(exchange, "target/tempandrename/claus.txt");
+        assertDirectoryEquals("target/work/claus.tmp", tempFileName);
+    }
+
     protected RouteBuilder createRouteBuilder() throws Exception {
         return new RouteBuilder() {
             public void configure() throws Exception {


[02/11] camel git commit: CAMEL-10546: Completed with a spring xml test

Posted by da...@apache.org.
CAMEL-10546: Completed with a spring xml test


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

Branch: refs/heads/master
Commit: 3c012b041f2ff1412f185bfb89897c33077c13a7
Parents: 628ceee
Author: aldettinger <al...@gmail.com>
Authored: Sat Jan 21 12:55:49 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 18:06:43 2017 +0100

----------------------------------------------------------------------
 .../xml/AbstractCamelContextFactoryBean.java    |  1 +
 .../spring/handler/CamelNamespaceHandler.java   |  1 +
 .../camel/spring/CamelContextAwareTest.java     |  4 +--
 .../camel/spring/CamelGlobalOptionsTest.java    | 36 ++++++++++++++++++++
 .../apache/camel/spring/camelGlobalOptions.xml  | 36 ++++++++++++++++++++
 5 files changed, 76 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/3c012b04/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
index fb2dd93..e2c1892 100644
--- a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
+++ b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
@@ -175,6 +175,7 @@ public abstract class AbstractCamelContextFactoryBean<T extends ModelCamelContex
         if (getGlobalOptions() != null) {
             mergedOptions.putAll(getGlobalOptions().asMap());
         }
+
         getContext().setGlobalOptions(mergedOptions);
 
         // and enable lazy loading of type converters if applicable

http://git-wip-us.apache.org/repos/asf/camel/blob/3c012b04/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java b/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java
index 12cc996..ff17b4d 100644
--- a/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java
+++ b/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java
@@ -390,6 +390,7 @@ public class CamelNamespaceHandler extends NamespaceHandlerSupport {
                 builder.addPropertyValue("routeRefs", factoryBean.getRouteRefs());
                 builder.addPropertyValue("restRefs", factoryBean.getRestRefs());
                 builder.addPropertyValue("properties", factoryBean.getProperties());
+                builder.addPropertyValue("globalOptions", factoryBean.getGlobalOptions());
                 builder.addPropertyValue("packageScan", factoryBean.getPackageScan());
                 builder.addPropertyValue("contextScan", factoryBean.getContextScan());
                 if (factoryBean.getPackages().length > 0) {

http://git-wip-us.apache.org/repos/asf/camel/blob/3c012b04/components/camel-spring/src/test/java/org/apache/camel/spring/CamelContextAwareTest.java
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/test/java/org/apache/camel/spring/CamelContextAwareTest.java b/components/camel-spring/src/test/java/org/apache/camel/spring/CamelContextAwareTest.java
index 338aefa..bad0a6c 100644
--- a/components/camel-spring/src/test/java/org/apache/camel/spring/CamelContextAwareTest.java
+++ b/components/camel-spring/src/test/java/org/apache/camel/spring/CamelContextAwareTest.java
@@ -33,8 +33,8 @@ public class CamelContextAwareTest extends SpringTestSupport {
     public void testInjectionPoints() throws Exception {
         assertNotNull("No CamelContext injected!", bean1.getCamelContext());
         Map<String, String> globalOptions  = bean1.getCamelContext().getGlobalOptions();
-        assertNotNull("the properties should not been null", globalOptions);
-        assertEquals("No properties injected", globalOptions.size(), 1);
+        assertNotNull("The global options reference should not be null", globalOptions);
+        assertEquals("No global options injected", globalOptions.size(), 1);
         assertEquals("Should get the value of org.apache.camel.test", globalOptions.get("org.apache.camel.test"), "this is a test first");
     }
     

http://git-wip-us.apache.org/repos/asf/camel/blob/3c012b04/components/camel-spring/src/test/java/org/apache/camel/spring/CamelGlobalOptionsTest.java
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/test/java/org/apache/camel/spring/CamelGlobalOptionsTest.java b/components/camel-spring/src/test/java/org/apache/camel/spring/CamelGlobalOptionsTest.java
new file mode 100644
index 0000000..c9bf29c
--- /dev/null
+++ b/components/camel-spring/src/test/java/org/apache/camel/spring/CamelGlobalOptionsTest.java
@@ -0,0 +1,36 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spring;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.springframework.context.support.ClassPathXmlApplicationContext;
+
+public class CamelGlobalOptionsTest extends SpringTestSupport {
+
+    public void testGlobalOptionsOverrideProperties() {
+        assertEquals(3, context.getGlobalOptions().size());
+        assertEquals("VALUE_1", context.getGlobalOptions().get("KEY_1"));
+        assertEquals("VALUE_2_OVERIDDEN", context.getGlobalOptions().get("KEY_2"));
+        assertEquals("VALUE_3", context.getGlobalOptions().get("KEY_3"));
+    }
+
+    @Override
+    protected AbstractXmlApplicationContext createApplicationContext() {
+        return new ClassPathXmlApplicationContext("org/apache/camel/spring/camelGlobalOptions.xml");
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/3c012b04/components/camel-spring/src/test/resources/org/apache/camel/spring/camelGlobalOptions.xml
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/test/resources/org/apache/camel/spring/camelGlobalOptions.xml b/components/camel-spring/src/test/resources/org/apache/camel/spring/camelGlobalOptions.xml
new file mode 100644
index 0000000..c6cf335
--- /dev/null
+++ b/components/camel-spring/src/test/resources/org/apache/camel/spring/camelGlobalOptions.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
+    license agreements. See the NOTICE file distributed with this work for additional 
+    information regarding copyright ownership. The ASF licenses this file to 
+    You under the Apache License, Version 2.0 (the "License"); you may not use 
+    this file except in compliance with the License. You may obtain a copy of 
+    the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+    by applicable law or agreed to in writing, software distributed under the 
+    License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+    OF ANY KIND, either express or implied. See the License for the specific 
+    language governing permissions and limitations under the License. -->
+<beans xmlns="http://www.springframework.org/schema/beans"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="
+       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+       http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd
+    ">
+
+  <camelContext xmlns="http://camel.apache.org/schema/spring">
+    <properties>
+      <property key="KEY_1" value="VALUE_1" />
+      <property key="KEY_2" value="VALUE_2" />
+    </properties>
+
+    <globalOptions>
+      <globalOption key="KEY_2" value="VALUE_2_OVERIDDEN" />
+      <globalOption key="KEY_3" value="VALUE_3" />
+    </globalOptions>
+
+    <route>
+      <from uri="direct:start" />
+      <to uri="log:TEST" />
+    </route>
+
+  </camelContext>
+</beans>


[07/11] camel git commit: CAMEL-10546: Added a test for GlobalOptionsDefinition in camel-core

Posted by da...@apache.org.
CAMEL-10546: Added a test for GlobalOptionsDefinition in camel-core


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

Branch: refs/heads/master
Commit: d9552e390c08f95001c25f37478ae142fa82e663
Parents: 8430133
Author: aldettinger <al...@gmail.com>
Authored: Thu Jan 19 16:17:11 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 18:06:43 2017 +0100

----------------------------------------------------------------------
 .../model/GlobalOptionsDefinitionTest.java      | 53 ++++++++++++++++++++
 1 file changed, 53 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/d9552e39/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java b/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java
new file mode 100644
index 0000000..0e8f78a
--- /dev/null
+++ b/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java
@@ -0,0 +1,53 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.model;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.camel.Exchange;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+public class GlobalOptionsDefinitionTest {
+
+    private static final String LOG_DEBUG_BODY_MAX_CHARS_VALUE = "500";
+
+    private GlobalOptionsDefinition instance;
+
+    @Before
+    public void setup() {
+        GlobalOptionDefinition globalOption = new GlobalOptionDefinition();
+        globalOption.setKey(Exchange.LOG_DEBUG_BODY_MAX_CHARS);
+        globalOption.setValue(LOG_DEBUG_BODY_MAX_CHARS_VALUE);
+        List<GlobalOptionDefinition> globalOptions = new ArrayList<>();
+        globalOptions.add(globalOption);
+        instance = new GlobalOptionsDefinition();
+        instance.setGlobalOptions(globalOptions);
+    }
+
+    @Test
+    public void asMapShouldCarryOnLogDebugMaxChars() {
+        Map<String, String> map = instance.asMap();
+        Assert.assertNotNull(map);
+        Assert.assertEquals(1, map.size());
+        Assert.assertEquals(LOG_DEBUG_BODY_MAX_CHARS_VALUE, map.get(Exchange.LOG_DEBUG_BODY_MAX_CHARS));
+    }
+
+}


[04/11] camel git commit: CAMEL-10546: Deprecated PropertiesDefinition in camel-core

Posted by da...@apache.org.
CAMEL-10546: Deprecated PropertiesDefinition in camel-core


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

Branch: refs/heads/master
Commit: 8430133ad5a9384f6de7510d37c515e7a27cc0e9
Parents: bac2b54
Author: aldettinger <al...@gmail.com>
Authored: Thu Jan 19 16:14:23 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 18:06:43 2017 +0100

----------------------------------------------------------------------
 .../camel/model/GlobalOptionDefinition.java     | 59 +++++++++++++++++++
 .../camel/model/GlobalOptionsDefinition.java    | 62 ++++++++++++++++++++
 .../camel/model/PropertiesDefinition.java       |  3 +
 .../apache/camel/model/PropertyDefinition.java  |  3 +
 .../resources/org/apache/camel/model/jaxb.index |  2 +
 5 files changed, 129 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/8430133a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
new file mode 100644
index 0000000..edbf0bc
--- /dev/null
+++ b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
@@ -0,0 +1,59 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.model;
+
+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.CamelContext;
+import org.apache.camel.Exchange;
+import org.apache.camel.spi.Metadata;
+
+/**
+ * Models a string key/value pair for configuring some global options on
+ * {@link CamelContext} such as {@link Exchange#LOG_DEBUG_BODY_MAX_CHARS}.
+ */
+@Metadata(label = "configuration")
+@XmlRootElement(name = "globalOption")
+@XmlAccessorType(XmlAccessType.FIELD)
+public class GlobalOptionDefinition {
+    @XmlAttribute(required = true)
+    String key;
+    @XmlAttribute(required = true)
+    String value;
+
+    public GlobalOptionDefinition() {
+    }
+
+    public void setKey(String key) {
+        this.key = key;
+    }
+
+    public String getKey() {
+        return key;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    public String getValue() {
+        return value;
+    }
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/8430133a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
new file mode 100644
index 0000000..e936aaf
--- /dev/null
+++ b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
@@ -0,0 +1,62 @@
+/**
+ * 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.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.Exchange;
+import org.apache.camel.spi.Metadata;
+
+/**
+ * Models a series of string key/value pairs for configuring some global options
+ * on {@link CamelContext} such as {@link Exchange#LOG_DEBUG_BODY_MAX_CHARS}.
+ */
+@Metadata(label = "configuration")
+@XmlRootElement(name = "globalOptions")
+@XmlAccessorType(XmlAccessType.FIELD)
+public class GlobalOptionsDefinition {
+    @XmlElement(name = "globalOption")
+    private List<GlobalOptionDefinition> globalOptions;
+
+    public GlobalOptionsDefinition() {
+    }
+
+    public void setGlobalOptions(List<GlobalOptionDefinition> globalOptions) {
+        this.globalOptions = globalOptions;
+    }
+
+    public List<GlobalOptionDefinition> getGlobalOptions() {
+        return globalOptions;
+    }
+
+    public Map<String, String> asMap() {
+        Map<String, String> globalOptionsAsMap = new HashMap<>();
+        for (GlobalOptionDefinition globalOption : getGlobalOptions()) {
+            globalOptionsAsMap.put(globalOption.getKey(), globalOption.getValue());
+        }
+        return globalOptionsAsMap;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/8430133a/camel-core/src/main/java/org/apache/camel/model/PropertiesDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/PropertiesDefinition.java b/camel-core/src/main/java/org/apache/camel/model/PropertiesDefinition.java
index 419e4b9..1b0401a 100644
--- a/camel-core/src/main/java/org/apache/camel/model/PropertiesDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/PropertiesDefinition.java
@@ -28,10 +28,13 @@ import org.apache.camel.spi.Metadata;
 
 /**
  * A series of key value pair
+ *
+ * @deprecated Use {@link GlobalOptionsDefinition} instead.
  */
 @Metadata(label = "configuration")
 @XmlRootElement(name = "properties")
 @XmlAccessorType(XmlAccessType.FIELD)
+@Deprecated
 public class PropertiesDefinition {
     @XmlElement(name = "property")
     private List<PropertyDefinition> properties;

http://git-wip-us.apache.org/repos/asf/camel/blob/8430133a/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java b/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java
index 7f4b02b..c61745c 100644
--- a/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java
@@ -25,10 +25,13 @@ import org.apache.camel.spi.Metadata;
 
 /**
  * A key value pair
+ *
+ * @deprecated Use {@link GlobalOptionDefinition} instead.
  */
 @Metadata(label = "configuration")
 @XmlRootElement(name = "property")
 @XmlAccessorType(XmlAccessType.FIELD)
+@Deprecated
 public class PropertyDefinition {
     @XmlAttribute(required = true)
     String key;

http://git-wip-us.apache.org/repos/asf/camel/blob/8430133a/camel-core/src/main/resources/org/apache/camel/model/jaxb.index
----------------------------------------------------------------------
diff --git a/camel-core/src/main/resources/org/apache/camel/model/jaxb.index b/camel-core/src/main/resources/org/apache/camel/model/jaxb.index
index aef22fa..b1b877d 100644
--- a/camel-core/src/main/resources/org/apache/camel/model/jaxb.index
+++ b/camel-core/src/main/resources/org/apache/camel/model/jaxb.index
@@ -30,6 +30,8 @@ ExpressionSubElementDefinition
 FilterDefinition
 FinallyDefinition
 FromDefinition
+GlobalOptionsDefinition
+GlobalOptionDefinition
 HystrixDefinition
 HystrixConfigurationDefinition
 IdempotentConsumerDefinition


[03/11] camel git commit: CAMEL-10546: Re-written GlobalOptionsDefinition.asMap() more concisely.

Posted by da...@apache.org.
CAMEL-10546: Re-written GlobalOptionsDefinition.asMap() more concisely.


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

Branch: refs/heads/master
Commit: 628ceeeba46ef7139e52ea64d6615ea6d7a541b1
Parents: 6b6ba1c
Author: aldettinger <al...@gmail.com>
Authored: Fri Jan 20 13:59:59 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 18:06:43 2017 +0100

----------------------------------------------------------------------
 .../camel/model/GlobalOptionsDefinition.java    |  8 +--
 .../model/GlobalOptionsDefinitionTest.java      | 51 ++++++++++++++++++--
 2 files changed, 48 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/628ceeeb/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
index c94c0a5..013823f 100644
--- a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
@@ -16,9 +16,9 @@
  */
 package org.apache.camel.model;
 
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import javax.xml.bind.annotation.XmlAccessType;
 import javax.xml.bind.annotation.XmlAccessorType;
@@ -50,11 +50,7 @@ public class GlobalOptionsDefinition {
     }
 
     public Map<String, String> asMap() {
-        Map<String, String> globalOptionsAsMap = new HashMap<>();
-        for (GlobalOptionDefinition globalOption : getGlobalOptions()) {
-            globalOptionsAsMap.put(globalOption.getKey(), globalOption.getValue());
-        }
-        return globalOptionsAsMap;
+        return getGlobalOptions().stream().collect(Collectors.toMap(o -> o.getKey(), o -> o.getValue(), (o1, o2) -> o2));
     }
 
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/628ceeeb/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java b/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java
index 0e8f78a..eac497a 100644
--- a/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java
+++ b/camel-core/src/test/java/org/apache/camel/model/GlobalOptionsDefinitionTest.java
@@ -28,16 +28,25 @@ import org.junit.Test;
 public class GlobalOptionsDefinitionTest {
 
     private static final String LOG_DEBUG_BODY_MAX_CHARS_VALUE = "500";
+    private static final String LOG_DEBUG_BODY_MAX_CHARS_DUP_VALUE = "400";
 
     private GlobalOptionsDefinition instance;
+    private List<GlobalOptionDefinition> globalOptions;
+    private GlobalOptionDefinition nominalOption;
+    private GlobalOptionDefinition duplicateOption;
 
     @Before
     public void setup() {
-        GlobalOptionDefinition globalOption = new GlobalOptionDefinition();
-        globalOption.setKey(Exchange.LOG_DEBUG_BODY_MAX_CHARS);
-        globalOption.setValue(LOG_DEBUG_BODY_MAX_CHARS_VALUE);
-        List<GlobalOptionDefinition> globalOptions = new ArrayList<>();
-        globalOptions.add(globalOption);
+        nominalOption = new GlobalOptionDefinition();
+        nominalOption.setKey(Exchange.LOG_DEBUG_BODY_MAX_CHARS);
+        nominalOption.setValue(LOG_DEBUG_BODY_MAX_CHARS_VALUE);
+
+        duplicateOption = new GlobalOptionDefinition();
+        duplicateOption.setKey(Exchange.LOG_DEBUG_BODY_MAX_CHARS);
+        duplicateOption.setValue(LOG_DEBUG_BODY_MAX_CHARS_DUP_VALUE);
+
+        globalOptions = new ArrayList<>();
+        globalOptions.add(nominalOption);
         instance = new GlobalOptionsDefinition();
         instance.setGlobalOptions(globalOptions);
     }
@@ -50,4 +59,36 @@ public class GlobalOptionsDefinitionTest {
         Assert.assertEquals(LOG_DEBUG_BODY_MAX_CHARS_VALUE, map.get(Exchange.LOG_DEBUG_BODY_MAX_CHARS));
     }
 
+    @Test
+    public void asMapWithDuplicateKeyShouldOverride() {
+        globalOptions.add(duplicateOption);
+        Map<String, String> map = instance.asMap();
+        Assert.assertNotNull(map);
+        Assert.assertEquals(1, map.size());
+        Assert.assertEquals(LOG_DEBUG_BODY_MAX_CHARS_DUP_VALUE, map.get(Exchange.LOG_DEBUG_BODY_MAX_CHARS));
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void asMapWithNullGlobalOptionsShouldThrowNullPointerException() {
+        instance.setGlobalOptions(null);
+        instance.asMap();
+    }
+
+    @Test
+    public void asMapWithEmptyGlobalOptionsShouldReturnEmptyMap() {
+        globalOptions.clear();
+        Map<String, String> map = instance.asMap();
+        Assert.assertNotNull(map);
+        Assert.assertEquals(0, map.size());
+    }
+
+    @Test
+    public void asMapWithNullKeyShouldReturnEmptyMap() {
+        nominalOption.setKey(null);
+        Map<String, String> map = instance.asMap();
+        Assert.assertNotNull(map);
+        Assert.assertEquals(1, map.size());
+        Assert.assertEquals(LOG_DEBUG_BODY_MAX_CHARS_VALUE, map.get(null));
+    }
+
 }


[08/11] camel git commit: CAMEL-10546: Added globalOptions to spring and blueprint schema, globalOptions merge/override properties

Posted by da...@apache.org.
CAMEL-10546: Added globalOptions to spring and blueprint schema, globalOptions merge/override properties


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

Branch: refs/heads/master
Commit: 6b6ba1c31d681ef3456981c2a1d6a31b5cd4928f
Parents: 4d67aee
Author: aldettinger <al...@gmail.com>
Authored: Thu Jan 19 19:28:46 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 18:06:43 2017 +0100

----------------------------------------------------------------------
 .../blueprint/CamelContextFactoryBean.java      | 15 +++++++++++++++
 .../xml/AbstractCamelContextFactoryBean.java    | 12 +++++++++++-
 .../camel/spring/CamelContextFactoryBean.java   | 20 +++++++++++++++++++-
 3 files changed, 45 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/6b6ba1c3/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 0261638..cf8a9e1 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
@@ -45,6 +45,7 @@ import org.apache.camel.core.xml.CamelPropertyPlaceholderDefinition;
 import org.apache.camel.core.xml.CamelServiceExporterDefinition;
 import org.apache.camel.core.xml.CamelStreamCachingStrategyDefinition;
 import org.apache.camel.model.ContextScanDefinition;
+import org.apache.camel.model.GlobalOptionsDefinition;
 import org.apache.camel.model.HystrixConfigurationDefinition;
 import org.apache.camel.model.InterceptDefinition;
 import org.apache.camel.model.InterceptFromDefinition;
@@ -129,8 +130,11 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Blu
     private TypeConverterExists typeConverterExists;
     @XmlAttribute
     private LoggingLevel typeConverterExistsLoggingLevel;
+    @Deprecated
     @XmlElement(name = "properties")
     private PropertiesDefinition properties;
+    @XmlElement(name = "globalOptions")
+    private GlobalOptionsDefinition globalOptions;
     @XmlElement(name = "propertyPlaceholder", type = CamelPropertyPlaceholderDefinition.class)
     private CamelPropertyPlaceholderDefinition camelPropertyPlaceholder;
     @XmlElement(name = "package")
@@ -563,14 +567,25 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Blu
         this.errorHandlerRef = errorHandlerRef;
     }
 
+    @Deprecated
     public PropertiesDefinition getProperties() {
         return properties;
     }
 
+    @Override
+    public GlobalOptionsDefinition getGlobalOptions() {
+        return globalOptions;
+    }
+
+    @Deprecated
     public void setProperties(PropertiesDefinition properties) {
         this.properties = properties;
     }
 
+    public void setGlobalOptions(GlobalOptionsDefinition globalOptions) {
+        this.globalOptions = globalOptions;
+    }
+
     public String[] getPackages() {
         return packages;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/6b6ba1c3/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
index 9014674..fb2dd93 100644
--- a/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
+++ b/components/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
@@ -17,6 +17,7 @@
 package org.apache.camel.core.xml;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
@@ -50,6 +51,7 @@ import org.apache.camel.management.DefaultManagementStrategy;
 import org.apache.camel.management.ManagedManagementStrategy;
 import org.apache.camel.model.ContextScanDefinition;
 import org.apache.camel.model.FromDefinition;
+import org.apache.camel.model.GlobalOptionsDefinition;
 import org.apache.camel.model.IdentifiedType;
 import org.apache.camel.model.InterceptDefinition;
 import org.apache.camel.model.InterceptFromDefinition;
@@ -166,9 +168,15 @@ public abstract class AbstractCamelContextFactoryBean<T extends ModelCamelContex
         }
 
         // then set custom properties
+        Map<String, String> mergedOptions = new HashMap<>();
         if (getProperties() != null) {
-            getContext().setGlobalOptions(getProperties().asMap());
+            mergedOptions.putAll(getProperties().asMap());
         }
+        if (getGlobalOptions() != null) {
+            mergedOptions.putAll(getGlobalOptions().asMap());
+        }
+        getContext().setGlobalOptions(mergedOptions);
+
         // and enable lazy loading of type converters if applicable
         initLazyLoadTypeConverters();
 
@@ -696,7 +704,9 @@ public abstract class AbstractCamelContextFactoryBean<T extends ModelCamelContex
 
     public abstract List<InterceptSendToEndpointDefinition> getInterceptSendToEndpoints();
 
+    @Deprecated
     public abstract PropertiesDefinition getProperties();
+    public abstract GlobalOptionsDefinition getGlobalOptions();
 
     public abstract String[] getPackages();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/6b6ba1c3/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
index 7861c6b..1380a5d 100644
--- a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
+++ b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java
@@ -44,6 +44,7 @@ import org.apache.camel.core.xml.CamelProxyFactoryDefinition;
 import org.apache.camel.core.xml.CamelServiceExporterDefinition;
 import org.apache.camel.core.xml.CamelStreamCachingStrategyDefinition;
 import org.apache.camel.model.ContextScanDefinition;
+import org.apache.camel.model.GlobalOptionsDefinition;
 import org.apache.camel.model.HystrixConfigurationDefinition;
 import org.apache.camel.model.InterceptDefinition;
 import org.apache.camel.model.InterceptFromDefinition;
@@ -138,8 +139,11 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Spr
     private TypeConverterExists typeConverterExists;
     @XmlAttribute @Metadata(defaultValue = "WARN")
     private LoggingLevel typeConverterExistsLoggingLevel;
+    @Deprecated
     @XmlElement(name = "properties")
     private PropertiesDefinition properties;
+    @XmlElement(name = "globalOptions")
+    private GlobalOptionsDefinition globalOptions;
     @XmlElement(name = "propertyPlaceholder", type = CamelPropertyPlaceholderDefinition.class)
     private CamelPropertyPlaceholderDefinition camelPropertyPlaceholder;
     @XmlElement(name = "package")
@@ -493,17 +497,31 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Spr
         this.interceptSendToEndpoints = interceptSendToEndpoints;
     }
 
+    @Deprecated
     public PropertiesDefinition getProperties() {
         return properties;
     }
 
+    @Override
+    public GlobalOptionsDefinition getGlobalOptions() {
+        return globalOptions;
+    }
+
     /**
-     * Configuration of CamelContext properties such as limit of debug logging and other general options.
+     * Configuration of CamelContext properties such as limit of debug logging
+     * and other general options.
+     * 
+     * @deprecated Use {@link GlobalOptionsDefinition} instead.
      */
+    @Deprecated
     public void setProperties(PropertiesDefinition properties) {
         this.properties = properties;
     }
 
+    public void setGlobalOptions(GlobalOptionsDefinition globalOptions) {
+        this.globalOptions = globalOptions;
+    }
+
     public String[] getPackages() {
         return packages;
     }


[05/11] camel git commit: CAMEL-10546: Removed spring xsd polluting javadoc and rolled back the deprecation of PropertyDefinition as its used in purpose for endpoint propertiese

Posted by da...@apache.org.
CAMEL-10546: Removed spring xsd polluting javadoc and rolled back the deprecation of PropertyDefinition as its used in purpose for endpoint propertiese


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

Branch: refs/heads/master
Commit: 4d67aee2323cc829fde644a4049617c08b753675
Parents: d9552e3
Author: aldettinger <al...@gmail.com>
Authored: Thu Jan 19 18:09:15 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 18:06:43 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/camel/model/GlobalOptionDefinition.java    | 6 ++----
 .../java/org/apache/camel/model/GlobalOptionsDefinition.java   | 4 +---
 .../main/java/org/apache/camel/model/PropertyDefinition.java   | 3 ---
 3 files changed, 3 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/4d67aee2/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
index edbf0bc..5eeb1c4 100644
--- a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
@@ -21,13 +21,11 @@ import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlAttribute;
 import javax.xml.bind.annotation.XmlRootElement;
 
-import org.apache.camel.CamelContext;
-import org.apache.camel.Exchange;
 import org.apache.camel.spi.Metadata;
 
 /**
- * Models a string key/value pair for configuring some global options on
- * {@link CamelContext} such as {@link Exchange#LOG_DEBUG_BODY_MAX_CHARS}.
+ * Models a string key/value pair for configuring some global options on a Camel
+ * context such as max debug log length.
  */
 @Metadata(label = "configuration")
 @XmlRootElement(name = "globalOption")

http://git-wip-us.apache.org/repos/asf/camel/blob/4d67aee2/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
index e936aaf..c94c0a5 100644
--- a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
@@ -25,13 +25,11 @@ import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
 
-import org.apache.camel.CamelContext;
-import org.apache.camel.Exchange;
 import org.apache.camel.spi.Metadata;
 
 /**
  * Models a series of string key/value pairs for configuring some global options
- * on {@link CamelContext} such as {@link Exchange#LOG_DEBUG_BODY_MAX_CHARS}.
+ * on a Camel context such as max debug log length.
  */
 @Metadata(label = "configuration")
 @XmlRootElement(name = "globalOptions")

http://git-wip-us.apache.org/repos/asf/camel/blob/4d67aee2/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java b/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java
index c61745c..7f4b02b 100644
--- a/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/PropertyDefinition.java
@@ -25,13 +25,10 @@ import org.apache.camel.spi.Metadata;
 
 /**
  * A key value pair
- *
- * @deprecated Use {@link GlobalOptionDefinition} instead.
  */
 @Metadata(label = "configuration")
 @XmlRootElement(name = "property")
 @XmlAccessorType(XmlAccessType.FIELD)
-@Deprecated
 public class PropertyDefinition {
     @XmlAttribute(required = true)
     String key;


[06/11] camel git commit: CAMEL-10546: Deprecated getProperties() from the camel context management bean

Posted by da...@apache.org.
CAMEL-10546: Deprecated getProperties() from the camel context management bean


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

Branch: refs/heads/master
Commit: 116a09a9d9276d10baf190d43f2ac14a9131b1b9
Parents: 3c012b0
Author: aldettinger <al...@gmail.com>
Authored: Sat Jan 21 14:06:20 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 18:06:43 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/camel/CamelContext.java     |  4 +--
 .../mbean/ManagedCamelContextMBean.java         | 38 +++++++++++++-------
 .../apache/camel/impl/DefaultCamelContext.java  | 10 +++---
 .../management/mbean/ManagedCamelContext.java   | 26 +++++++++++---
 4 files changed, 54 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/116a09a9/camel-core/src/main/java/org/apache/camel/CamelContext.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/CamelContext.java b/camel-core/src/main/java/org/apache/camel/CamelContext.java
index a2beea1..597b685 100644
--- a/camel-core/src/main/java/org/apache/camel/CamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/CamelContext.java
@@ -1303,7 +1303,7 @@ public interface CamelContext extends SuspendableService, RuntimeConfiguration {
     /**
      * @deprecated use {@link #getGlobalOption(String)} instead.
      */
-    String getProperty(String name);
+    String getProperty(String key);
 
     /**
      * Gets the global option value that can be referenced in the camel context
@@ -1315,7 +1315,7 @@ public interface CamelContext extends SuspendableService, RuntimeConfiguration {
      *
      * @return the string value of the global option
      */
-    String getGlobalOption(String name);
+    String getGlobalOption(String key);
 
     /**
      * Gets the default FactoryFinder which will be used for the loading the factory class from META-INF

http://git-wip-us.apache.org/repos/asf/camel/blob/116a09a9/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
index af1de0b..b30e73e 100644
--- a/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
+++ b/camel-core/src/main/java/org/apache/camel/api/management/mbean/ManagedCamelContextMBean.java
@@ -49,9 +49,13 @@ public interface ManagedCamelContextMBean extends ManagedPerformanceCounterMBean
     @ManagedAttribute(description = "Camel Management StatisticsLevel")
     String getManagementStatisticsLevel();
 
+    @Deprecated
     @ManagedAttribute(description = "Camel Properties")
     Map<String, String> getProperties();
 
+    @ManagedAttribute(description = "Camel Global Options")
+    Map<String, String> getGlobalOptions();
+
     @ManagedAttribute(description = "ClassResolver class name")
     String getClassResolver();
 
@@ -61,26 +65,34 @@ public interface ManagedCamelContextMBean extends ManagedPerformanceCounterMBean
     @ManagedAttribute(description = "ApplicationContext class name")
     String getApplicationContextClassName();
 
+    @Deprecated
+    @ManagedOperation(description = "Gets the value of a Camel global option")
+    String getProperty(String key) throws Exception;
+
     /**
-     * Gets the value of a CamelContext property name
+     * Gets the value of a CamelContext global option
      *
-     * @param name the name of the property
-     * @return String the value of the property
-     * @throws Exception is thrown if error occurred
+     * @param key the global option key
+     * @return the global option value
+     * @throws Exception when an error occurred
      */
-    @ManagedOperation(description = "Get the value of a Camel property")
-    String getProperty(String name) throws Exception;
-    
+    @ManagedOperation(description = "Gets the value of a Camel global option")
+    String getGlobalOption(String key) throws Exception;
+
+    @Deprecated
+    @ManagedOperation(description = "Sets the value of a Camel global option")
+    void setProperty(String key, String value) throws Exception;
+
     /**
      * Sets the value of a CamelContext property name
      *
-     * @param name the name of the property
-     * @param value the new value of the property
-     * @throws Exception is thrown if error occurred
+     * @param key the global option key
+     * @param value the global option value
+     * @throws Exception when an error occurred
      */
-    @ManagedOperation(description = "Set the value of a Camel property")
-    void setProperty(String name, String value) throws Exception;
-    
+    @ManagedOperation(description = "Sets the value of a Camel global option")
+    void setGlobalOption(String key, String value) throws Exception;
+
     @ManagedAttribute(description = "Tracing")
     Boolean getTracing();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/116a09a9/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index 2e94289..94f598a 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -4282,18 +4282,18 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon
 
     @Deprecated
     @Override
-    public String getProperty(String name) {
-        return getGlobalOption(name);
+    public String getProperty(String key) {
+        return getGlobalOption(key);
     }
 
     @Override
-    public String getGlobalOption(String name) {
-        String value = getGlobalOptions().get(name);
+    public String getGlobalOption(String key) {
+        String value = getGlobalOptions().get(key);
         if (ObjectHelper.isNotEmpty(value)) {
             try {
                 value = resolvePropertyPlaceholders(value);
             } catch (Exception e) {
-                throw new RuntimeCamelException("Error getting global option: " + name, e);
+                throw new RuntimeCamelException("Error getting global option: " + key, e);
             }
         }
         return value;

http://git-wip-us.apache.org/repos/asf/camel/blob/116a09a9/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
index f983cea..b419ea3 100644
--- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
@@ -143,19 +143,37 @@ public class ManagedCamelContext extends ManagedPerformanceCounter implements Ti
         }
     }
 
+    @Deprecated
     public Map<String, String> getProperties() {
+        return getGlobalOptions();
+    }
+
+    @Override
+    public Map<String, String> getGlobalOptions() {
         if (context.getGlobalOptions().isEmpty()) {
             return null;
         }
         return context.getGlobalOptions();
     }
 
-    public String getProperty(String name) throws Exception {
-        return context.getGlobalOption(name);
+    @Deprecated
+    public String getProperty(String key) throws Exception {
+        return getGlobalOption(key);
     }
 
-    public void setProperty(String name, String value) throws Exception {
-        context.getGlobalOptions().put(name, value);
+    @Override
+    public String getGlobalOption(String key) throws Exception {
+        return context.getGlobalOption(key);
+    }
+
+    @Deprecated
+    public void setProperty(String key, String value) throws Exception {
+        setGlobalOption(key, value);
+    }
+
+    @Override
+    public void setGlobalOption(String key, String value) throws Exception {
+        context.getGlobalOptions().put(key, value);
     }
 
     public Boolean getTracing() {


[09/11] camel git commit: CAMEL-10546: Add global option to camel-cdi.

Posted by da...@apache.org.
CAMEL-10546: Add global option to camel-cdi.


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

Branch: refs/heads/master
Commit: 67659180feac6353e999858d26e3c55b508b704e
Parents: a158939
Author: Claus Ibsen <da...@apache.org>
Authored: Sun Jan 22 19:04:59 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 19:04:59 2017 +0100

----------------------------------------------------------------------
 .../apache/camel/cdi/xml/CamelContextFactoryBean.java   | 12 ++++++++++++
 1 file changed, 12 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/67659180/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java
----------------------------------------------------------------------
diff --git a/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java b/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java
index e5135f6..455f091 100644
--- a/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java
+++ b/components/camel-cdi/src/main/java/org/apache/camel/cdi/xml/CamelContextFactoryBean.java
@@ -45,6 +45,7 @@ import org.apache.camel.core.xml.CamelServiceExporterDefinition;
 import org.apache.camel.core.xml.CamelStreamCachingStrategyDefinition;
 import org.apache.camel.impl.DefaultCamelContext;
 import org.apache.camel.model.ContextScanDefinition;
+import org.apache.camel.model.GlobalOptionsDefinition;
 import org.apache.camel.model.HystrixConfigurationDefinition;
 import org.apache.camel.model.InterceptDefinition;
 import org.apache.camel.model.InterceptFromDefinition;
@@ -139,6 +140,9 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Def
     @XmlElement(name = "properties")
     private PropertiesDefinition properties;
 
+    @XmlElement(name = "globalOptions")
+    private GlobalOptionsDefinition globalOptions;
+
     @XmlElement(name = "propertyPlaceholder", type = CamelPropertyPlaceholderDefinition.class)
     private CamelPropertyPlaceholderDefinition camelPropertyPlaceholder;
 
@@ -399,6 +403,14 @@ public class CamelContextFactoryBean extends AbstractCamelContextFactoryBean<Def
         this.properties = properties;
     }
 
+    public GlobalOptionsDefinition getGlobalOptions() {
+        return globalOptions;
+    }
+
+    public void setGlobalOptions(GlobalOptionsDefinition globalOptions) {
+        this.globalOptions = globalOptions;
+    }
+
     public String[] getPackages() {
         return packages;
     }


[10/11] camel git commit: CAMEL-10546: Add missing docs

Posted by da...@apache.org.
CAMEL-10546: Add missing docs


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

Branch: refs/heads/master
Commit: 13e5259c8b79342b6b74944b65001d66276d27d9
Parents: 6765918
Author: Claus Ibsen <da...@apache.org>
Authored: Sun Jan 22 19:12:22 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 22 19:12:22 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/camel/model/GlobalOptionDefinition.java    | 6 ++++++
 .../java/org/apache/camel/model/GlobalOptionsDefinition.java   | 3 +++
 2 files changed, 9 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/13e5259c/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
index 5eeb1c4..c04e464 100644
--- a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionDefinition.java
@@ -39,6 +39,9 @@ public class GlobalOptionDefinition {
     public GlobalOptionDefinition() {
     }
 
+    /**
+     * Global option key
+     */
     public void setKey(String key) {
         this.key = key;
     }
@@ -47,6 +50,9 @@ public class GlobalOptionDefinition {
         return key;
     }
 
+    /**
+     * Global option value
+     */
     public void setValue(String value) {
         this.value = value;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/13e5259c/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
index 013823f..c60151d 100644
--- a/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/GlobalOptionsDefinition.java
@@ -41,6 +41,9 @@ public class GlobalOptionsDefinition {
     public GlobalOptionsDefinition() {
     }
 
+    /**
+     * A series of global options as key value pairs
+     */
     public void setGlobalOptions(List<GlobalOptionDefinition> globalOptions) {
         this.globalOptions = globalOptions;
     }