svn commit: r889323 - in /websites/production/camel/content: book-dataformat-appendix.html book-in-one-page.html cache/main.pageCache crypto.html
Author: buildbot Date: Fri Dec 6 07:23:51 2013 New Revision: 889323 Log: Production update by buildbot for camel Modified: websites/production/camel/content/book-dataformat-appendix.html websites/production/camel/content/book-in-one-page.html websites/production/camel/content/cache/main.pageCache websites/production/camel/content/crypto.html Modified: websites/production/camel/content/book-dataformat-appendix.html == --- websites/production/camel/content/book-dataformat-appendix.html (original) +++ websites/production/camel/content/book-dataformat-appendix.html Fri Dec 6 07:23:51 2013 @@ -3901,8 +3901,8 @@ from("direct:inline-sign")
[CONF] Apache Camel > Crypto
Crypto Page edited by Franz Forsthofer Changes (4) ... Map userId2Passphrase = new HashMap(2); // add passphrases of several private keys whose corresponding public keys have been used to encrypt the messages userId2Passphrase.put("UserIdOfKey1","passphrase1"); // you must specify the exact User ID! userId2Passphrase.put("key1","passphrase1"); userId2Passphrase.put("UserIdOfKey2","passphrase2"); userId2Passphrase.put("key2","passphrase2"); PGPPassphraseAccessor passphraseAccessor = new PGPPassphraseAccessorDefault(userId2Passphrase); ... // the method getPublicKeyRing() provides the public keyring as byte array containing the public keys pgpVerifyAndDecrypt.setSignatureKeyRing((getPublicKeyRing()); // alternatively you can use setSignatureKeyFileName(signatgureKeyfileName) // it is not necessary to specify the encryption or signer User Id from("direct:start") ... Full Content Crypto Available as of Camel 2.3 PGP Available as of Camel 2.9 The Crypto Data Format integrates the Java Cryptographic Extension into Camel, allowing simple and flexible encryption and decryption of messages using Camel's familiar marshall and unmarshal formatting mechanism. It assumes marshalling to mean encryption to cyphertext and unmarshalling to mean decryption back to the original plaintext. This data format implements only symmetric (shared-key) encryption and decyption. Options Name Type Default Description algorithm String DES/CBC/PKCS5Padding The JCE algorithm name indicating the cryptographic algorithm that will be used. algorithmParameterSpec java.security.spec.AlgorithmParameterSpec null A JCE AlgorithmParameterSpec used to initialize the Cipher. bufferSize Integer 2048 the size of the buffer used in the signature process. cryptoProvider String null The name of the JCE Security Provider that should be used. initializationVector byte[] null A byte array containing the Initialization Vector that will be used to initialize the Cipher. inline boolean false Flag indicating that the configured IV should be inlined into the encrypted data stream. macAlgorithm String null The JCE algorithm name indicating the Message Authentication algorithm. shouldAppendHMAC boolean null Flag indicating that a Message Authentication Code should be calculated and appended to the encrypted data. Basic Usage At its most basic all that is required to encrypt/decrypt an exchange is a shared secret key. If one or more instances of the Crypto data format are configured with this key the format can be used to encrypt the payload in one route (or part of one) and decrypted in another. For example, using the Java DSL as follows: In Spring the dataformat is configured first and then used in routes ... Specifying the Encryption Algorithm Changing the algorithm is a matter of supplying the JCE algorithm name. If you change the algorithm you will need to use a compatible key. A list of the available algorithms in Java 7 is available via the Java Cryptography Architecture Standard Algorithm Name Documentation. Specifying an Initialization Vector Some crypto algorithms, particularly block algorithms, require configuration with an initial block of data known as an Initialization Vector. In the JCE this is passed as an AlgorithmParameterSpec when the Cipher is initialized. To use such a vector with the CryptoDataFormat you can configure it with a byte[] containing the required data e.g. or with spring, suppling a reference to a byte[] The same vector is required in both the encryption and decryption phases. As it is not necessary to keep the IV a secret, the DataFormat allows for it to be inlined into the encrypted data and subsequently read out in the decryption phase to initialize the Cipher. To inline the IV set the /oinline flag. or with spring. For more information of the use of Initialization Vectors, consult http://en.wikipedia.org/wiki/Initialization_vector http://www.herongyang.com/Cryptography/ http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation Hashed Message Authentication Codes (HMAC) To avoid attacks against the encrypted data while it is in transit the CryptoDataFormat can also calculate a Message Authentication Code for the encrypted exchange contents based on a configurable MAC algorithm. The calculated HMAC is appended to the stream after encryption. It is separated from the stream in the decryption phase. The MAC is recalculated and verified against the transmitted version to insure nothing was ta
svn commit: r889237 - in /websites/production/camel/content: book-component-appendix.html book-in-one-page.html cache/main.pageCache ftp.html ftp2.html
Author: buildbot Date: Thu Dec 5 14:20:50 2013 New Revision: 889237 Log: Production update by buildbot for camel Modified: websites/production/camel/content/book-component-appendix.html websites/production/camel/content/book-in-one-page.html websites/production/camel/content/cache/main.pageCache websites/production/camel/content/ftp.html websites/production/camel/content/ftp2.html Modified: websites/production/camel/content/book-component-appendix.html == --- websites/production/camel/content/book-component-appendix.html (original) +++ websites/production/camel/content/book-component-appendix.html Thu Dec 5 14:20:50 2013 @@ -5451,6 +5451,17 @@ The reason is that we leverage Spring's You can also assign a user name and password to the proxy, if necessary. Please consult the documentation for com.jcraft.jsch.Proxy to discover all options. +Setting preferred SFTP authentication method + +If you want to explicitly specify the list of authentication method that should be used by sftp component, use preferredAuthentications option. If for example you would like Camel to attempt to authenticate with private/public SSH key and fallback to user/password authentication in the case when no public key is available, use the following route configuration: + + +ftp://localhost:/root?username=admin&password=admin&preferredAuthentications=publickey,password";). + to("bean:processFile"); +]]> + + Consuming a single file using a fixed name When you want to download a single file and knows the file name, you can use fileName=myFileName.txt to tell Camel the name of the file to download. By default the consumer will still do a FTP LIST command to do a directory listing and then filter these files based on the fileName option. Though in this use-case it may be desirable to turn off the directory listing by setting useList=false. For example the user account used to login to the FTP server may not have permission to do a FTP LIST command. So you can turn off this with useList=false, and then provide the fixed name of the file to download with fileName=myFileName.txt, then the FTP consumer can still download the file. If the file for some reason does not exist, then Camel will by default throw an exception, you can turn this off and ignore this by setting ignoreFileNotFoundOrPermissionError=true. Modified: websites/production/camel/content/book-in-one-page.html == --- websites/production/camel/content/book-in-one-page.html (original) +++ websites/production/camel/content/book-in-one-page.html Thu Dec 5 14:20:50 2013 @@ -27048,6 +27048,17 @@ The reason is that we leverage Spring's You can also assign a user name and password to the proxy, if necessary. Please consult the documentation for com.jcraft.jsch.Proxy to discover all options. +Setting preferred SFTP authentication method + +If you want to explicitly specify the list of authentication method that should be used by sftp component, use preferredAuthentications option. If for example you would like Camel to attempt to authenticate with private/public SSH key and fallback to user/password authentication in the case when no public key is available, use the following route configuration: + + +ftp://localhost:/root?username=admin&password=admin&preferredAuthentications=publickey,password";). + to("bean:processFile"); +]]> + + Consuming a single file using a fixed name When you want to download a single file and knows the file name, you can use fileName=myFileName.txt to tell Camel the name of the file to download. By default the consumer will still do a FTP LIST command to do a directory listing and then filter these files based on the fileName option. Though in this use-case it may be desirable to turn off the directory listing by setting useList=false. For example the user account used to login to the FTP server may not have permission to do a FTP LIST command. So you can turn off this with useList=false, and then provide the fixed name of the file to download with fileName=myFileName.txt, then the FTP consumer can still download the file. If the file for some reason does not exist, then Camel will by default throw an exception, you can turn this off and ignore this by setting ignoreFileNotFoundOrPermissionError=true. Modified: websites/production/camel/content/cache/main.pageCache == Binary files - no diff available. Modified: w
[CONF] Apache Camel > FTP2
FTP2 Page edited by Henryk Konsek Changes (1) ... You can also assign a user name and password to the proxy, if necessary. Please consult the documentation for {{com.jcraft.jsch.Proxy}} to discover all options. h3. Setting preferred SFTP authentication method If you want to explicitly specify the list of authentication method that should be used by {{sftp}} component, use {{preferredAuthentications}} option. If for example you would like Camel to attempt to authenticate with private/public SSH key and fallback to user/password authentication in the case when no public key is available, use the following route configuration: {code} from("sftp://localhost:/root?username=admin&password=admin&preferredAuthentications=publickey,password"). to("bean:processFile"); {code} h3. Consuming a single file using a fixed name ... Full Content FTP/SFTP/FTPS Component This component provides access to remote file systems over the FTP and SFTP protocols. Maven users will need to add the following dependency to their pom.xml for this component: org.apache.camel camel-ftp x.x.x More optionsSee File for more options as all the options from File is inherited. Consuming from remote FTP serverMake sure you read the section titled Default when consuming files further below for details related to consuming files. URI format ftp://[username@]hostname[:port]/directoryname[?options] sftp://[username@]hostname[:port]/directoryname[?options] ftps://[username@]hostname[:port]/directoryname[?options] Where directoryname represents the underlying directory. Can contain nested folders. If no username is provided, then anonymous login is attempted using no password. If no port number is provided, Camel will provide default values according to the protocol (ftp = 21, sftp = 22, ftps = ). You can append query options to the URI in the following format, ?option=value&option=value&... This component uses two different libraries for the actual FTP work. FTP and FTPS uses Apache Commons Net while SFTP uses JCraft JSCH. The FTPS component is only available in Camel 2.2 or newer. FTPS (also known as FTP Secure) is an extension to FTP that adds support for the Transport Layer Security (TLS) and the Secure Sockets Layer (SSL) cryptographic protocols. URI Options The options below are exclusive for the FTP component. More optionsSee File for more options as all the options from File is inherited. Name Default Value Description username null Specifies the username to use to log in to the remote file systen. password null Specifies the password to use to log in to the remote file system. binary false Specifies the file transfer mode, BINARY or ASCII. Default is ASCII (false). disconnect false Camel 2.2: Whether or not to disconnect from remote FTP server right after use. Can be used for both consumer and producer. Disconnect will only disconnect the current connection to the FTP server. If you have a consumer which you want to stop, then you need to stop the consumer/route instead. localWorkDirectory null When consuming, a local work directory can be used to store the remote file content directly in local files, to avoid loading the content into memory. This is beneficial, if you consume a very big remote file and thus can conserve memory. See below for more details. passiveMode false FTP and FTPS only: Specifies whether to use passive mode connections. Default is active mode (false). securityProtocol TLS FTPS only: Sets the underlying security protocol. The following values are defined: TLS: Transport Layer Security SSL: Secure Sockets Layer disableSecureDataChannelDefaults false Camel 2.4: FTPS only: Whether or not to disable using default values for execPbsz and execProt when using secure data transfer. You can set this option to true if you want to be in absolute full control what the options execPbsz and execProt should be used. download true Camel 2.11: Whether the FTP consumer should download the file. If this option is set to false, then the message body will be null, but the consumer will still trigger a Camel Exchange that has details about the file such as file name, file size, etc. It's just that the file will not be downloaded. streamDownload false Camel 2.11: Whether the consumer should download the entire file up front, the default behavior, or if it should pass an InputStream read from the remote resource rather than an in-memory array as the in body of the Camel Exchange. This option is ignored if download is false or is localWorkDirectory is provided. This option is useful for working with large remote files. execPro
svn commit: r889220 - in /websites/production/camel/content: cache/main.pageCache camel-2130-release.html
Author: buildbot Date: Thu Dec 5 11:19:01 2013 New Revision: 889220 Log: Production update by buildbot for camel Modified: websites/production/camel/content/cache/main.pageCache websites/production/camel/content/camel-2130-release.html Modified: websites/production/camel/content/cache/main.pageCache == Binary files - no diff available. Modified: websites/production/camel/content/camel-2130-release.html == --- websites/production/camel/content/camel-2130-release.html (original) +++ websites/production/camel/content/camel-2130-release.html Thu Dec 5 11:19:01 2013 @@ -135,9 +135,6 @@ New Tooling -[camel:hawtio] Maven goal. - - API changes Known Issues @@ -148,7 +145,7 @@ The below list is a best effort, and we may miss some updates, its better to use the http://vdiff.notsoclever.cc/"; rel="nofollow">Camel Dependencies Version Differences web tool which uses the released projects for comparison. -AHC 1.7.20 to 1.7.21APNS 0.1.6 to 0.2.3AWS-SDK 1.5.1 to 1.6.3Avro 1.7.3 to 1.7.5BeanIO 2.0.6 to 2.0.7CXF 2.7.6 to 2.7.8EHCache 2.7.2 to 2.7.4Elasticsearch 0.20.6 to 0.90.5FOP 1.0 to 1.1Guave 14.0.1 to 15.0Hazelcast 2.6 to 3.0.2ICal4j 1.0.4 to 1.0.5.2Jetty 7.6.9 to 8.1.12Joda time 2.1 to 2.3JRuby 1.7.4 to 1.7.5Lucene 3.6.0 to 4.5.1MongoDB Java Driver 2.11.2 to 2.11.3Quartz 2.2.0 to 2.2.1Restlet 2.0.15 to 2.1.4Saxon 9.5.0.2 to 9.5.1-2Scala 2.10.2 to 2.10.3Servlet API 2.5 to 3.0SolrJ 3.6.2 to 4.5.1Spring Batch 2.2.1.RELEASE to 2.2.2.RELEASESpring Redis 1.0.4.RELEASE to 1.1.0.RELEASESSHD 0.8.0 to 0.9.0TestNG 6.8.5 to 6.8.7 +AHC 1.7.20 to 1.7.21APNS 0.1.6 to 0.2.3AWS-SDK 1.5.1 to 1.6.3Avro 1.7.3 to 1.7.5BeanIO 2.0.6 to 2.0.7CXF 2.7.6 to 2.7.8EHCache 2.7.2 to 2.7.4Elasticsearch 0.20.6 to 0.90.5FOP 1.0 to 1.1Guave 14.0.1 to 15.0Hazelcast 2.6 to 3.0.2ICal4j 1.0.4 to 1.0.5.2Jclouds 1.6.2-incubating to 1.6.3Jetty 7.6.9 to 8.1.12Joda time 2.1 to 2.3JRuby 1.7.4 to 1.7.5Lucene 3.6.0 to 4.5.1MongoDB Java Driver 2.11.2 to 2.11.3Quartz 2.2.0 to 2.2.1Restlet 2.0.15 to 2.1.4Saxon 9.5.0.2 to 9.5.1-2Scala 2.10.2 to 2.10.3Servlet API 2.5 to 3.0SolrJ 3.6.2 to 4.5.1Spring Batch 2.2.1.RELEASE to 2.2.2.RELEASESpring Redis 1.0.4.RELEASE to 1.1.0.RELEASESSHD 0.8.0 to 0.9.0TestNG 6.8.5 to 6.8.7 Internal changes
[CONF] Apache Camel > Camel 2.13.0 Release
Camel 2.13.0 Release Page edited by Babak Vahdat Changes (1) ... * Hazelcast 2.6 to 3.0.2 * ICal4j 1.0.4 to 1.0.5.2 * Jclouds 1.6.2-incubating to 1.6.3 * Jetty 7.6.9 to 8.1.12 * Joda time 2.1 to 2.3 ... Full Content Camel 2.13.0 release (currently in progress) New and Noteworthy Welcome to the 2.13.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...) The MBean names registered by Camel JMX no longer include the hostname in the context part, eg before context=myHost/myCamelId and now after context=myCamelId. Having the hostname in the MBean name does not bring much value, and in fact makes things more complicated as the mbean name changes depending on the host running Camel. MBean naming in OSGi cleaned up to use simpler naming with symbolicName. Before we could have MBean names with duplicate bundle ids such as context=114-114-camel-6, which now is using the symbolic name instead, context=MyApplication. When using multiple OSGi Blueprint 's then Camel now favors using non-default placeholders, or the last property-placeholder defined in the Blueprint XML file. This allows for example to define default properties in one placeholder, and override these values in other placeholders. FTP consumer allow to download a single named file without using the FTP LIST command. This allows to download a known file from a FTP server even when the user account does not have permission to do FTP LIST command. FTP consumer allow to ignore file not found or insufficient file permission errors. Data Format using marshal now leverages Stream caching out of the box if enabled, which allows to marshal big streams and spool to disk, instead of being pure in-memory based. Improved using Bean when the bean is looked up in the Registry, when using concurrent processing in the route. Added cache option to beanRef and in the DSL. This avoids looking up the Bean from the Registry on each usage; this can safely be done for singleton beans. Configuring Data Formats in XML attributes now supports reference lookup using the # syntax, eg JDBC component now also support outputType to specify the expected output as either a List or single Object. As well allow to map to a bean using a BeanRowMapper to control the mapping of ROW names to bean properties. Both Quartz as well as Quartz2 based ScheduledRoutePolicy has been improved to better support cluster setups (e.g. to not schedule jobs being already scheduled through another node inside a given cluster). Reduced the work the Aggregate EIP does while holding a lock during aggregation, which can lead to improved performance in some use-cases. JndiRegistry now implements all the find methods. VM component now supports multipleConsumers=true across deployment units. Added @PreConsumed to JPA consumer. Added CamelFileName header support to the HDFS producer Like as JpaConsumer now also JpaProducer of the JPA component supports the CamelEntityManager header. Restlet consumer now supports returning custom headers as HTTP headers from the Camel Message. Spring Java Config CamelConfiguration now automagically detects all RouteBuilder instances registered in the Spring context if CamelConfiguration#routes method is not overridden. Added support for transferring custom headers with RabbitMQ component. PGPDataFormat enables stream cache during unmarshaling. FileIdempotentRepository now creates necessary parent directories together with the new repository file. Properties component and property placeholder will now ignore non existing JVM and environment options as well if ignoreMissingLocation is set to true. Improved Stream consumer to enrich the Message with headers about current index / completion flag. Added @BeanInject to inject beans (obtained from the Registry) in your beans such as RouteBuilder classes. Polished the Karaf commands to output tables sorted and auto calculated width, so the data is formatted nicely. Introduced UnitOfWorkFactory to allow end users to use custom UnitOfWork implementations created by the factory. Doing request/reply over JMS allows per individual message requestTimeout value by specifying the timeout value in the "CamelJmsRequestTimeout" header. Quartz and Quartz2 components now enlist the quartz scheduler by default in JMX, unless configured to be disabled. Fixed Issues Fixed an ArrayIndexOutOfBoundsException with Message History when using SEDA Fixed requestTimeout on Netty not triggering when we have received message. Fixed Parameter Binding Annotations on boolean types to evaluate as Predicate instead of _expression_ Fixed using File consumer with delete=true&readLock=fileLock not being able to delete th
git commit: CAMEL-7041: Upgraded to jclouds 1.6.3
Updated Branches: refs/heads/master 298889a9d -> d43c34bca CAMEL-7041: Upgraded to jclouds 1.6.3 Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/d43c34bc Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/d43c34bc Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/d43c34bc Branch: refs/heads/master Commit: d43c34bcac8057e893582fe338507cb6770bcfd0 Parents: 298889a Author: Babak Vahdat Authored: Thu Dec 5 11:18:36 2013 +0100 Committer: Babak Vahdat Committed: Thu Dec 5 11:18:36 2013 +0100 -- .../apache/camel/component/jclouds/JcloudsBlobStoreConsumer.java | 2 +- .../org/apache/camel/component/jclouds/JcloudsComputeProducer.java | 1 - parent/pom.xml | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/camel/blob/d43c34bc/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsBlobStoreConsumer.java -- diff --git a/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsBlobStoreConsumer.java b/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsBlobStoreConsumer.java index b16a608..b702b19 100644 --- a/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsBlobStoreConsumer.java +++ b/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsBlobStoreConsumer.java @@ -81,7 +81,7 @@ public class JcloudsBlobStoreConsumer extends ScheduledBatchPollingConsumer { Exchange exchange = endpoint.createExchange(); CachedOutputStream cos = new CachedOutputStream(exchange); IOHelper.copy(body, cos); -exchange.getIn().setBody(cos.getStreamCache()); +exchange.getIn().setBody(cos.newStreamCache()); exchange.setProperty(JcloudsConstants.BLOB_NAME, blobName); queue.add(exchange); } http://git-wip-us.apache.org/repos/asf/camel/blob/d43c34bc/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsComputeProducer.java -- diff --git a/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsComputeProducer.java b/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsComputeProducer.java index 139e29f..3d630d4 100644 --- a/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsComputeProducer.java +++ b/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsComputeProducer.java @@ -107,7 +107,6 @@ public class JcloudsComputeProducer extends JcloudsProducer { /** * Runs a script on the target node. */ -@SuppressWarnings("deprecation") protected void runScriptOnNode(Exchange exchange) throws CamelException { String script = exchange.getIn().getBody(String.class); String nodeId = getNodeId(exchange); http://git-wip-us.apache.org/repos/asf/camel/blob/d43c34bc/parent/pom.xml -- diff --git a/parent/pom.xml b/parent/pom.xml index 62cc115..02c7d60 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -210,7 +210,7 @@ 1.0.0.Final 3.1.3.GA 1.3.18.GA -1.6.2-incubating +1.6.3 14.0.1 2.0