From 29ad090c29567ff1a4d3a2ec9b8ad0b5d80ee24d Mon Sep 17 00:00:00 2001 From: pdanner Date: Mon, 6 Dec 2010 16:34:52 +0000 Subject: git-svn-id: https://joinup.ec.europa.eu/svn/pdf-as/trunk@671 7b5415b0-85f9-ee4d-85bd-d5d0c3b42d1c --- .../at/gv/egiz/pdfas/web/io/ByteArrayDataSink.java | 49 +++++++++++++++++++++ .../egiz/pdfas/web/io/ByteArrayPdfDataSource.java | 41 ++++++++++++++++++ .../at/gv/egiz/pdfas/web/io/TextDataSource.java | 50 ++++++++++++++++++++++ 3 files changed, 140 insertions(+) create mode 100644 pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/ByteArrayDataSink.java create mode 100644 pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/ByteArrayPdfDataSource.java create mode 100644 pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/TextDataSource.java (limited to 'pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io') diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/ByteArrayDataSink.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/ByteArrayDataSink.java new file mode 100644 index 0000000..4bdb724 --- /dev/null +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/ByteArrayDataSink.java @@ -0,0 +1,49 @@ +package at.gv.egiz.pdfas.web.io; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.OutputStream; + +import at.gv.egiz.pdfas.api.io.DataSink; + +public class ByteArrayDataSink implements DataSink { + + private ByteArrayOutputStream baos; + private String mimeType; + private String characterEncoding; + + public OutputStream createOutputStream(String mimeType) throws IOException { + this.mimeType = mimeType; + baos = new ByteArrayOutputStream(); + return baos; + } + + public OutputStream createOutputStream(String mimeType, String characterEncoding) + throws IOException { + this.mimeType = mimeType; + this.characterEncoding = characterEncoding; + baos = new ByteArrayOutputStream(); + return baos; + } + + public byte[] getData() { + return baos.toByteArray(); + } + + public String getMimeType() { + return this.mimeType; + } + + public String getCharacterEncoding() { + return this.characterEncoding; + } + + public void setMimeType(String mimeType) { + this.mimeType = mimeType; + } + + public void setCharacterEncoding(String characterEncoding) { + this.characterEncoding = characterEncoding; + } + +} diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/ByteArrayPdfDataSource.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/ByteArrayPdfDataSource.java new file mode 100644 index 0000000..ae53397 --- /dev/null +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/ByteArrayPdfDataSource.java @@ -0,0 +1,41 @@ +package at.gv.egiz.pdfas.web.io; + +import java.io.ByteArrayInputStream; +import java.io.InputStream; + +import at.gv.egiz.pdfas.api.io.DataSource; + +/** + * + * @author exthex + * + */ +public class ByteArrayPdfDataSource implements DataSource { + + private byte[] data; + + public ByteArrayPdfDataSource(byte[] data) { + this.data = data; + } + + public InputStream createInputStream() { + return new ByteArrayInputStream(this.data); + } + + public int getLength() { + return this.data.length; + } + + public byte[] getAsByteArray() { + return this.data; + } + + public String getMimeType() { + return "application/pdf"; + } + + public String getCharacterEncoding() { + return null; + } + +} diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/TextDataSource.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/TextDataSource.java new file mode 100644 index 0000000..de5c7a8 --- /dev/null +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/io/TextDataSource.java @@ -0,0 +1,50 @@ +package at.gv.egiz.pdfas.web.io; + +import java.io.ByteArrayInputStream; +import java.io.InputStream; +import java.io.UnsupportedEncodingException; + +import at.gv.egiz.pdfas.api.io.DataSource; + +/** + * + * @author exthex + * + */ +public class TextDataSource implements DataSource { + + private String text; + + public TextDataSource(String text) { + this.text = text; + } + + public InputStream createInputStream() { + try { + return new ByteArrayInputStream(text.getBytes("UTF-8")); + } catch (UnsupportedEncodingException e) { + throw new RuntimeException(e); + } + } + + public int getLength() { + return 0; + } + + public byte[] getAsByteArray() { + try{ + return text.getBytes("UTF-8"); + } catch (UnsupportedEncodingException e) { + throw new RuntimeException(e); + } + } + + public String getMimeType() { + return "text/plain"; + } + + public String getCharacterEncoding() { + return "UTF-8"; + } + +} -- cgit v1.2.3