From 0165e2dd986389f7c04b48cd0452f73c3d01c10a Mon Sep 17 00:00:00 2001 From: tkellner Date: Thu, 12 Dec 2013 18:44:48 +0000 Subject: Display CMS data in Secure Viewer git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@1251 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../bku/slcommands/impl/cms/CMSHashDataInput.java | 67 ++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/CMSHashDataInput.java (limited to 'bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/CMSHashDataInput.java') diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/CMSHashDataInput.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/CMSHashDataInput.java new file mode 100644 index 00000000..6aa37e15 --- /dev/null +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/CMSHashDataInput.java @@ -0,0 +1,67 @@ +package at.gv.egiz.bku.slcommands.impl.cms; + +import java.io.ByteArrayInputStream; +import java.io.InputStream; + +import at.gv.egiz.stal.HashDataInput; + +public class CMSHashDataInput implements HashDataInput { + + private final static String DEFAULT_FILENAME = "SignatureData"; + private final static String CMS_DEF_REFERENCE_ID = "Reference-1"; + + private byte[] data; + private String mimeType; + + public CMSHashDataInput(byte[] data, String mimeType) { + this.data = data; + this.mimeType = mimeType; + } + + @Override + public String getReferenceId() { + return CMS_DEF_REFERENCE_ID; + } + + @Override + public String getMimeType() { + return mimeType; + } + + @Override + public String getEncoding() { + return null; + } + + @Override + public String getFilename() { + String fileName = DEFAULT_FILENAME; + String extension = getExtensionForMimeType(mimeType); + if (extension != null) + fileName += extension; + return fileName; + } + + @Override + public InputStream getHashDataInput() { + return new ByteArrayInputStream(data); + } + private static String getExtensionForMimeType(String mimeType) { + if (mimeType.equalsIgnoreCase("application/pdf")) { + return ".pdf"; + } + else if (mimeType.equalsIgnoreCase("text/plain")) { + return ".txt"; + } + else if (mimeType.equalsIgnoreCase("application/xml")) { + return ".xml"; + } + else if (mimeType.equalsIgnoreCase("application/zip")) { + return ".zip"; + } + else if (mimeType.equalsIgnoreCase("application/gzip")) { + return ".gz"; + } + return null; + } +} -- cgit v1.2.3