@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.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); 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); 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); File model = new File(dir, DEFAULT_MODEL_FILENAME); File trainingData = new File(dir, "training-data.grmm"); if (!model.exists()) { String msg = "model file \"%s\" not found"; throw new IllegalArgumentException(String.format(msg, model)); } if (!trainingData.exists()) { String msg = "training data file \"%s\" not found"; throw new IllegalArgumentException(String.format(msg, trainingData)); } // handle an outcome example from the training data over to the // classifier // through a special jar-file-entry: LineNumberReader lnr = new LineNumberReader(new FileReader(trainingData)); this.outcomeExample = lnr.readLine().split("----")[0]; lnr.close(); JarStreams.putNextJarEntry(modelStream, JAR_ENTRY_MODEL, model); modelStream.putNextEntry(new JarEntry(JAR_ENTRY_OUTCOME_EXAMPLE)); new ObjectOutputStream(modelStream).writeObject(outcomeExample); }
/** * As the filename of the model is not known the only solution is to write the model back to a * temporary file */ @Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); JarStreams.getNextJarEntry(modelStream, MODEL_NAME); this.modelFile = File.createTempFile("model", ".crfsuite"); this.modelFile.deleteOnExit(); logger.log(Level.FINE, "Start writing model to " + modelFile.getAbsolutePath()); InputStream inputStream = new DataInputStream(modelStream); OutputStream out = new FileOutputStream(modelFile); byte buf[] = new byte[1024]; int len; while ((len = inputStream.read(buf)) > 0) { out.write(buf, 0, len); } out.close(); inputStream.close(); logger.log(Level.FINE, "Model is written to " + modelFile.getAbsolutePath()); }
@Override protected void packageClassifier(File dir, JarOutputStream modelStream) throws IOException { super.packageClassifier(dir, modelStream); File model = new File(dir, DEFAULT_MODEL_FILENAME); File trainingData = new File(dir, "training-data.grmm"); if (!model.exists()) { String msg = "model file \"%s\" not found"; throw new IllegalArgumentException(String.format(msg, model)); } if (!trainingData.exists()) { String msg = "training data file \"%s\" not found"; throw new IllegalArgumentException(String.format(msg, trainingData)); } // handle an outcome example from the training data over to the // classifier // through a special jar-file-entry: LineNumberReader lnr = new LineNumberReader(new FileReader(trainingData)); this.outcomeExample = lnr.readLine().split("----")[0]; lnr.close(); JarStreams.putNextJarEntry(modelStream, JAR_ENTRY_MODEL, model); modelStream.putNextEntry(new JarEntry(JAR_ENTRY_OUTCOME_EXAMPLE)); new ObjectOutputStream(modelStream).writeObject(outcomeExample); }
/** * As the filename of the model is not known the only solution is to write the model back to a * temporary file */ @Override protected void unpackageClassifier(JarInputStream modelStream) throws IOException { super.unpackageClassifier(modelStream); JarStreams.getNextJarEntry(modelStream, MODEL_NAME); this.modelFile = File.createTempFile("model", ".crfsuite"); this.modelFile.deleteOnExit(); logger.log(Level.FINE, "Start writing model to " + modelFile.getAbsolutePath()); InputStream inputStream = new DataInputStream(modelStream); OutputStream out = new FileOutputStream(modelFile); byte buf[] = new byte[1024]; int len; while ((len = inputStream.read(buf)) > 0) { out.write(buf, 0, len); } out.close(); inputStream.close(); logger.log(Level.FINE, "Model is written to " + modelFile.getAbsolutePath()); }