public void save(Savable object, File f) throws IOException { File parentDirectory = f.getParentFile(); if (parentDirectory != null && !parentDirectory.exists()) { parentDirectory.mkdirs(); } FileOutputStream fos = new FileOutputStream(f); try { save(object, fos); } finally { fos.close(); } }
public void onAction(String name, boolean pressed, float tpf) { if (name.equals("save") && !pressed) { FileOutputStream fos = null; try { long start = System.currentTimeMillis(); fos = new FileOutputStream(new File("terrainsave.jme")); // we just use the exporter and pass in the terrain BinaryExporter.getInstance().save((Savable)terrain, new BufferedOutputStream(fos)); fos.flush(); float duration = (System.currentTimeMillis() - start) / 1000.0f; System.out.println("Save took " + duration + " seconds"); } catch (IOException ex) { Logger.getLogger(TerrainTestReadWrite.class.getName()).log(Level.SEVERE, null, ex); } finally { try { if (fos != null) { fos.close(); } } catch (IOException e) { Logger.getLogger(TerrainTestReadWrite.class.getName()).log(Level.SEVERE, null, e); } } } } };
@Override public void writeObject(ByteBuffer buffer, Object object) throws IOException { Savable s = (Savable) object; BufferOutputStream out = new BufferOutputStream(buffer); exporter.save(s, out); out.close(); }
ex.save(data, os); Logger.getLogger(SaveGame.class.getName()).log(Level.FINE, "Saving data to: {0}", saveFile.getAbsolutePath()); } catch (IOException ex1) {
/** * Saves the object into memory then loads it from memory. * * Used by tests to check if the persistence system is working. * * @param <T> The type of savable. * @param assetManager AssetManager to load assets from. * @param object The object to save and then load. * @return A new instance that has been saved and loaded from the * original object. */ public static <T extends Savable> T saveAndLoad(AssetManager assetManager, T object) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); try { BinaryExporter exporter = new BinaryExporter(); exporter.save(object, baos); BinaryImporter importer = new BinaryImporter(); importer.setAssetManager(assetManager); return (T) importer.load(baos.toByteArray()); } catch (IOException ex) { // Should never happen. throw new AssertionError(ex); } }
@Override public void simpleInitApp() { Spatial ogreModel = assetManager.loadModel("Models/Oto/Oto.mesh.xml"); DirectionalLight dl = new DirectionalLight(); dl.setColor(ColorRGBA.White); dl.setDirection(new Vector3f(0,-1,-1).normalizeLocal()); rootNode.addLight(dl); try { ByteArrayOutputStream baos = new ByteArrayOutputStream(); BinaryExporter exp = new BinaryExporter(); exp.save(ogreModel, baos); ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); BinaryImporter imp = new BinaryImporter(); imp.setAssetManager(assetManager); Node ogreModelReloaded = (Node) imp.load(bais, null, null); AnimComposer composer = ogreModelReloaded.getControl(AnimComposer.class); composer.setCurrentAction("Walk"); rootNode.attachChild(ogreModelReloaded); } catch (IOException ex){ ex.printStackTrace(); } } }
BinaryExporter be = new BinaryExporter(); try { be.save(model, file); } catch (IOException e) { e.printStackTrace();
BinaryExporter.getInstance().save(loaderNode, bout);
BinaryExporter be = new BinaryExporter(); try { be.save(model, file); } catch (IOException e) { e.printStackTrace();
BinaryExporter.getInstance().save(physicsRootNode, bout);
BinaryExporter be = new BinaryExporter(); try { be.save(node, file); } catch (IOException e) { e.printStackTrace();
public void save(Savable object, File f) throws IOException { File parentDirectory = f.getParentFile(); if (parentDirectory != null && !parentDirectory.exists()) { parentDirectory.mkdirs(); } FileOutputStream fos = new FileOutputStream(f); try { save(object, fos); } finally { fos.close(); } }
public boolean save(Savable object, File f) throws IOException { File parentDirectory = f.getParentFile(); if(parentDirectory != null && !parentDirectory.exists()) { parentDirectory.mkdirs(); } FileOutputStream fos = new FileOutputStream(f); boolean rVal = save(object, fos); fos.close(); return rVal; }
@Override public void writeObject(ByteBuffer buffer, Object object) throws IOException { Savable s = (Savable) object; BufferOutputStream out = new BufferOutputStream(buffer); exporter.save(s, out); out.close(); }
@Override public void writeObject(ByteBuffer buffer, Object object) throws IOException { Savable s = (Savable) object; BufferOutputStream out = new BufferOutputStream(buffer); exporter.save(s, out); out.close(); }
private void save() { trimList(); try { BinaryExporter.getInstance().save(this, getFile()); } catch (IOException ex) { logger.log(Level.SEVERE, "Failed to save HiScores data!", ex); } }
/** * Saves a savable in a system-dependent way. Note that only small amounts of data can be saved. * @param gamePath A unique path for this game, e.g. com/mycompany/mygame * @param dataName A unique name for this savegame, e.g. "save_001" * @param data The Savable to save */ public static void saveGame(String gamePath, String dataName, Savable data) { Preferences prefs = Preferences.userRoot().node(gamePath); BinaryExporter ex = BinaryExporter.getInstance(); ByteArrayOutputStream out = new ByteArrayOutputStream(); try { GZIPOutputStream zos = new GZIPOutputStream(out); ex.save(data, zos); zos.close(); } catch (IOException ex1) { Logger.getLogger(SaveGame.class.getName()).log(Level.SEVERE, "Error saving data: {0}", ex1); ex1.printStackTrace(); } UUEncoder enc = new UUEncoder(); String dataString = enc.encodeBuffer(out.toByteArray()); // System.out.println(dataString); if (dataString.length() > Preferences.MAX_VALUE_LENGTH) { throw new IllegalStateException("SaveGame dataset too large"); } prefs.put(dataName, dataString); }
/** * Convert a single KMF to JME object * * @param assetManager assetManager, for finding stuff * @param entry KMF / name entry * @param destination destination directory * @throws RuntimeException May fail */ private void convertModel(AssetManager assetManager, Entry<String, KmfFile> entry, String destination, EngineTexturesFile engineTexturesFile) throws RuntimeException { //Remove the file extension from the file KmfAssetInfo ai = new KmfAssetInfo(assetManager, new AssetKey(entry.getKey()), entry.getValue(), true); KmfModelLoader kmfModelLoader = new KmfModelLoader(); try { Node n = (Node) kmfModelLoader.load(ai); // Export BinaryExporter exporter = BinaryExporter.getInstance(); File file = new File(destination.concat(entry.getKey().substring(0, entry.getKey().length() - 4)).concat(".j3o")); exporter.save(n, file); } catch (Exception ex) { String msg = "Failed to convert KMF entry " + entry.getKey() + "!"; LOGGER.log(Level.SEVERE, msg, ex); throw new RuntimeException(msg, ex); } }
/** * Saves the object into memory then loads it from memory. * * Used by tests to check if the persistence system is working. * * @param <T> The type of savable. * @param assetManager AssetManager to load assets from. * @param object The object to save and then load. * @return A new instance that has been saved and loaded from the * original object. */ public static <T extends Savable> T saveAndLoad(AssetManager assetManager, T object) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); try { BinaryExporter exporter = new BinaryExporter(); exporter.save(object, baos); BinaryImporter importer = new BinaryImporter(); importer.setAssetManager(assetManager); return (T) importer.load(baos.toByteArray()); } catch (IOException ex) { // Should never happen. throw new AssertionError(ex); } }
BinaryExporter.getInstance().save(image, output); BufferedImage preview = ImageToAwt.convert(image, false, true, 0); ImageIO.write(preview, "png", new File(output + ".png"));