You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by al...@apache.org on 2020/07/02 13:10:32 UTC

[camel] branch master updated: CAMEL-15267: Added a ByteArrayOutputStream to ByteBuffer converter in core

This is an automated email from the ASF dual-hosted git repository.

aldettinger pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/master by this push:
     new d2801df  CAMEL-15267: Added a ByteArrayOutputStream to ByteBuffer converter in core
d2801df is described below

commit d2801df5b801450f5071823b92b90eba0ecd860f
Author: aldettinger <al...@gmail.com>
AuthorDate: Thu Jul 2 14:42:48 2020 +0200

    CAMEL-15267: Added a ByteArrayOutputStream to ByteBuffer converter in core
---
 .../java/org/apache/camel/converter/NIOConverterLoader.java       | 2 ++
 .../src/main/java/org/apache/camel/converter/NIOConverter.java    | 6 ++++++
 .../test/java/org/apache/camel/converter/NIOConverterTest.java    | 8 ++++++++
 3 files changed, 16 insertions(+)

diff --git a/core/camel-base/src/generated/java/org/apache/camel/converter/NIOConverterLoader.java b/core/camel-base/src/generated/java/org/apache/camel/converter/NIOConverterLoader.java
index 4806ace..70e4f16 100644
--- a/core/camel-base/src/generated/java/org/apache/camel/converter/NIOConverterLoader.java
+++ b/core/camel-base/src/generated/java/org/apache/camel/converter/NIOConverterLoader.java
@@ -33,6 +33,8 @@ public final class NIOConverterLoader implements TypeConverterLoader {
             (type, exchange, value) -> org.apache.camel.converter.NIOConverter.toString((java.nio.ByteBuffer) value, exchange));
         addTypeConverter(registry, java.nio.ByteBuffer.class, byte[].class, false,
             (type, exchange, value) -> org.apache.camel.converter.NIOConverter.toByteBuffer((byte[]) value));
+        addTypeConverter(registry, java.nio.ByteBuffer.class, java.io.ByteArrayOutputStream.class, false,
+            (type, exchange, value) -> org.apache.camel.converter.NIOConverter.toByteBuffer((java.io.ByteArrayOutputStream) value));
         addTypeConverter(registry, java.nio.ByteBuffer.class, java.io.File.class, false,
             (type, exchange, value) -> org.apache.camel.converter.NIOConverter.toByteBuffer((java.io.File) value));
         addTypeConverter(registry, java.nio.ByteBuffer.class, java.lang.Double.class, false,
diff --git a/core/camel-base/src/main/java/org/apache/camel/converter/NIOConverter.java b/core/camel-base/src/main/java/org/apache/camel/converter/NIOConverter.java
index aabc83d..c3279f9 100644
--- a/core/camel-base/src/main/java/org/apache/camel/converter/NIOConverter.java
+++ b/core/camel-base/src/main/java/org/apache/camel/converter/NIOConverter.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.converter;
 
+import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
@@ -64,6 +65,11 @@ public final class NIOConverter {
     }
 
     @Converter
+    public static ByteBuffer toByteBuffer(ByteArrayOutputStream baos) {
+        return ByteBuffer.wrap(baos.toByteArray());
+    }
+
+    @Converter
     public static ByteBuffer toByteBuffer(File file) throws IOException {
         InputStream in = null;
         try {
diff --git a/core/camel-core/src/test/java/org/apache/camel/converter/NIOConverterTest.java b/core/camel-core/src/test/java/org/apache/camel/converter/NIOConverterTest.java
index 988b944..907b76b 100644
--- a/core/camel-core/src/test/java/org/apache/camel/converter/NIOConverterTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/converter/NIOConverterTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.converter;
 
+import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.InputStream;
 import java.nio.ByteBuffer;
@@ -80,6 +81,13 @@ public class NIOConverterTest extends ContextTestSupport {
     }
 
     @Test
+    public void testToByteBufferByteArrayOutputStream() {
+        ByteArrayOutputStream baos = new ByteArrayOutputStream();
+        baos.write(72);
+        assertEquals(72, NIOConverter.toByteBuffer(baos).get());
+    }
+
+    @Test
     public void testToByteBufferString() {
         ByteBuffer bb = NIOConverter.toByteBuffer("Hello", null);
         assertNotNull(bb);