Mercurial > hg > RemoteEditor > REPSessionManager
diff rep/SessionList.java @ 39:c873ee0318f8
*** empty log message ***
author | pin |
---|---|
date | Sat, 10 Nov 2007 21:06:18 +0900 |
parents | de8638eb0edd |
children | 86a1553028ad |
line wrap: on
line diff
--- a/rep/SessionList.java Sat Nov 10 18:51:09 2007 +0900 +++ b/rep/SessionList.java Sat Nov 10 21:06:18 2007 +0900 @@ -28,6 +28,8 @@ import org.w3c.dom.NodeList; import org.xml.sax.SAXException; +import test.SessionXMLEncoder; + public class SessionList { //List<LinkedList<SocketChannel>> sessions = new LinkedList<LinkedList<SocketChannel>>(); @@ -52,7 +54,7 @@ public void makeDefaultSession(){ session3.put(0, new Session(0, null, null)); - session4.add(new Session(0, "defaul", smchannel)); + //session4.add(new Session(0, "defaul", smchannel)); } public int getEditorNumber() { @@ -186,70 +188,91 @@ tmpSessionList.add(new Session(0, string, channel)); } - 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); +// 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); // -// 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(); +// 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 LinkedList<Session> getList() { + return session4; + } + + public String toXML() { + SessionXMLEncoder encoder = new SessionXMLEncoder(session4); + encoder.sessionListToXML(); + return null; + } + + public int addSession(Session session) { + sessionID++; + //sessions2.put(sessionID, new LinkedList<SocketChannel>()); + //sessions.add(new LinkedList<SocketChannel>()); + //return sessions2.size(); + session3.put(sessionID, session); + //addEditor(channel, sid, command); + session4.add(session); + return sessionID; } }