public void perform() throws IOException { final SavedGameManager mgr = SavedGameManager.getSavedGameManager(); final Player player = getPlayer(); final XStream xs = mgr.getXStream(); final File file = new File(mgr.getPath(player)); try { xs.toXML(player.getAttributes(), new FileOutputStream(file)); } catch (RuntimeException ex) { throw new IOException(ex.getMessage()); } }
@SuppressWarnings("unchecked") public void perform() throws IOException { final SavedGameManager mgr = SavedGameManager.getSavedGameManager(); final Player player = getPlayer(); final XStream xs = mgr.getXStream(); final File file = new File(mgr.getPath(player)); if (file.exists()) { try { Map<String, Object> attributes = (Map<String, Object>) xs.fromXML(new FileInputStream(file)); for (Map.Entry<String, Object> entry : attributes.entrySet()) { player.setAttribute(entry.getKey(), entry.getValue(), true); } } catch (RuntimeException ex) { throw new IOException(ex.getMessage()); } } player.getSession().setReady(); player.getWorld().completeRegistration(player.getSession()); }