You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by bi...@apache.org on 2020/04/14 20:02:20 UTC
[axis-axis2-java-core] 08/38: Merged r1185504 to the 1.5 branch.
This is an automated email from the ASF dual-hosted git repository.
billblough pushed a commit to branch 1_5
in repository https://gitbox.apache.org/repos/asf/axis-axis2-java-core.git
commit b29d549a9566470d3d5c805060ca6617466133a7
Author: Sagara Gunathunga <sa...@apache.org>
AuthorDate: Tue Oct 18 07:23:43 2011 +0000
Merged r1185504 to the 1.5 branch.
---
.../axis2/databinding/utils/ConverterUtil.java | 34 ++++++++++++++--------
.../axis2/databinding/utils/ConverterUtilTest.java | 15 ++++++++++
2 files changed, 37 insertions(+), 12 deletions(-)
diff --git a/modules/adb/src/org/apache/axis2/databinding/utils/ConverterUtil.java b/modules/adb/src/org/apache/axis2/databinding/utils/ConverterUtil.java
index ad98668..9968867 100644
--- a/modules/adb/src/org/apache/axis2/databinding/utils/ConverterUtil.java
+++ b/modules/adb/src/org/apache/axis2/databinding/utils/ConverterUtil.java
@@ -73,6 +73,7 @@ import javax.xml.stream.XMLStreamReader;
import javax.xml.stream.XMLStreamWriter;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
+import java.io.IOException;
import java.lang.reflect.Array;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
@@ -1316,18 +1317,27 @@ public class ConverterUtil {
*
* @return string
*/
- public static String getStringFromDatahandler(DataHandler dataHandler) {
- try {
- InputStream inStream;
- if (dataHandler == null) {
- return "";
- }
- inStream = dataHandler.getDataSource().getInputStream();
- byte[] data = IOUtils.getStreamAsByteArray(inStream);
- return Base64.encode(data);
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
+ public static String getStringFromDatahandler(DataHandler dataHandler) {
+ InputStream inStream = null;
+ try {
+ if (dataHandler == null) {
+ return "";
+ }
+ inStream = dataHandler.getDataSource().getInputStream();
+ byte[] data = IOUtils.getStreamAsByteArray(inStream);
+ return Base64.encode(data);
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+
+ } finally {
+ try {
+ if (inStream != null)
+ inStream.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }
}
/**
diff --git a/modules/adb/test/org/apache/axis2/databinding/utils/ConverterUtilTest.java b/modules/adb/test/org/apache/axis2/databinding/utils/ConverterUtilTest.java
index 63d47ba..fc5ef08 100644
--- a/modules/adb/test/org/apache/axis2/databinding/utils/ConverterUtilTest.java
+++ b/modules/adb/test/org/apache/axis2/databinding/utils/ConverterUtilTest.java
@@ -29,6 +29,12 @@ import java.util.Date;
import java.util.List;
import java.util.TimeZone;
+import javax.activation.DataHandler;
+import javax.activation.DataSource;
+
+import org.apache.axiom.attachments.ByteArrayDataSource;
+import org.apache.axiom.om.util.Base64;
+
public class ConverterUtilTest extends TestCase {
/** Test conversion of Big Integer */
@@ -165,4 +171,13 @@ public class ConverterUtilTest extends TestCase {
}
+
+ public void testConvertToStringFromDataHandler() {
+ String inStr = "Sample Data";
+ DataSource ds = new ByteArrayDataSource(inStr.getBytes());
+ DataHandler dh = new DataHandler(ds);
+ String rawOutStr = ConverterUtil.convertToString(dh);
+ String outStr = new String(Base64.decode(rawOutStr));
+ assertEquals("Not expected content", inStr, outStr);
+ }
}