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/03/06 11:10:49 UTC

[04/15] camel git commit: CAMEL-9047: Delete old camel-box

CAMEL-9047: Delete old camel-box


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

Branch: refs/heads/master
Commit: b51280c89210549bb3d101c9d60761126b560672
Parents: cfe3049
Author: Claus Ibsen <da...@apache.org>
Authored: Mon Mar 6 11:22:36 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Mon Mar 6 11:22:36 2017 +0100

----------------------------------------------------------------------
 components/camel-box/pom.xml                    | 525 -------------
 .../camel-box/src/main/docs/box-component.adoc  | 753 -------------------
 .../camel/component/box/BoxComponent.java       | 106 ---
 .../camel/component/box/BoxConfiguration.java   | 272 -------
 .../apache/camel/component/box/BoxConsumer.java | 125 ---
 .../camel/component/box/BoxConverter.java       |  99 ---
 .../apache/camel/component/box/BoxEndpoint.java | 257 -------
 .../apache/camel/component/box/BoxProducer.java |  31 -
 .../component/box/internal/BoxClientHelper.java | 274 -------
 .../component/box/internal/BoxConstants.java    |  31 -
 .../box/internal/BoxPropertiesHelper.java       |  39 -
 .../component/box/internal/CachedBoxClient.java |  72 --
 .../box/internal/CachingSecureStorage.java      |  50 --
 .../component/box/internal/EventCallback.java   |  29 -
 .../box/internal/LoginAuthFlowListener.java     |  67 --
 .../component/box/internal/LoginAuthFlowUI.java | 225 ------
 .../box/internal/LongPollingEventsManager.java  | 301 --------
 .../box/internal/OAuthHelperListener.java       |  57 --
 .../src/main/resources/META-INF/LICENSE.txt     | 203 -----
 .../src/main/resources/META-INF/NOTICE.txt      |  11 -
 .../services/org/apache/camel/TypeConverter     |  17 -
 .../services/org/apache/camel/component/box     |  18 -
 .../signatures/long-polling-events-manager.txt  |   1 -
 .../component/box/AbstractBoxTestSupport.java   | 179 -----
 ...BoxCollaborationsManagerIntegrationTest.java | 153 ----
 .../box/IBoxCommentsManagerIntegrationTest.java | 143 ----
 .../box/IBoxEventsManagerIntegrationTest.java   |  77 --
 .../box/IBoxFilesManagerIntegrationTest.java    | 447 -----------
 .../box/IBoxFoldersManagerIntegrationTest.java  | 236 ------
 .../box/IBoxGroupsManagerIntegrationTest.java   | 326 --------
 .../box/IBoxSearchManagerIntegrationTest.java   |  66 --
 .../IBoxSharedItemsManagerIntegrationTest.java  |  55 --
 .../box/IBoxUsersManagerIntegrationTest.java    | 280 -------
 .../box/InvalidClientIdIntegrationTest.java     |  83 --
 ...LongPollingEventsManagerIntegrationTest.java | 125 ---
 .../src/test/resources/log4j2.properties        |  28 -
 .../src/test/resources/test-options.properties  |  45 --
 37 files changed, 5806 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/b51280c8/components/camel-box/pom.xml
----------------------------------------------------------------------
diff --git a/components/camel-box/pom.xml b/components/camel-box/pom.xml
deleted file mode 100644
index 329326e..0000000
--- a/components/camel-box/pom.xml
+++ /dev/null
@@ -1,525 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-  
-  http://www.apache.org/licenses/LICENSE-2.0
-  
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.camel</groupId>
-    <artifactId>components</artifactId>
-    <version>2.19.0-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>camel-box</artifactId>
-  <packaging>jar</packaging>
-  <name>Camel :: Box.com</name>
-  <description>Camel Component for Box.com</description>
-
-  <properties>
-    <schemeName>box</schemeName>
-    <componentName>Box</componentName>
-    <componentPackage>org.apache.camel.component.box</componentPackage>
-    <outPackage>org.apache.camel.component.box.internal</outPackage>
-
-    <camel.osgi.export.pkg>${componentPackage}</camel.osgi.export.pkg>
-    <camel.osgi.private.pkg>${outPackage}</camel.osgi.private.pkg>
-    <camel.osgi.export.service>org.apache.camel.spi.ComponentResolver;component=box</camel.osgi.export.service>
-  </properties>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.camel</groupId>
-      <artifactId>camel-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.httpcomponents</groupId>
-      <artifactId>httpclient</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>net.box</groupId>
-      <artifactId>boxjavalibv2</artifactId>
-      <version>${boxjavalibv2.version}</version>
-      <exclusions>
-        <exclusion>
-          <groupId>org.apache.httpcomponents</groupId>
-          <artifactId>httpclient</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>org.apache.httpcomponents</groupId>
-          <artifactId>httpclient-cache</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>com.fasterxml.jackson.core</groupId>
-          <artifactId>jackson-annotations</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>com.fasterxml.jackson.core</groupId>
-          <artifactId>jackson-core</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>com.fasterxml.jackson.core</groupId>
-          <artifactId>jackson-databind</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>junit</groupId>
-          <artifactId>junit</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>org.easymock</groupId>
-          <artifactId>easymock</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>commons-io</groupId>
-          <artifactId>commons-io</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>commons-lang</groupId>
-          <artifactId>commons-lang</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>net.sourceforge.htmlunit</groupId>
-      <artifactId>htmlunit</artifactId>
-      <version>${htmlunit.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>com.fasterxml.jackson.core</groupId>
-      <artifactId>jackson-databind</artifactId>
-    </dependency>
-<!--
-    <dependency>
-      <groupId>httpunit</groupId>
-      <artifactId>httpunit</artifactId>
-      <version>${httpunit.version}</version>
-    </dependency>
--->
-    <dependency>
-      <groupId>org.apache.httpcomponents</groupId>
-      <artifactId>httpcore</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.httpcomponents</groupId>
-      <artifactId>httpmime</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.httpcomponents</groupId>
-      <artifactId>httpclient-cache</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>commons-io</groupId>
-      <artifactId>commons-io</artifactId>
-      <version>${commons-io-version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.commons</groupId>
-      <artifactId>commons-lang3</artifactId>
-      <version>${commons-lang3-version}</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-lang</groupId>
-      <artifactId>commons-lang</artifactId>
-      <version>${commons-lang-version}</version>
-    </dependency>
-
-    <!-- Camel annotations in provided scope to avoid compile errors in IDEs -->
-    <dependency>
-      <groupId>org.apache.camel</groupId>
-      <artifactId>spi-annotations</artifactId>
-      <version>${project.version}</version>
-      <scope>provided</scope>
-    </dependency>
-
-    <!-- Component API javadoc in provided scope to read API signatures -->
-    <dependency>
-      <groupId>net.box</groupId>
-      <artifactId>boxjavalibv2</artifactId>
-      <version>${boxjavalibv2.version}</version>
-      <classifier>javadoc</classifier>
-      <scope>provided</scope>
-    </dependency>
-
-    <!-- logging -->    
-    <dependency>
-      <groupId>org.apache.logging.log4j</groupId>
-      <artifactId>log4j-api</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.logging.log4j</groupId>
-      <artifactId>log4j-core</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.logging.log4j</groupId>
-      <artifactId>log4j-slf4j-impl</artifactId>
-      <scope>test</scope>
-    </dependency>
-
-    <!-- testing -->
-    <dependency>
-      <groupId>org.apache.camel</groupId>
-      <artifactId>camel-test</artifactId>
-      <scope>test</scope>
-    </dependency>
-  </dependencies>
-
-  <build>
-    <plugins>
-
-      <!-- compile LongPollingEventsManager before generate-sources -->
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-compiler-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>compile-long-polling-events-mnager</id>
-            <goals>
-              <goal>compile</goal>
-            </goals>
-            <phase>generate-sources</phase>
-            <configuration>
-              <includes>
-                <include>**/LongPollingEventsManager.java</include>
-              </includes>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-
-      <!-- generate Component source and test source -->
-      <plugin>
-        <groupId>org.apache.camel</groupId>
-        <artifactId>camel-api-component-maven-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>generate-test-component-classes</id>
-            <goals>
-              <goal>fromApis</goal>
-            </goals>
-            <configuration>
-              <apis>
-                <api>
-                  <apiName>collaborations</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxCollaborationsManager</proxyClass>
-                  <fromJavadoc />
-                </api>
-                <api>
-                  <apiName>comments</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxCommentsManager</proxyClass>
-                  <fromJavadoc />
-                </api>
-                <api>
-                  <apiName>events</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxEventsManager</proxyClass>
-                  <fromJavadoc />
-                </api>
-                <api>
-                  <apiName>files</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxFilesManager</proxyClass>
-                  <substitutions>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>^.+$</argName>
-                      <argType>^\S+\.Box(.+)RequestObject</argType>
-                      <replacement>$1Request</replacement>
-                      <replaceWithType>true</replaceWithType>
-                    </substitution>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>type</argName>
-                      <argType>com.box.boxjavalibv2.dao.BoxResourceType</argType>
-                      <replacement>resourceType</replacement>
-                    </substitution>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>^id$</argName>
-                      <replacement>fileId</replacement>
-                    </substitution>
-                  </substitutions>
-                  <fromJavadoc />
-                  <aliases>
-                    <alias>
-                      <methodPattern>[gs]et(.+)</methodPattern>
-                      <methodAlias>$1</methodAlias>
-                    </alias>
-                    <alias>
-                      <methodPattern>(create|update|upload|download)\\w+</methodPattern>
-                      <methodAlias>$1</methodAlias>
-                    </alias>
-                  </aliases>
-                </api>
-                <api>
-                  <apiName>folders</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxFoldersManager</proxyClass>
-                  <substitutions>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>^.+$</argName>
-                      <argType>^\S+\.Box(.+)RequestObject</argType>
-                      <replacement>$1Request</replacement>
-                      <replaceWithType>true</replaceWithType>
-                    </substitution>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>type</argName>
-                      <argType>com.box.boxjavalibv2.dao.BoxResourceType</argType>
-                      <replacement>resourceType</replacement>
-                    </substitution>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>^id$</argName>
-                      <replacement>folderId</replacement>
-                    </substitution>
-                  </substitutions>
-                  <fromJavadoc />
-                </api>
-                <api>
-                  <apiName>groups</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxGroupsManager</proxyClass>
-                  <substitutions>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>^.+$</argName>
-                      <argType>^\S+\.Box(.+)RequestObject</argType>
-                      <replacement>$1Request</replacement>
-                      <replaceWithType>true</replaceWithType>
-                    </substitution>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>type</argName>
-                      <argType>com.box.boxjavalibv2.dao.BoxResourceType</argType>
-                      <replacement>resourceType</replacement>
-                    </substitution>
-                    <substitution>
-                      <method>^.+$</method>
-                      <argName>^id$</argName>
-                      <replacement>groupId</replacement>
-                    </substitution>
-                  </substitutions>
-                  <fromJavadoc />
-                  <aliases>
-                    <alias>
-                      <methodPattern>[gs]et(.+)</methodPattern>
-                      <methodAlias>$1</methodAlias>
-                    </alias>
-                    <alias>
-                      <methodPattern>(delete|update)\\w+</methodPattern>
-                      <methodAlias>$1</methodAlias>
-                    </alias>
-                  </aliases>
-                </api>
-                <api>
-                  <apiName>poll-events</apiName>
-                  <proxyClass>org.apache.camel.component.box.internal.LongPollingEventsManager</proxyClass>
-                  <fromSignatureFile>${project.basedir}/src/signatures/long-polling-events-manager.txt</fromSignatureFile>
-                  <excludeConfigNames>callback</excludeConfigNames>
-                  <nullableOptions />
-                </api>
-                <api>
-                  <apiName>search</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxSearchManager</proxyClass>
-                  <fromJavadoc />
-                </api>
-                <api>
-                  <apiName>shared-comments</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxCommentsManager</proxyClass>
-                </api>
-                <api>
-                  <apiName>shared-files</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxFilesManager</proxyClass>
-                  <aliases>
-                    <alias>
-                      <methodPattern>[gs]et(.+)</methodPattern>
-                      <methodAlias>$1</methodAlias>
-                    </alias>
-                    <alias>
-                      <methodPattern>(create|update|upload|download)\\w+</methodPattern>
-                      <methodAlias>$1</methodAlias>
-                    </alias>
-                  </aliases>
-                </api>
-                <api>
-                  <apiName>shared-folders</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxFoldersManager</proxyClass>
-                </api>
-                <api>
-                  <apiName>shared-items</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxSharedItemsManager</proxyClass>
-                  <fromJavadoc />
-                </api>
-                <api>
-                  <apiName>users</apiName>
-                  <proxyClass>com.box.boxjavalibv2.resourcemanagers.IBoxUsersManager</proxyClass>
-                  <aliases>
-                    <alias>
-                      <methodPattern>[gs]et(.+)</methodPattern>
-                      <methodAlias>$1</methodAlias>
-                    </alias>
-                    <alias>
-                      <methodPattern>(create|update|upload|download)\\w+</methodPattern>
-                      <methodAlias>$1</methodAlias>
-                    </alias>
-                  </aliases>
-                  <fromJavadoc />
-                </api>
-              </apis>
-              <!-- common substitutions -->
-              <substitutions>
-                <substitution>
-                  <method>^.+$</method>
-                  <argName>^.+$</argName>
-                  <argType>^\S+\.Box(.+)RequestObject</argType>
-                  <replacement>$1Request</replacement>
-                  <replaceWithType>true</replaceWithType>
-                </substitution>
-                <substitution>
-                  <method>^.+$</method>
-                  <argName>type</argName>
-                  <argType>com.box.boxjavalibv2.dao.BoxResourceType</argType>
-                  <replacement>resourceType</replacement>
-                </substitution>
-<!--
-                <substitution>
-                  <method>^.+$</method>
-                  <argName>.*(i|I)d</argName>
-                  <replacement>id</replacement>
-                </substitution>
--->
-              </substitutions>
-              <fromJavadoc>
-                <excludeClasses>BoxResourceManager|BoxItemsManager</excludeClasses>
-              </fromJavadoc>
-              <nullableOptions>
-                <nullableOption>defaultRequest</nullableOption>
-              </nullableOptions>
-              <aliases>
-                <alias>
-                  <methodPattern>[gs]et(.+)</methodPattern>
-                  <methodAlias>$1</methodAlias>
-                </alias>
-                <alias>
-                  <methodPattern>(create|delete|update)\\w+</methodPattern>
-                  <methodAlias>$1</methodAlias>
-                </alias>
-              </aliases>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-
-      <!-- add generated source and test source to build -->
-      <plugin>
-        <groupId>org.codehaus.mojo</groupId>
-        <artifactId>build-helper-maven-plugin</artifactId>
-        <version>1.8</version>
-        <executions>
-          <execution>
-            <id>add-generated-sources</id>
-            <goals>
-              <goal>add-source</goal>
-            </goals>
-            <configuration>
-              <sources>
-                <source>${project.build.directory}/generated-sources/camel-component</source>
-              </sources>
-            </configuration>
-          </execution>
-          <execution>
-            <id>add-generated-test-sources</id>
-            <goals>
-              <goal>add-test-source</goal>
-            </goals>
-            <configuration>
-              <sources>
-                <source>${project.build.directory}/generated-test-sources/camel-component</source>
-              </sources>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-
-    </plugins>
-
-    <pluginManagement>
-      <plugins>
-        <plugin>
-          <groupId>org.apache.camel</groupId>
-          <artifactId>camel-api-component-maven-plugin</artifactId>
-          <version>${project.version}</version>
-          <configuration>
-            <scheme>${schemeName}</scheme>
-            <componentName>${componentName}</componentName>
-            <componentPackage>${componentPackage}</componentPackage>
-            <outPackage>${outPackage}</outPackage>
-          </configuration>
-        </plugin>
-      </plugins>
-    </pluginManagement>
-
-  </build>
-
-  <reporting>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.camel</groupId>
-        <artifactId>camel-api-component-maven-plugin</artifactId>
-        <version>${project.version}</version>
-        <configuration>
-          <scheme>${schemeName}</scheme>
-          <componentName>${componentName}</componentName>
-          <componentPackage>${componentPackage}</componentPackage>
-          <outPackage>${outPackage}</outPackage>
-        </configuration>
-      </plugin>
-    </plugins>
-  </reporting>
-
-  <profiles>
-    <profile>
-      <id>box-test</id>
-      <build>
-        <plugins>
-          <plugin>
-            <artifactId>maven-surefire-plugin</artifactId>
-            <configuration>
-              <childDelegation>false</childDelegation>
-              <useFile>true</useFile>
-              <forkCount>1</forkCount>
-	      <reuseForks>true</reuseForks>
-              <forkedProcessTimeoutInSeconds>300</forkedProcessTimeoutInSeconds>
-              <excludes>
-                  <exclude>**/*XXXTest.java</exclude>
-              </excludes>
-              <includes>
-                <include>**/*Test.java</include>
-              </includes>
-              <systemPropertyVariables>
-                <camel.box.userName>${camel.box.userName}</camel.box.userName>
-                <camel.box.userPassword>${camel.box.userPassword}</camel.box.userPassword>
-                <camel.box.clientId>${camel.box.clientId}</camel.box.clientId>
-                <camel.box.clientSecret>${camel.box.clientSecret}</camel.box.clientSecret>
-              </systemPropertyVariables>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-
-</project>

http://git-wip-us.apache.org/repos/asf/camel/blob/b51280c8/components/camel-box/src/main/docs/box-component.adoc
----------------------------------------------------------------------
diff --git a/components/camel-box/src/main/docs/box-component.adoc b/components/camel-box/src/main/docs/box-component.adoc
deleted file mode 100644
index fa178ad..0000000
--- a/components/camel-box/src/main/docs/box-component.adoc
+++ /dev/null
@@ -1,753 +0,0 @@
-## Box Component
-
-*Available as of Camel version 2.14*
-
-The Box component provides access to all of the Box.com APIs accessible
-using https://github.com/box/box-java-sdk-v2/[box-java-sdk-v2]. It
-allows producing messages to upload and download files, create, edit,
-and manage folders, etc. It also supports APIs that allow polling for
-updates to user accounts and even changes to enterprise accounts, etc.
-
-Box.com requires the use of OAuth2.0 for all client application
-authentication. In order to use camel-box with your account, you'll need
-to create a new application within Box.com at
-https://app.box.com/developers/services/edit/[https://app.box.com/developers/services/edit/].
-The Box application's client id and secret will allow access to Box APIs
-which require a current user. A user access token is generated and
-managed by the API for an end user. Alternatively the Camel application
-can register an implementation
-of�com.box.boxjavalibv2.authorization.IAuthSecureStorage to provide
-an�com.box.boxjavalibv2.dao.IAuthData OAuth token.
-
-Maven users will need to add the following dependency to their pom.xml
-for this component:
-
-[source,java]
--------------------------------------------
-    <dependency>
-        <groupId>org.apache.camel</groupId>
-        <artifactId>camel-box</artifactId>
-        <version>${camel-version}</version>
-    </dependency>
--------------------------------------------
-
-### Box Options
-
-
-
-
-
-// component options: START
-The Box component supports 2 options which are listed below.
-
-
-
-{% raw %}
-[width="100%",cols="2,1,1m,1m,5",options="header"]
-|=======================================================================
-| Name | Group | Default | Java Type | Description
-| configuration | common |  | BoxConfiguration | To use the shared configuration
-| resolvePropertyPlaceholders | advanced | true | boolean | Whether the component should resolve property placeholders on itself when starting. Only properties which are of String type can use property placeholders.
-|=======================================================================
-{% endraw %}
-// component options: END
-
-
-
-
-
-
-
-// endpoint options: START
-The Box component is configured using the URI syntax with the following path and query parameters:
-
-    box:apiName/methodName
-
-#### 2 path parameters:
-
-{% raw %}
-[width="100%",cols="2,1,1m,6",options="header"]
-|=======================================================================
-| Name | Default | Java Type | Description
-| apiName |  | BoxApiName | *Required* What kind of operation to perform
-| methodName |  | String | *Required* What sub operation to use for the selected operation
-|=======================================================================
-{% endraw %}
-
-#### 19 query parameters:
-
-{% raw %}
-[width="100%",cols="2,1,1m,1m,5",options="header"]
-|=======================================================================
-| Name | Group | Default | Java Type | Description
-| clientId | common |  | String | Box application client ID
-| inBody | common |  | String | Sets the name of a parameter to be passed in the exchange In Body
-| loginTimeout | common | 30 | int | Amount of time the component will wait for a response from Box.com default is 30 seconds
-| revokeOnShutdown | common | false | boolean | Flag to revoke OAuth refresh token on route shutdown default false. Will require a fresh refresh token on restart using either a custom IAuthSecureStorage or automatic component login by providing a user password
-| sharedLink | common |  | String | Box shared link for shared endpoints can be a link for a shared comment file or folder
-| sharedPassword | common |  | String | Password associated with the shared link MUST be provided with sharedLink
-| bridgeErrorHandler | consumer | false | boolean | Allows for bridging the consumer to the Camel routing Error Handler which mean any exceptions occurred while the consumer is trying to pickup incoming messages or the likes will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions that will be logged at WARN or ERROR level and ignored.
-| exceptionHandler | consumer (advanced) |  | ExceptionHandler | To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this options is not in use. By default the consumer will deal with exceptions that will be logged at WARN or ERROR level and ignored.
-| exchangePattern | consumer (advanced) |  | ExchangePattern | Sets the exchange pattern when the consumer creates an exchange.
-| boxConfig | advanced |  | IBoxConfig | Custom Box SDK configuration not required normally
-| connectionManagerBuilder | advanced |  | BoxConnectionManagerBuilder | Custom Box connection manager builder used to override default settings like max connections for underlying HttpClient.
-| httpParams | advanced |  | Map | Custom HTTP params for settings like proxy host
-| refreshListener | advanced |  | OAuthRefreshListener | OAuth listener for token updates if the Camel application needs to use the access token outside the route
-| synchronous | advanced | false | boolean | Sets whether synchronous processing should be strictly used or Camel is allowed to use asynchronous processing (if supported).
-| authSecureStorage | security |  | IAuthSecureStorage | OAuth Secure Storage callback can be used to provide and or save OAuth tokens. The callback may return null on first call to allow the component to login and authorize application and obtain an OAuth token which can then be saved in the secure storage. For the component to be able to create a token automatically a user password must be provided.
-| clientSecret | security |  | String | Box application client secret
-| sslContextParameters | security |  | SSLContextParameters | To configure security using SSLContextParameters.
-| userName | security |  | String | Box user name MUST be provided
-| userPassword | security |  | String | Box user password MUST be provided if authSecureStorage is not set or returns null on first call
-|=======================================================================
-{% endraw %}
-// endpoint options: END
-
-
-
-### URI format
-
-[source,java]
---------------------------------------------
-    box://endpoint-prefix/endpoint?[options]
---------------------------------------------
-
-Endpoint prefix can be one of:
-
-* collaborations
-* comments
-* events
-* files
-* folders
-* groups
-* poll-events
-* search
-* shared-comments
-* shared-files
-* shared-folders
-* shared-items
-* users
-
-### BoxComponent
-
-The Box Component can be configured with the options below. These
-options can be provided using the component's bean
-property�*`configuration`*�of
-type�*`org.apache.camel.component.box.BoxConfiguration`*. These options
-can also be specified in the endpoint URI.�
-
-[width="100%",cols="10%,10%,80%",options="header",]
-|=======================================================================
-|Option |Type |Description
-
-|authSecureStorage |com.box.boxjavalibv2.authorization.IAuthSecureStorage |OAuth Secure Storage callback, can be used to provide and or save OAuth
-tokens. The callback may return null on first call to allow the
-component to login and authorize application and obtain an OAuth token,
-which can then be saved in the secure storage. For the component to be
-able to create a token automatically a user password must be provided.
-
-|boxConfig |com.box.boxjavalibv2.IBoxConfig |Custom Box SDK configuration, not required normally
-
-|clientId |String |Box application client ID
-
-|clientSecret |String |Box application client secret
-
-|connectionManagerBuilder |com.box.boxjavalibv2.BoxConnectionManagerBuilder |Custom Box connection manager builder, used to override default settings
-like max connections for underlying HttpClient.
-
-|httpParams |java.util.Map |Custom HTTP params for settings like proxy host
-
-|loginTimeout |int |amount of time the component will wait for a response from Box.com,
-default is 30 seconds
-
-|refreshListener |com.box.boxjavalibv2.authorization.OAuthRefreshListener |OAuth listener for token updates, if the Camel application needs to use
-the access token outside the route
-
-|revokeOnShutdown |boolean |Flag to revoke OAuth refresh token on route shutdown, default false.
-Will require a fresh refresh token on restart using either a custom
-IAuthSecureStorage or automatic component login by providing a user
-password
-
-|sharedLink |String |Box shared link for shared-* endpoints, can be a link for a shared
-comment, file or folder
-
-|sharedPassword |String |Password associated with the shared link, MUST be provided with
-sharedLink
-
-|userName |String |Box user name, MUST be provided
-
-|userPassword |String |Box user password, MUST be provided if authSecureStorage is not set, or
-returns null on first call
-|=======================================================================
-
-### Producer Endpoints:
-
-Producer endpoints can use endpoint prefixes followed by endpoint names
-and associated options described next. A shorthand alias can be used for
-some endpoints. The endpoint URI MUST contain a prefix.
-
-Endpoint options that are not mandatory are denoted by *[]*. When there
-are no mandatory options for an endpoint, one of the set of *[]* options
-MUST be provided. Producer endpoints can also use a special
-option�*`inBody`*�that in turn should contain the name of the endpoint
-option whose value will be contained in the Camel Exchange In message.
-
-Any of the endpoint options can be provided in either the endpoint URI,
-or dynamically in a message header. The message header name must be of
-the format�*`CamelBox.<option>`*. Note that the�*`inBody`*�option
-overrides message header, i.e. the endpoint
-option�*`inBody=option`*�would override a�*`CamelBox.option`*�header.
-
-If a value is not provided for the option *defaultRequest* either in the
-endpoint URI or in a message header, it will be assumed to be�`null`.
-Note that the�`null`�value will only be used if other options do not
-satisfy matching endpoints.
-
-In case of Box API errors the endpoint will throw a
-RuntimeCamelException with a
-*com.box.restclientv2.exceptions.BoxSDKException*�derived exception
-cause.
-
-#### Endpoint Prefix�_collaborations_
-
-For more information on Box collaborations see
-https://developers.box.com/docs/#collaborations[https://developers.box.com/docs/#collaborations].�The
-following endpoints can be invoked with the prefix�*`collaborations`*�as
-follows:
-
-[source,java]
--------------------------------------------
-    box://collaborations/endpoint?[options]
--------------------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|createCollaboration |create |collabRequest, folderId |com.box.boxjavalibv2.dao.BoxCollaboration
-
-|deleteCollaboration |delete |collabId, defaultRequest |
-
-|getAllCollaborations |allCollaborations |getAllCollabsRequest |java.util.List
-
-|getCollaboration |collaboration |collabId, defaultRequest |com.box.boxjavalibv2.dao.BoxCollaboration
-
-|updateCollaboration |update |collabId, collabRequest |com.box.boxjavalibv2.dao.BoxCollaboration
-|=======================================================================
-
-[[Box-URIOptionsforcollaborations]]
-URI Options for�_collaborations_
-
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|collabId |String
-
-|collabRequest |com.box.boxjavalibv2.requests.requestobjects.BoxCollabRequestObject
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-
-|folderId |String
-
-|getAllCollabsRequest |com.box.boxjavalibv2.requests.requestobjects.BoxGetAllCollabsRequestObject
-|=======================================================================
-
-#### Endpoint Prefix�_events_
-
-For more information on Box events see
-https://developers.box.com/docs/#events[https://developers.box.com/docs/#events].
-Although this endpoint can be used by producers, Box events are better
-used as a consumer endpoint using the *poll-events* endpoint prefix. The
-following endpoints can be invoked with the prefix�*`events`*�as
-follows:
-
-[source,java]
----------------------------------
-  box://events/endpoint?[options]
----------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|getEventOptions |eventOptions |defaultRequest |com.box.boxjavalibv2.dao.BoxCollection
-
-|getEvents |events |eventRequest |com.box.boxjavalibv2.dao.BoxEventCollection
-|=======================================================================
-
-[[Box-URIOptionsforevents]]
-URI Options for�_events_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-
-|eventRequest |com.box.boxjavalibv2.requests.requestobjects.BoxEventRequestObject
-|=======================================================================
-
-#### Endpoint Prefix�_groups_
-
-For more information on Box groups see
-https://developers.box.com/docs/#groups[https://developers.box.com/docs/#groups].
-The following endpoints can be invoked with the prefix�*`groups`*�as
-follows:
-
-[source,java]
------------------------------------
-    box://groups/endpoint?[options]
------------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|createGroup |[groupRequest], [name] |com.box.boxjavalibv2.dao.BoxGroup 
-
-|createMembership |[groupId, role, userId], [groupMembershipRequest] |com.box.boxjavalibv2.dao.BoxGroupMembership
-
-|deleteGroup |delete |defaultRequest, groupId |
-
-|deleteMembership |delete |defaultRequest, membershipId |
-
-|getAllCollaborations |allCollaborations |defaultRequest, groupId |com.box.boxjavalibv2.dao.BoxCollection
-
-|getAllGroups |allGroups |defaultRequest |com.box.boxjavalibv2.dao.BoxCollection
-
-|getMembership |membership |defaultRequest, membershipId |com.box.boxjavalibv2.dao.BoxGroupMembership
-
-|getMemberships |memberships |defaultRequest, groupId |com.box.boxjavalibv2.dao.BoxCollection
-
-|updateGroup |update |groupId, groupRequest |com.box.boxjavalibv2.dao.BoxGroup
-
-|updateMembership |update |[groupMembershipRequest], [role], membershipId |com.box.boxjavalibv2.dao.BoxGroupMembership
-|=======================================================================
-
-[[Box-URIOptionsforgroups]]
-URI Options for�_groups_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-
-|groupId |String
-
-|groupMembershipRequest |com.box.boxjavalibv2.requests.requestobjects.BoxGroupMembershipRequestObject
-
-|groupRequest |com.box.boxjavalibv2.requests.requestobjects.BoxGroupRequestObject
-
-|membershipId |String
-
-|name |String
-
-|role |String
-
-|userId |String
-
-|=======================================================================
-
-#### Endpoint Prefix�_search_
-
-For more information on Box search API see
-https://developers.box.com/docs/#search[https://developers.box.com/docs/#search].�The
-following endpoints can be invoked with the prefix�*`search`*�as
-follows:
-
-[source,java]
------------------------------------
-    box://search/endpoint?[options]
------------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|search |defaultRequest, searchQuery |com.box.boxjavalibv2.dao.BoxCollection
-|=======================================================================
-
-[[Box-URIOptionsforsearch]]
-URI Options for�_search_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-
-|searchQuery |String
-|=======================================================================
-
-#### Endpoint Prefix _comments_ and�_shared-comments_
-
-For more information on Box comments see
-https://developers.box.com/docs/#comments[https://developers.box.com/docs/#comments].
-The following endpoints can be invoked with the prefix�*comments*
-or�*`shared-comments`*�as follows. The�*shared-comments* prefix requires
-*sharedLink* and *sharedPassword* properties.�
-
-[source,java]
---------------------------------------------
-    box://comments/endpoint?[options]
-    box://shared-comments/endpoint?[options]
---------------------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|addComment |[commentRequest], [commentedItemId, commentedItemType, message] | | com.box.boxjavalibv2.dao.BoxComment 
-
-|deleteComment |delete |  |commentId, defaultRequest
-
-|getComment |comment |commentId, defaultRequest |com.box.boxjavalibv2.dao.BoxComment
-
-|updateComment |update |commentId, commentRequest |com.box.boxjavalibv2.dao.BoxComment
-|=======================================================================
-
-[[Box-URIOptionsforcommentsandshared-comments]]
-URI Options for _comments_ and�_shared-comments_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|commentId |String
-
-|commentRequest |com.box.boxjavalibv2.requests.requestobjects.BoxCommentRequestObject
-
-|commentedItemId |String
-
-|commentedItemType |com.box.boxjavalibv2.dao.IBoxType
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-
-|message |String
-|=======================================================================
-
-#### Endpoint Prefix�_files_ and�_shared-files_
-
-For more information on Box files see
-https://developers.box.com/docs/#files[https://developers.box.com/docs/#files].
-The following endpoints can be invoked with the
-prefix�*`files`*�or�*`shared-files`*�as follows. The
-*`shared-files�`*prefix requires *sharedLink* and *sharedPassword*
-properties.�
-
-[source,java]
-----------------------------------------
-   box://files/endpoint?[options]
-   box://shared-files/endpoint?[options]
-----------------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|copyFile |  |fileId, itemCopyRequest |com.box.boxjavalibv2.dao.BoxFile
-
-|createSharedLink |create |fileId, sharedLinkRequest |com.box.boxjavalibv2.dao.BoxFile
-
-|deleteFile |  | defaultRequest, fileId |
-
-|downloadFile |download |[destination, listener], [listener, outputStreams], defaultRequest,
-fileId |java.io.InputStream
-
-|downloadThumbnail |download |extension, fileId, imageRequest |java.io.InputStream
-
-|getFile |file |defaultRequest, fileId |com.box.boxjavalibv2.dao.BoxFile 
-
-|getFileComments |fileComments defaultRequest, fileId |com.box.boxjavalibv2.dao.BoxCollection
-
-|getFileVersions |fileVersions |defaultRequest, fileId |java.util.List
-
-|getPreview |preview |extension, fileId, imageRequest |com.box.boxjavalibv2.dao.BoxPreview
-
-|getThumbnail |thumbnail |extension, fileId, imageRequest |com.box.boxjavalibv2.dao.BoxThumbnail
-
-|updateFileInfo |update |fileId, fileRequest |com.box.boxjavalibv2.dao.BoxFile
-
-|uploadFile |upload |fileUploadRequest |com.box.boxjavalibv2.dao.BoxFile
-
-|uploadNewVersion |upload |fileId, fileUploadRequest |com.box.boxjavalibv2.dao.BoxFile
-|=======================================================================
-
-[[Box-URIOptionsforfilesandshared-files]]
-URI Options for _files_ and�_shared-files_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-
-|destination |java.io.File
-
-|extension |String
-
-|fileId |String
-
-|fileRequest |com.box.boxjavalibv2.requests.requestobjects.BoxFileRequestObject
-
-|fileUploadRequest |com.box.restclientv2.requestsbase.BoxFileUploadRequestObject
-
-|imageRequest|com.box.boxjavalibv2.requests.requestobjects.BoxImageRequestObject 
-
-|itemCopyRequest |com.box.boxjavalibv2.requests.requestobjects.BoxItemCopyRequestObject
-
-|listener |com.box.boxjavalibv2.filetransfer.IFileTransferListener
-
-|outputStreams |java.io.OutputStream[]
-
-|sharedLinkRequest |com.box.boxjavalibv2.requests.requestobjects.BoxSharedLinkRequestObject
-|=======================================================================
-
-#### Endpoint Prefix _folders_ and�_shared-folders_
-
-For more information on Box folders see
-https://developers.box.com/docs/#folders[https://developers.box.com/docs/#folders].
-The following endpoints can be invoked with the prefix
-*`folders`*�or�*`shared-folders`*�as follows. The prefix
-*shared-folders* requires *sharedLink* and *sharedPassword* properties.�
-
-[source,java]
--------------------------------------------
-    box://folders/endpoint?[options]
-    box://shared-folders/endpoint?[options]
--------------------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|copyFolder |  |folderId, itemCopyRequest |com.box.boxjavalibv2.dao.BoxFolder
-
-|createFolder |create |folderRequest |com.box.boxjavalibv2.dao.BoxFolder
-
-|createSharedLink |create |folderId, sharedLinkRequest|com.box.boxjavalibv2.dao.BoxFolder 
-
-|deleteFolder |delete |folderDeleteRequest, folderId
-
-|getFolder |folder |defaultRequest, folderId |com.box.boxjavalibv2.dao.BoxFolder
-
-|getFolderCollaborations |folderCollaborations |defaultRequest, folderId |java.util.List
-
-|getFolderItems |folderItems |folderId, pagingRequest |com.box.boxjavalibv2.dao.BoxCollection
-
-|updateFolderInfo |update |folderId, folderRequest |com.box.boxjavalibv2.dao.BoxFolder
-|=======================================================================
-
-[[Box-URIOptionsforfoldersorshared-folders]]
-URI Options for _folders_ or�_shared-folders_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-
-|folderDeleteRequest |com.box.boxjavalibv2.requests.requestobjects.BoxFolderDeleteRequestObject
-
-|folderId |String
-
-|folderRequest |com.box.boxjavalibv2.requests.requestobjects.BoxFolderRequestObject
-
-|itemCopyRequest |com.box.boxjavalibv2.requests.requestobjects.BoxItemCopyRequestObject
-
-|pagingRequest |com.box.boxjavalibv2.requests.requestobjects.BoxPagingRequestObject
-
-|sharedLinkRequest |com.box.boxjavalibv2.requests.requestobjects.BoxSharedLinkRequestObject
-|=======================================================================
-
-#### Endpoint Prefix�_shared-items_
-
-For more information on Box shared items see
-https://developers.box.com/docs/#shared-items[https://developers.box.com/docs/#shared-items].
-The following endpoints can be invoked with the
-prefix�*`shared-items`*�as follows:
-
-[source,java]
------------------------------------------
-    box://shared-items/endpoint?[options]
------------------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|getSharedItem |sharedItem |defaultRequest |com.box.boxjavalibv2.dao.BoxItem
-|=======================================================================
-
-[[Box-URIOptionsforshared-items]]
-URI Options for�_shared-items_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-|=======================================================================
-
-#### Endpoint Prefix�_users_
-
-For information on Box users see
-https://developers.box.com/docs/#users[https://developers.box.com/docs/#users].
-The following endpoints can be invoked with the prefix�*`users`*�as
-follows:
-
-[source,java]
-----------------------------------
-    box://users/endpoint?[options]
-----------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|addEmailAlias |  |emailAliasRequest, userId |com.box.boxjavalibv2.dao.BoxEmailAlias
-
-|createEnterpriseUser |create |userRequest |com.box.boxjavalibv2.dao.BoxUser
-
-|deleteEmailAlias |  |defaultRequest, emailId, userId |
-
-deleteEnterpriseUser |  |userDeleteRequest, userId |
-
-|getAllEnterpriseUser |allEnterpriseUser |defaultRequest, filterTerm |java.util.List
-
-|getCurrentUser |currentUser |defaultRequest |com.box.boxjavalibv2.dao.BoxUser
-
-|getEmailAliases |emailAliases |defaultRequest, userId |java.util.List
-
-|moveFolderToAnotherUser |  | folderId, simpleUserRequest, userId |com.box.boxjavalibv2.dao.BoxFolder
-
-|updateUserInformaiton |update |userId, userRequest |com.box.boxjavalibv2.dao.BoxUser
-
-|updateUserPrimaryLogin |update |userId, userUpdateLoginRequest |com.box.boxjavalibv2.dao.BoxUser
-|=======================================================================
-
-[[Box-URIOptionsforusers]]
-URI Options for�_users_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|defaultRequest |com.box.restclientv2.requestsbase.BoxDefaultRequestObject
-
-|emailAliasRequest |com.box.boxjavalibv2.requests.requestobjects.BoxEmailAliasRequestObject
-
-|emailId |String
-
-|filterTerm |String
-
-|folderId |String
-
-|simpleUserRequest |com.box.boxjavalibv2.requests.requestobjects.BoxSimpleUserRequestObject
-
-|userDeleteRequest |com.box.boxjavalibv2.requests.requestobjects.BoxUserDeleteRequestObject
-
-|userId |String
-
-|userRequest |com.box.boxjavalibv2.requests.requestobjects.BoxUserRequestObject
-
-|userUpdateLoginRequest |com.box.boxjavalibv2.requests.requestobjects.BoxUserUpdateLoginRequestObject
-|=======================================================================
-
-### Consumer Endpoints:
-
-For more information on Box events see
-https://developers.box.com/docs/#events[https://developers.box.com/docs/#events]�and
-for long polling
-see�https://developers.box.com/docs/#events-long-polling[https://developers.box.com/docs/#events-long-polling].
-Consumer endpoints can only use the endpoint prefix *poll-events* as
-shown in the example next.�By default the consumer will split
-the�com.box.boxjavalibv2.dao.BoxEventCollection from every long poll and
-create an exchange for every�com.box.boxjavalibv2.dao.BoxEvent. To make
-the consumer return the entire collection in a single exchange, use the
-URI option *consumer.splitResult=false*.
-
-[source,java]
-----------------------------------------
-    box://poll-events/endpoint?[options]
-----------------------------------------
-
-[width="100%",cols="10%,10%,10%,70%",options="header",]
-|=======================================================================
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|poll |  |limit, streamPosition, streamType |com.box.boxjavalibv2.dao.BoxEvent by default, or
-com.box.boxjavalibv2.dao.BoxEventCollection when
-consumer.splitResult=false
-|=======================================================================
-
-[[Box-URIOptionsforpoll-events]]
-URI Options for�_poll-events_
-
-[width="100%",cols="10%,90%",options="header",]
-|=======================================================================
-|Name |Type
-
-|limit |Integer
-
-|streamPosition |Long
-
-|streamType |String
-
-|splitResult |boolean
-|=======================================================================
-
-### Message header
-
-Any of the options�can be provided in a message header for producer
-endpoints with *CamelBox.* prefix.
-
-### Message body
-
-All result message bodies utilize objects provided by the Box Java SDK.
-Producer endpoints can specify the option name for incoming message body
-in the *inBody* endpoint parameter.
-
-### Type Converter
-
-The Box component also provides a Camel type converter to convert
-http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/component/file/GenericFile.html[GenericFile]
-objects from http://camel.apache.org/file2.html[File] component to
-a�*com.box.restclientv2.requestsbase.BoxFileUploadRequestObject* to
-upload files to Box.com. The target *folderId* for the upload can be
-specified in the exchange property�*CamelBox.folderId*. If the exchange
-property is not specified the value defaults to *"**0"* for the root
-folder ID.�
-
-### Use cases
-
-The following route uploads new files to the user's root folder:
-
-[source,java]
------------------------------------------------------------
-    from("file:...")
-        .to("box://files/upload/inBody=fileUploadRequest");
------------------------------------------------------------
-
-The following route polls user's account for updates:
-
-[source,java]
------------------------------------------------------------------------------
-    from("box://poll-events/poll?streamPosition=-1&streamType=all&limit=100")
-        .to("bean:blah");
------------------------------------------------------------------------------
-
-The following route uses a producer with dynamic header options.�The
-*fileId*�property has the Box file id , so its assigned to the
-*CamelBox.fileId* header as follows:
-
-[source,java]
--------------------------------------------------------
-    from("direct:foo")
-        .setHeader("CamelBox.fileId", header("fileId"))
-        .to("box://files/download")
-        .to("file://...");
--------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/camel/blob/b51280c8/components/camel-box/src/main/java/org/apache/camel/component/box/BoxComponent.java
----------------------------------------------------------------------
diff --git a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxComponent.java b/components/camel-box/src/main/java/org/apache/camel/component/box/BoxComponent.java
deleted file mode 100644
index 3928b4d..0000000
--- a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxComponent.java
+++ /dev/null
@@ -1,106 +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.component.box;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.Endpoint;
-import org.apache.camel.component.box.internal.BoxApiCollection;
-import org.apache.camel.component.box.internal.BoxApiName;
-import org.apache.camel.component.box.internal.BoxClientHelper;
-import org.apache.camel.component.box.internal.CachedBoxClient;
-import org.apache.camel.spi.Metadata;
-import org.apache.camel.util.component.AbstractApiComponent;
-
-/**
- * Represents the component that manages {@link BoxEndpoint}.
- */
-public class BoxComponent extends AbstractApiComponent<BoxApiName, BoxConfiguration, BoxApiCollection> {
-
-    @Metadata(label = "advanced")
-    private CachedBoxClient cachedBoxClient;
-
-    public BoxComponent() {
-        super(BoxEndpoint.class, BoxApiName.class, BoxApiCollection.getCollection());
-    }
-
-    public BoxComponent(CamelContext context) {
-        super(context, BoxEndpoint.class, BoxApiName.class, BoxApiCollection.getCollection());
-    }
-
-    @Override
-    protected BoxApiName getApiName(String apiNameStr) throws IllegalArgumentException {
-        return BoxApiName.fromValue(apiNameStr);
-    }
-
-    @Override
-    protected Endpoint createEndpoint(String uri, String methodName, BoxApiName apiName,
-                                      BoxConfiguration endpointConfiguration) {
-        endpointConfiguration.setApiName(apiName);
-        endpointConfiguration.setMethodName(methodName);
-        return new BoxEndpoint(uri, this, apiName, methodName, endpointConfiguration);
-    }
-
-    public CachedBoxClient getBoxClient() {
-        return cachedBoxClient;
-    }
-
-    /**
-     * To use the shared configuration
-     */
-    @Override
-    public void setConfiguration(BoxConfiguration configuration) {
-        super.setConfiguration(configuration);
-    }
-
-    /**
-     * To use the shared configuration
-     */
-    @Override
-    public BoxConfiguration getConfiguration() {
-        return super.getConfiguration();
-    }
-
-    @Override
-    protected void doStart() throws Exception {
-        super.doStart();
-
-        if (cachedBoxClient == null && configuration != null) {
-            cachedBoxClient = BoxClientHelper.createBoxClient(configuration);
-        }
-    }
-
-    @Override
-    protected void doStop() throws Exception {
-        if (cachedBoxClient != null) {
-            // close shared client connections
-            BoxClientHelper.closeIdleConnections(cachedBoxClient);
-        }
-    }
-
-    @Override
-    public void doShutdown() throws Exception {
-        try {
-            if (cachedBoxClient != null) {
-                // shutdown singleton client
-                BoxClientHelper.shutdownBoxClient(configuration, cachedBoxClient);
-            }
-        } finally {
-            cachedBoxClient = null;
-            super.doShutdown();
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/camel/blob/b51280c8/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConfiguration.java b/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConfiguration.java
deleted file mode 100644
index 807d072..0000000
--- a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConfiguration.java
+++ /dev/null
@@ -1,272 +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.component.box;
-
-import java.util.Map;
-import java.util.Objects;
-
-import com.box.boxjavalibv2.BoxConnectionManagerBuilder;
-import com.box.boxjavalibv2.IBoxConfig;
-import com.box.boxjavalibv2.authorization.IAuthSecureStorage;
-import com.box.boxjavalibv2.authorization.OAuthRefreshListener;
-import org.apache.camel.component.box.internal.BoxApiName;
-import org.apache.camel.spi.Metadata;
-import org.apache.camel.spi.UriParam;
-import org.apache.camel.spi.UriParams;
-import org.apache.camel.spi.UriPath;
-import org.apache.camel.util.jsse.SSLContextParameters;
-
-/**
- * Component configuration for Box component.
- */
-@UriParams
-public class BoxConfiguration {
-
-    @UriPath @Metadata(required = "true")
-    private BoxApiName apiName;
-    @UriPath @Metadata(required = "true")
-    private String methodName;
-    @UriParam
-    private String clientId;
-    @UriParam(label = "security", secret = true)
-    private String clientSecret;
-    @UriParam(label = "security", secret = true)
-    private String userName;
-    @UriParam(label = "security", secret = true)
-    private String userPassword;
-    @UriParam(label = "advanced,security")
-    private IAuthSecureStorage authSecureStorage;
-    @UriParam(label = "advanced")
-    private OAuthRefreshListener refreshListener;
-    @UriParam
-    private boolean revokeOnShutdown;
-    @UriParam
-    private String sharedLink;
-    @UriParam
-    private String sharedPassword;
-    @UriParam(label = "advanced")
-    private IBoxConfig boxConfig;
-    @UriParam(label = "advanced")
-    private BoxConnectionManagerBuilder connectionManagerBuilder;
-    @UriParam(label = "advanced")
-    private Map<String, Object> httpParams;
-    @UriParam(label = "security")
-    private SSLContextParameters sslContextParameters;
-    @UriParam(defaultValue = "30")
-    private int loginTimeout = 30;
-
-    public BoxApiName getApiName() {
-        return apiName;
-    }
-
-    /**
-     * What kind of operation to perform
-     */
-    public void setApiName(BoxApiName apiName) {
-        this.apiName = apiName;
-    }
-
-    public String getMethodName() {
-        return methodName;
-    }
-
-    /**
-     * What sub operation to use for the selected operation
-     */
-    public void setMethodName(String methodName) {
-        this.methodName = methodName;
-    }
-
-    public String getClientId() {
-        return clientId;
-    }
-
-    /**
-     * Box application client ID
-     */
-    public void setClientId(String clientId) {
-        this.clientId = clientId;
-    }
-
-    public String getClientSecret() {
-        return clientSecret;
-    }
-
-    /**
-     * Box application client secret
-     */
-    public void setClientSecret(String clientSecret) {
-        this.clientSecret = clientSecret;
-    }
-
-    public IAuthSecureStorage getAuthSecureStorage() {
-        return authSecureStorage;
-    }
-
-    /**
-     * OAuth Secure Storage callback, can be used to provide and or save OAuth tokens.
-     * The callback may return null on first call to allow the component to login and authorize application
-     * and obtain an OAuth token, which can then be saved in the secure storage.
-     * For the component to be able to create a token automatically a user password must be provided.
-     */
-    public void setAuthSecureStorage(IAuthSecureStorage authSecureStorage) {
-        this.authSecureStorage = authSecureStorage;
-    }
-
-    public String getUserName() {
-        return userName;
-    }
-
-    /**
-     * Box user name, MUST be provided
-     */
-    public void setUserName(String userName) {
-        this.userName = userName;
-    }
-
-    public String getUserPassword() {
-        return userPassword;
-    }
-
-    /**
-     * Box user password, MUST be provided if authSecureStorage is not set, or returns null on first call
-     */
-    public void setUserPassword(String userPassword) {
-        this.userPassword = userPassword;
-    }
-
-    public OAuthRefreshListener getRefreshListener() {
-        return refreshListener;
-    }
-
-    /**
-     * OAuth listener for token updates, if the Camel application needs to use the access token outside the route
-     */
-    public void setRefreshListener(OAuthRefreshListener refreshListener) {
-        this.refreshListener = refreshListener;
-    }
-
-    public boolean isRevokeOnShutdown() {
-        return revokeOnShutdown;
-    }
-
-    /**
-     * Flag to revoke OAuth refresh token on route shutdown, default false.
-     * Will require a fresh refresh token on restart using either a custom IAuthSecureStorage
-     * or automatic component login by providing a user password
-     */
-    public void setRevokeOnShutdown(boolean revokeOnShutdown) {
-        this.revokeOnShutdown = revokeOnShutdown;
-    }
-
-    public String getSharedLink() {
-        return sharedLink;
-    }
-
-    /**
-     * Box shared link for shared endpoints, can be a link for a shared comment, file or folder
-     */
-    public void setSharedLink(String sharedLink) {
-        this.sharedLink = sharedLink;
-    }
-
-    public String getSharedPassword() {
-        return sharedPassword;
-    }
-
-    /**
-     * Password associated with the shared link, MUST be provided with sharedLink
-     */
-    public void setSharedPassword(String sharedPassword) {
-        this.sharedPassword = sharedPassword;
-    }
-
-    public IBoxConfig getBoxConfig() {
-        return boxConfig;
-    }
-
-    /**
-     * Custom Box SDK configuration, not required normally
-     */
-    public void setBoxConfig(IBoxConfig boxConfig) {
-        this.boxConfig = boxConfig;
-    }
-
-    public BoxConnectionManagerBuilder getConnectionManagerBuilder() {
-        return connectionManagerBuilder;
-    }
-
-    /**
-     * Custom Box connection manager builder, used to override default settings like max connections for underlying HttpClient.
-     */
-    public void setConnectionManagerBuilder(BoxConnectionManagerBuilder connectionManagerBuilder) {
-        this.connectionManagerBuilder = connectionManagerBuilder;
-    }
-
-    public Map<String, Object> getHttpParams() {
-        return httpParams;
-    }
-
-    /**
-     * Custom HTTP params for settings like proxy host
-     */
-    public void setHttpParams(Map<String, Object> httpParams) {
-        this.httpParams = httpParams;
-    }
-
-    public SSLContextParameters getSslContextParameters() {
-        return sslContextParameters;
-    }
-
-    /**
-     * To configure security using SSLContextParameters.
-     */
-    public void setSslContextParameters(SSLContextParameters sslContextParameters) {
-        this.sslContextParameters = sslContextParameters;
-    }
-
-    public int getLoginTimeout() {
-        return loginTimeout;
-    }
-
-    /**
-     * Amount of time the component will wait for a response from Box.com, default is 30 seconds
-     */
-    public void setLoginTimeout(int loginTimeout) {
-        this.loginTimeout = loginTimeout;
-    }
-
-    @Override
-    public int hashCode() {
-        return super.hashCode();
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (obj instanceof BoxConfiguration) {
-            final BoxConfiguration other = (BoxConfiguration) obj;
-            // configurations are equal if BoxClient creation parameters are equal
-            return boxConfig == other.boxConfig
-                && connectionManagerBuilder == other.connectionManagerBuilder
-                && httpParams == other.httpParams
-                && Objects.equals(clientId, other.clientId)
-                && Objects.equals(clientSecret, other.clientSecret)
-                && authSecureStorage == other.authSecureStorage;
-        }
-        return false;
-    }
-}

http://git-wip-us.apache.org/repos/asf/camel/blob/b51280c8/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConsumer.java b/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConsumer.java
deleted file mode 100644
index 7868d70..0000000
--- a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConsumer.java
+++ /dev/null
@@ -1,125 +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.component.box;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-
-import com.box.boxjavalibv2.dao.BoxEventCollection;
-import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
-import org.apache.camel.component.box.internal.BoxConstants;
-import org.apache.camel.component.box.internal.CachedBoxClient;
-import org.apache.camel.component.box.internal.EventCallback;
-import org.apache.camel.component.box.internal.LongPollingEventsManager;
-import org.apache.camel.impl.DefaultConsumer;
-import org.apache.camel.util.ObjectHelper;
-import org.apache.camel.util.component.ApiConsumerHelper;
-import org.apache.camel.util.component.ApiMethod;
-import org.apache.camel.util.component.ApiMethodHelper;
-import org.apache.camel.util.component.PropertyNamesInterceptor;
-import org.apache.camel.util.component.ResultInterceptor;
-
-/**
- * The Box consumer.
- */
-//public class BoxConsumer extends AbstractApiConsumer<BoxApiName, BoxConfiguration> {
-public class BoxConsumer extends DefaultConsumer
-    implements PropertyNamesInterceptor, ResultInterceptor, EventCallback {
-
-    private static final String CALLBACK_PROPERTY = "callback";
-
-    private final LongPollingEventsManager apiProxy;
-    private final Map<String, Object> properties;
-    private final ApiMethod apiMethod;
-
-    private boolean splitResult = true;
-    private CachedBoxClient cachedBoxClient;
-
-    public BoxConsumer(BoxEndpoint endpoint, Processor processor) {
-        super(endpoint, processor);
-
-        apiMethod = ApiConsumerHelper.findMethod(endpoint, this);
-
-        properties = new HashMap<String, Object>();
-        properties.putAll(endpoint.getEndpointProperties());
-        properties.put(CALLBACK_PROPERTY, this);
-
-        // invoke LongPollingEventsManager.poll to start event polling
-        cachedBoxClient = endpoint.getBoxClient();
-        apiProxy = new LongPollingEventsManager(cachedBoxClient,
-            endpoint.getConfiguration().getHttpParams(), endpoint.getExecutorService());
-    }
-
-    @Override
-    public void interceptPropertyNames(Set<String> propertyNames) {
-        propertyNames.add(CALLBACK_PROPERTY);
-    }
-
-    @Override
-    public void onEvent(BoxEventCollection events) throws Exception {
-        // convert Events to exchange and process
-        log.debug("Processed {} events for {}",
-            ApiConsumerHelper.getResultsProcessed(this, events, splitResult), cachedBoxClient);
-    }
-
-    @Override
-    public void onException(Exception e) {
-        getExceptionHandler().handleException(ObjectHelper.wrapRuntimeCamelException(e));
-    }
-
-    @Override
-    protected void doStart() throws Exception {
-        super.doStart();
-
-        // invoke the API method to start polling
-        ApiMethodHelper.invokeMethod(apiProxy, apiMethod, properties);
-    }
-
-    @Override
-    protected void doStop() throws Exception {
-        super.doStop();
-        apiProxy.stopPolling();
-    }
-
-    public boolean isSplitResult() {
-        return splitResult;
-    }
-
-    public void setSplitResult(boolean splitResult) {
-        this.splitResult = splitResult;
-    }
-
-    @Override
-    public Object splitResult(Object result) {
-        return (result instanceof BoxEventCollection && splitResult)
-            ? ((BoxEventCollection) result).getEntries()
-            : result;
-    }
-
-    @Override
-    public void interceptResult(Object result, Exchange resultExchange) {
-        if (result instanceof BoxEventCollection) {
-            BoxEventCollection boxEventCollection = (BoxEventCollection) result;
-            resultExchange.getIn().setHeader(BoxConstants.CHUNK_SIZE_PROPERTY,
-                boxEventCollection.getChunkSize());
-            resultExchange.getIn().setHeader(BoxConstants.NEXT_STREAM_POSITION_PROPERTY,
-                boxEventCollection.getNextStreamPosition());
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/camel/blob/b51280c8/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConverter.java
----------------------------------------------------------------------
diff --git a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConverter.java b/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConverter.java
deleted file mode 100644
index db9c6ed..0000000
--- a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxConverter.java
+++ /dev/null
@@ -1,99 +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.component.box;
-
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.io.InputStream;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.TimeZone;
-
-import com.box.restclientv2.requestsbase.BoxFileUploadRequestObject;
-
-import org.apache.camel.Converter;
-import org.apache.camel.Exchange;
-import org.apache.camel.component.box.internal.BoxConstants;
-import org.apache.camel.component.file.GenericFile;
-import org.apache.camel.util.StringHelper;
-
-@Converter
-public final class BoxConverter {
-
-    private static final String PROPERTY_FOLDER_ID_DELIMITED = BoxConstants.PROPERTY_PREFIX + "folderId";
-    private static final String PROPERTY_FOLDER_ID =
-        BoxConstants.PROPERTY_PREFIX.substring(0, BoxConstants.PROPERTY_PREFIX.length() - 1) + "FolderId";
-    private static final String ROOT_FOLDER = "0";
-
-    private static final DateFormat ISO8601;
-
-    static {
-        TimeZone tz = TimeZone.getTimeZone("UTC");
-        ISO8601 = new SimpleDateFormat("yyyy-MM-dd'T'HHmmss'Z'");
-        ISO8601.setTimeZone(tz);
-    }
-
-    private BoxConverter() {
-        //Utility Class
-    }
-
-    @Converter
-    public static BoxFileUploadRequestObject genericFileToBoxFileUploadRequestObject(GenericFile<?> file, Exchange exchange) throws Exception {
-        String folderId = ROOT_FOLDER;
-        if (exchange != null && exchange.getIn() != null) {
-            folderId = exchange.getIn().getHeader(PROPERTY_FOLDER_ID_DELIMITED, folderId, String.class);
-            // support camel case CamelBoxFolderId
-            folderId = exchange.getIn().getHeader(PROPERTY_FOLDER_ID, folderId, String.class);
-        }
-        if (file.getFile() instanceof File) {
-            // prefer to use a file input stream if its a java.io.File
-            File f = (File) file.getFile();
-            return BoxFileUploadRequestObject.uploadFileRequestObject(folderId, file.getFileName(), f);
-        }
-        if (exchange != null) {
-            // otherwise ensure the body is loaded as we want the input stream of the body
-            file.getBinding().loadContent(exchange, file);
-            InputStream is = exchange.getContext().getTypeConverter().convertTo(InputStream.class, exchange, file.getBody());
-            return BoxFileUploadRequestObject.uploadFileRequestObject(folderId, file.getFileName(), is);
-        }
-        return null;
-    }
-
-    @Converter
-    public static BoxFileUploadRequestObject toBox(byte[] data, Exchange exchange) throws Exception {
-        String folderId = ROOT_FOLDER;
-        // fileName is generated from exchange.in id by default
-        String fileName;
-
-        if (exchange != null && exchange.getIn() != null) {
-            // get folderId
-            folderId = exchange.getIn().getHeader(PROPERTY_FOLDER_ID_DELIMITED, folderId, String.class);
-            // support camel case CamelBoxFolderId
-            folderId = exchange.getIn().getHeader(PROPERTY_FOLDER_ID, folderId, String.class);
-            
-            fileName = exchange.getIn().getHeader(Exchange.FILE_NAME,
-                StringHelper.sanitize(exchange.getIn().getMessageId()), String.class);
-        } else {
-            synchronized (BoxConverter.class) {
-                fileName = "CamelBox" + ISO8601.format(new Date()) + ".bin";
-            }
-        }
-        InputStream is = new ByteArrayInputStream(data);
-        return BoxFileUploadRequestObject.uploadFileRequestObject(folderId, fileName, is);
-    }
-}

http://git-wip-us.apache.org/repos/asf/camel/blob/b51280c8/components/camel-box/src/main/java/org/apache/camel/component/box/BoxEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxEndpoint.java b/components/camel-box/src/main/java/org/apache/camel/component/box/BoxEndpoint.java
deleted file mode 100644
index 7a80e60..0000000
--- a/components/camel-box/src/main/java/org/apache/camel/component/box/BoxEndpoint.java
+++ /dev/null
@@ -1,257 +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.component.box;
-
-import java.util.Map;
-
-import com.box.boxjavalibv2.BoxClient;
-import com.box.boxjavalibv2.resourcemanagers.IBoxResourceManager;
-import org.apache.camel.Consumer;
-import org.apache.camel.Processor;
-import org.apache.camel.Producer;
-import org.apache.camel.component.box.internal.BoxApiCollection;
-import org.apache.camel.component.box.internal.BoxApiName;
-import org.apache.camel.component.box.internal.BoxClientHelper;
-import org.apache.camel.component.box.internal.BoxConstants;
-import org.apache.camel.component.box.internal.BoxPropertiesHelper;
-import org.apache.camel.component.box.internal.CachedBoxClient;
-import org.apache.camel.spi.UriEndpoint;
-import org.apache.camel.spi.UriParam;
-import org.apache.camel.util.ObjectHelper;
-import org.apache.camel.util.component.AbstractApiEndpoint;
-import org.apache.camel.util.component.ApiMethod;
-import org.apache.camel.util.component.ApiMethodPropertiesHelper;
-
-/**
- * For uploading, downloading and managing files, folders, groups, collaborations, etc on box DOT com.
- */
-@UriEndpoint(firstVersion = "2.14.0", scheme = "box", title = "Box", syntax = "box:apiName/methodName", consumerClass = BoxConsumer.class, consumerPrefix = "consumer", label = "api,file,cloud",
-        lenientProperties = true)
-// need to be lenient as the box component has a bunch of generated configuration classes that lacks documentation
-public class BoxEndpoint extends AbstractApiEndpoint<BoxApiName, BoxConfiguration> {
-
-    private static final String SHARED_LINK_PROPERTY = "sharedLink";
-    private static final String SHARED_PASSWORD_PROPERTY = "sharedPassword";
-
-    @UriParam
-    private BoxConfiguration configuration;
-
-    // cached client
-    private CachedBoxClient cachedBoxClient;
-
-    // proxy manager
-    private IBoxResourceManager apiProxy;
-
-    // configuration values for shared links
-    private String sharedLink;
-    private String sharedPassword;
-    private boolean boxClientShared;
-
-    public BoxEndpoint(String uri, BoxComponent component,
-                       BoxApiName apiName, String methodName, BoxConfiguration endpointConfiguration) {
-        super(uri, component, apiName, methodName, BoxApiCollection.getCollection().getHelper(apiName), endpointConfiguration);
-        this.configuration = endpointConfiguration;
-    }
-
-    public Producer createProducer() throws Exception {
-        // validate producer APIs
-        if (getApiName() == BoxApiName.POLL_EVENTS) {
-            throw new IllegalArgumentException("Producer endpoints do not support endpoint prefix "
-                + BoxApiName.POLL_EVENTS.getName());
-        }
-        return new BoxProducer(this);
-    }
-
-    public Consumer createConsumer(Processor processor) throws Exception {
-        // make sure inBody is not set for consumers
-        if (inBody != null) {
-            throw new IllegalArgumentException("Option inBody is not supported for consumer endpoint");
-        }
-
-        // validate consumer APIs
-        if (getApiName() != BoxApiName.POLL_EVENTS) {
-            throw new IllegalArgumentException("Consumer endpoint only supports endpoint prefix "
-                + BoxApiName.POLL_EVENTS.getName());
-        }
-        final BoxConsumer consumer = new BoxConsumer(this, processor);
-        // also set consumer.* properties
-        configureConsumer(consumer);
-        return consumer;
-    }
-
-    @Override
-    protected ApiMethodPropertiesHelper<BoxConfiguration> getPropertiesHelper() {
-        return BoxPropertiesHelper.getHelper();
-    }
-
-    protected String getThreadProfileName() {
-        return BoxConstants.THREAD_PROFILE_NAME;
-    }
-
-    @Override
-    protected void afterConfigureProperties() {
-        // create client eagerly, a good way to validate configuration
-        createBoxClient();
-
-        this.sharedLink = configuration.getSharedLink();
-        this.sharedPassword = configuration.getSharedPassword();
-
-        // validate shared endpoints
-        switch (getApiName()) {
-        case SHARED_COMMENTS:
-        case SHARED_FILES:
-        case SHARED_FOLDERS:
-        case SHARED_ITEMS:
-            if (ObjectHelper.isEmpty(sharedLink)) {
-                log.warn("Header properties sharedLink and sharedPassword MUST be provided for endpoint {}",
-                    getEndpointUri());
-            }
-            break;
-        default:
-        }
-    }
-
-    private void createBoxClient() {
-        final BoxComponent component = getComponent();
-        this.boxClientShared = configuration.equals(getComponent().getConfiguration());
-        if (boxClientShared) {
-            // get shared singleton client from Component
-            cachedBoxClient = component.getBoxClient();
-        } else {
-            cachedBoxClient = BoxClientHelper.createBoxClient(configuration);
-        }
-    }
-
-    @Override
-    public BoxComponent getComponent() {
-        return (BoxComponent) super.getComponent();
-    }
-
-    @Override
-    public void interceptProperties(Map<String, Object> properties) {
-        // set shared link and password from configuration if not set as header properties
-        if (!properties.containsKey(SHARED_LINK_PROPERTY) && !ObjectHelper.isEmpty(sharedLink)) {
-            properties.put(SHARED_LINK_PROPERTY, sharedLink);
-        }
-        if (!properties.containsKey(SHARED_PASSWORD_PROPERTY) && !ObjectHelper.isEmpty(sharedPassword)) {
-            properties.put(SHARED_PASSWORD_PROPERTY, sharedPassword);
-        }
-    }
-
-    @Override
-    public Object getApiProxy(ApiMethod method, Map<String, Object> args) {
-        if (apiProxy == null) {
-            // create API proxy lazily
-            createApiProxy(args);
-        }
-        return apiProxy;
-    }
-
-    private void createApiProxy(Map<String, Object> args) {
-
-        // get shared link and password from args
-        final String sharedLink = (String) args.get("sharedLink");
-        final String sharedPassword = (String) args.get("sharedPassword");
-
-        switch (apiName) {
-        case SHARED_COMMENTS:
-        case SHARED_FILES:
-        case SHARED_FOLDERS:
-        case SHARED_ITEMS:
-            if (ObjectHelper.isEmpty(sharedLink)) {
-                throw new IllegalArgumentException("Missing required property sharedLink");
-            }
-            break;
-        default:
-        }
-
-        final BoxClient boxClient = cachedBoxClient.getBoxClient();
-        switch (apiName) {
-        case COLLABORATIONS:
-            apiProxy = boxClient.getCollaborationsManager();
-            break;
-        case COMMENTS:
-            apiProxy = boxClient.getCommentsManager();
-            break;
-        case EVENTS:
-            apiProxy = boxClient.getEventsManager();
-            break;
-        case FILES:
-            apiProxy = boxClient.getFilesManager();
-            break;
-        case FOLDERS:
-            apiProxy = boxClient.getFoldersManager();
-            break;
-        case GROUPS:
-            apiProxy = boxClient.getGroupsManager();
-            break;
-        case SEARCH:
-            apiProxy = boxClient.getSearchManager();
-            break;
-        case SHARED_FILES:
-            apiProxy = boxClient.getSharedFilesManager(sharedLink, sharedPassword);
-            break;
-        case SHARED_FOLDERS:
-            apiProxy = boxClient.getSharedFoldersManager(sharedLink, sharedPassword);
-            break;
-        case SHARED_COMMENTS:
-            apiProxy = boxClient.getSharedCommentsManager(sharedLink, sharedPassword);
-            break;
-        case SHARED_ITEMS:
-            apiProxy = boxClient.getSharedItemsManager(sharedLink, sharedPassword);
-            break;
-        case USERS:
-            apiProxy = boxClient.getUsersManager();
-            break;
-        default:
-        }
-    }
-
-    @Override
-    protected void doStart() throws Exception {
-        BoxClientHelper.getOAuthToken(configuration, cachedBoxClient);
-    }
-
-    @Override
-    protected void doStop() throws Exception {
-        try {
-            if (!boxClientShared) {
-                // while there is no way to suspend BoxClient, we can close idle connections to be nice
-                BoxClientHelper.closeIdleConnections(cachedBoxClient);
-            }
-        } finally {
-            super.doStop();
-        }
-    }
-
-    @Override
-    public void doShutdown() throws Exception {
-        try {
-            // cleanup if BoxClient is not shared
-            if (!boxClientShared) {
-                BoxClientHelper.shutdownBoxClient(configuration, cachedBoxClient);
-            }
-        } finally {
-            cachedBoxClient = null;
-            super.doShutdown();
-        }
-    }
-
-    public CachedBoxClient getBoxClient() {
-        return cachedBoxClient;
-    }
-}