Author: ningjiang Date: Fri Feb 22 14:34:47 2013 New Revision: 1449059 URL: http://svn.apache.org/r1449059 Log: CAMEL-6088 Add option to camel-crypto PGP to not always use CONSOLE for filename with thanks to Steve.
Modified: camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPDataFormat.java Modified: camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPDataFormat.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPDataFormat.java?rev=1449059&r1=1449058&r2=1449059&view=diff ============================================================================== --- camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPDataFormat.java (original) +++ camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPDataFormat.java Fri Feb 22 14:34:47 2013 @@ -32,6 +32,7 @@ import org.apache.camel.Exchange; import org.apache.camel.spi.DataFormat; import org.apache.camel.util.ExchangeHelper; import org.apache.camel.util.IOHelper; +import org.apache.camel.util.ObjectHelper; import org.apache.commons.io.IOUtils; import org.bouncycastle.bcpg.ArmoredOutputStream; import org.bouncycastle.bcpg.CompressionAlgorithmTags; @@ -139,7 +140,13 @@ public class PGPDataFormat implements Da PGPSignatureGenerator sigGen = createSignatureGenerator(exchange, comOut); PGPLiteralDataGenerator litData = new PGPLiteralDataGenerator(); - OutputStream litOut = litData.open(comOut, PGPLiteralData.BINARY, PGPLiteralData.CONSOLE, new Date(), new byte[BUFFER_SIZE]); + String fileName = exchange.getIn().getHeader(Exchange.FILE_NAME, String.class); + if (ObjectHelper.isEmpty(fileName)) { + // This marks the file as For Your Eyes Only... may cause problems for the receiver if they use + // an automated process to decrypt as the filename is appended with _CONSOLE + fileName = PGPLiteralData.CONSOLE; + } + OutputStream litOut = litData.open(comOut, PGPLiteralData.BINARY, fileName, new Date(), new byte[BUFFER_SIZE]); try { byte[] buffer = new byte[BUFFER_SIZE];