public class org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter extends java.lang.Object
{
private byte[] bytes;
public void <init>()
{
org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter v;
v := @this: org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public org.apache.isis.applib.value.Blob toBlob(java.lang.String, java.io.File)
{
java.lang.Throwable v;
byte[] v;
java.io.ByteArrayOutputStream v, v;
org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter v;
java.io.IOException v;
java.io.FileInputStream v, v;
java.io.File v;
java.lang.String v;
org.apache.isis.subdomains.excel.applib.dom.ExcelService$Exception v;
org.apache.isis.applib.value.Blob v;
v := @this: org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter;
v := @parameter: java.lang.String;
v := @parameter: java.io.File;
v = null;
v = null;
label:
v = new java.io.FileInputStream;
specialinvoke v.<java.io.FileInputStream: void <init>(java.io.File)>(v);
v = v;
v = new java.io.ByteArrayOutputStream;
specialinvoke v.<java.io.ByteArrayOutputStream: void <init>()>();
v = v;
staticinvoke <org.apache.poi.util.IOUtils: long copy(java.io.InputStream,java.io.OutputStream)>(v, v);
v = new org.apache.isis.applib.value.Blob;
v = virtualinvoke v.<java.io.ByteArrayOutputStream: byte[] toByteArray()>();
specialinvoke v.<org.apache.isis.applib.value.Blob: void <init>(java.lang.String,java.lang.String,byte[])>(v, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", v);
label:
staticinvoke <org.apache.poi.util.IOUtils: void closeQuietly(java.io.Closeable)>(v);
staticinvoke <org.apache.poi.util.IOUtils: void closeQuietly(java.io.Closeable)>(v);
return v;
label:
v := @caughtexception;
v = new org.apache.isis.subdomains.excel.applib.dom.ExcelService$Exception;
specialinvoke v.<org.apache.isis.subdomains.excel.applib.dom.ExcelService$Exception: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v := @caughtexception;
staticinvoke <org.apache.poi.util.IOUtils: void closeQuietly(java.io.Closeable)>(v);
staticinvoke <org.apache.poi.util.IOUtils: void closeQuietly(java.io.Closeable)>(v);
throw v;
catch java.io.IOException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public org.apache.isis.applib.value.Blob toBlob(java.lang.String, java.net.URL)
{
byte[] v;
java.net.URL v;
org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter v;
java.lang.String v;
org.apache.isis.applib.value.Blob v;
v := @this: org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter;
v := @parameter: java.lang.String;
v := @parameter: java.net.URL;
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter: byte[] getBytes(java.net.URL)>(v);
v = new org.apache.isis.applib.value.Blob;
specialinvoke v.<org.apache.isis.applib.value.Blob: void <init>(java.lang.String,java.lang.String,byte[])>("unused", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", v);
return v;
}
private byte[] getBytes(java.net.URL)
{
byte[] v, v, v;
java.net.URL v;
org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter v;
v := @this: org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter;
v := @parameter: java.net.URL;
v = v.<org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter: byte[] bytes>;
if v != null goto label;
v = specialinvoke v.<org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter: byte[] readBytes(java.net.URL)>(v);
v.<org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter: byte[] bytes> = v;
label:
v = v.<org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter: byte[] bytes>;
return v;
}
private byte[] readBytes(java.net.URL)
{
java.lang.Throwable v;
byte[] v;
java.net.URL v;
org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter v;
java.lang.IllegalArgumentException v;
java.lang.Exception v;
java.lang.String v;
java.io.InputStream v;
v := @this: org.apache.isis.subdomains.excel.applib.util.ExcelFileBlobConverter;
v := @parameter: java.net.URL;
label:
v = virtualinvoke v.<java.net.URL: java.io.InputStream openStream()>();
label:
v = staticinvoke <org.apache.isis.commons.internal.base._Bytes: byte[] of(java.io.InputStream)>(v);
label:
if v == null goto label;
virtualinvoke v.<java.io.InputStream: void close()>();
label:
return v;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.net.URL)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Could not read from resource: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Exception from label to label with label;
}
}