Mercurial > hg > RemoteEditor > REPSessionManager
view rep/SessionList.java @ 394:1d5b608f39da
checkMerge fix
author | one |
---|---|
date | Wed, 19 Nov 2008 15:31:29 +0900 |
parents | fa041bae35f1 |
children |
line wrap: on
line source
package rep; import java.util.HashMap; public class SessionList extends HashMap<Integer,Session>{ /** * */ private static final long serialVersionUID = 1L; private int sid_root = 0; // public String getXML() { ///* SessionListをXMLに書き出す。ときの形式 // * <Session> // * <editor> // * <sid/> // * <host/> // * <port/> // * <filename/> // * </editor> // * <editor> // * <sid/> // * <host/> // * <port/> // * </editor> // * </Session> // * <SessionManager> // * <host/> // * <port/> // * </SessionManager> // * <Session> // * </Session> // * // StringWriter str = null; // try { // str = new StringWriter(); // DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); // DocumentBuilder builder = factory.newDocumentBuilder(); // Document doc = builder.newDocument(); // Element root = doc.getDocumentElement(); // root = doc.createElement("SessionList"); // for(Session session : session4){ // Element element = doc.createElement("Session"); // root.appendChild(element); // Element element2 = doc.createElement("editor"); // element.appendChild(element2); // Editor editor = session.getMaster(); // Element element3 = doc.createElement(editor.getHost()); // Element element4 = doc.createElement(editor.getPort()); // Element element5 = doc.createElement(editor.getName()); // element5 = doc.createElement(session.getName()); // element2.appendChild(element3); // element2.appendChild(element4); // element2.appendChild(element5); // // } // doc.appendChild(root); // // TransformerFactory tfactory = TransformerFactory.newInstance(); // Transformer transformer = tfactory.newTransformer(); // StreamResult result = new StreamResult(str); // //transformer.transform(new DOMSource(doc), new StreamResult(System.out)); // transformer.transform(new DOMSource(doc), result); // System.out.println(str); //// //// XMLEncoder e = new XMLEncoder(System.out); //// e.writeObject(session4); //// e.writeObject(stringlist); //// e.close(); // // //System.out.println(doc); // }catch (Exception e){ // e.printStackTrace(); // } // return str.toString(); // }*/ public Session getSession(int sid) { return get(sid); } public int newSessionID() { return ++sid_root ; } public void merge(SessionList receivedSessionList) { for(Session s:receivedSessionList.values()) { int sid = s.getSID(); if (containsKey(sid)) { get(sid).merge(s); } else { put(sid,s); } } } }