update to handle returning old version from put() function in JS and functional rm...
[org.ibex.xt-crawshaw.git] / src / java / org / ibex / xt / shell / Servlet.java
1 package org.ibex.xt.shell;
2
3 import java.io.*;
4 import javax.servlet.*;
5 import javax.servlet.http.*;
6
7 import org.ibex.xt.Prevalence;
8 import org.ibex.js.*;
9
10 import org.prevayler.*;
11
12 public class Servlet extends HttpServlet {
13     private ServletContext cx = null;
14     private Prevayler prevayler;
15     private JS prevalent;
16
17     // FIXME: destroy() counter with normal Servlet
18     public void init(ServletConfig sc) throws ServletException {
19         cx = sc.getServletContext();
20         prevayler = Prevalence.getPrevayler(cx);
21         prevalent = (JS)prevayler.prevalentSystem();
22     }
23
24     public void doPost(HttpServletRequest rq, HttpServletResponse rs) throws IOException {
25         ObjectInputStream in = new ObjectInputStream(rq.getInputStream());
26         ObjectOutputStream out = new ObjectOutputStream(rs.getOutputStream());
27         JSRemote.receive(prevayler, prevalent, in, out);
28         out.flush();
29     }
30 }