@Override public void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, "outcome-lookup.txt", new File(dir, "outcome-lookup.txt")); JarStreams.putNextJarEntry(modelStream, MODEL_FILENAME, new File(dir, MODEL_FILENAME)); }
@Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); try { JarStreams.getNextJarEntry(modelStream, JAR_ENTRY_MODEL); this.acrf = (ACRF) new ObjectInputStream(new GZIPInputStream(modelStream)).readObject(); JarStreams.getNextJarEntry(modelStream, JAR_ENTRY_OUTCOME_EXAMPLE); this.outcomeExample = (String) new ObjectInputStream(modelStream).readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, MODEL_NAME, new File(dir, "training-data.maxent.bin.gz")); File featureLookup = new File(dir, NameNumberFeaturesEncoder.LOOKUP_FILE_NAME); if (featureLookup.exists()) { JarStreams.putNextJarEntry(modelStream, "name-lookup.txt", featureLookup); } }
@Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); try { JarStreams.getNextJarEntry(modelStream, JAR_ENTRY_MODEL); this.acrf = (ACRF) new ObjectInputStream(new GZIPInputStream(modelStream)).readObject(); JarStreams.getNextJarEntry(modelStream, JAR_ENTRY_OUTCOME_EXAMPLE); this.outcomeExample = (String) new ObjectInputStream(modelStream).readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, MODEL_NAME, new File(dir, MODEL_NAME)); }
@Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); JarStreams.getNextJarEntry(modelStream, MODEL_NAME); ObjectInputStream objectStream = new ObjectInputStream(modelStream); try { this.transducer = (Transducer) objectStream.readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, MODEL_NAME, new File(dir, MODEL_NAME)); }
@Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); JarStreams.getNextJarEntry(modelStream, MODEL_NAME); ObjectInputStream objectStream = new ObjectInputStream(modelStream); try { this.classifier = (Classifier) objectStream.readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } } }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, MODEL_NAME, new File(dir, MODEL_NAME)); }
@Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); JarStreams.getNextJarEntry(modelStream, MODEL_NAME); ObjectInputStream objectStream = new ObjectInputStream(modelStream); try { this.transducer = (Transducer) objectStream.readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, MODEL_NAME, new File(dir, MODEL_NAME)); }
@Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); JarStreams.getNextJarEntry(modelStream, MODEL_NAME); ObjectInputStream objectStream = new ObjectInputStream(modelStream); try { this.classifier = (Classifier) objectStream.readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } } }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, MODEL_NAME, new File(dir, MODEL_NAME)); }
protected static boolean extractFileToDir(File dir, JarInputStream modelStream, String fn) throws IOException { JarEntry entry = JarStreams.getNextJarEntry(modelStream, fn); if (entry == null) { return false; } File outFile = new File(dir, fn); try (FileOutputStream fos = new FileOutputStream(outFile)) { byte[] byteArray = new byte[1024]; int i; while ((i = modelStream.read(byteArray)) > 0) { // Write the bytes to the output stream fos.write(byteArray, 0, i); } } return true; }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, MODEL_NAME, new File(dir, MODEL_NAME)); }
@Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); JarStreams.getNextJarEntry(modelStream, "model.sigmoid"); ObjectInput in = new ObjectInputStream(modelStream); try { this.sigmoid = (Sigmoid) in.readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } in.close(); }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); JarStreams.putNextJarEntry(modelStream, MODEL_NAME, new File(dir, MODEL_NAME)); }
@Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); JarStreams.getNextJarEntry(modelStream, "model.sigmoid"); ObjectInput in = new ObjectInputStream(modelStream); try { this.sigmoid = (Sigmoid) in.readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } in.close(); }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); int label = 1; while (true) { File modelFile = new File(dir, String.format("training-data-%d.svmlight.model", label)); File sigmoidFile = new File(dir, String.format("training-data-%d.svmlight.sigmoid", label)); if (!modelFile.exists()) { break; } String modelName = String.format("model-%d.svmlight", label); String sigmoidName = String.format("model-%d.sigmoid", label); JarStreams.putNextJarEntry(modelStream, modelName, modelFile); JarStreams.putNextJarEntry(modelStream, sigmoidName, sigmoidFile); label += 1; } }
@Override public void unpackageClassifier(JarInputStream modelStream) throws IOException { JarStreams.getNextJarEntry(modelStream, DELEGATED_MODEL_FILE_NAME); JarInputStream delegatedModelStream = new JarInputStream(modelStream); Manifest delegatedManifest = delegatedModelStream.getManifest(); JarClassifierBuilder<?> delegatedBuilder = JarClassifierBuilder.fromManifest(delegatedManifest); this.delegatedClassifier = this.cast(delegatedBuilder.loadClassifier(delegatedModelStream)); JarStreams.getNextJarEntry(modelStream, OUTCOME_FEATURE_EXTRACTOR_FILE_NAME); ObjectInputStream objectStream = new ObjectInputStream(modelStream); try { this.outcomeFeatureExtractors = (OutcomeFeatureExtractor[]) objectStream.readObject(); } catch (ClassNotFoundException e) { throw new IOException(e); } }