View Javadoc
1   package xuml.tools.datastore;
2   
3   import java.io.IOException;
4   
5   import javax.servlet.ServletException;
6   import javax.servlet.http.HttpServlet;
7   import javax.servlet.http.HttpServletRequest;
8   import javax.servlet.http.HttpServletResponse;
9   
10  import xuml.tools.diagram.Context;
11  
12  public class DatastoreServlet extends HttpServlet {
13  
14      private static final long serialVersionUID = 7659767941927427251L;
15  
16      private static final String keyKind = "diagram";
17  
18      @Override
19      protected void doGet(HttpServletRequest req, HttpServletResponse resp)
20              throws ServletException, IOException {
21          try {
22              String entity = req.getParameter("entity");
23              String property = req.getParameter("property");
24              String mime = req.getParameter("mime");
25              resp.setContentType(mime);
26              DatastoreText ds = Context.instance().getDatastore();
27              String result = ds.get(keyKind, entity, property);
28              if (result != null)
29                  resp.getOutputStream().write(result.getBytes());
30          } catch (RuntimeException e) {
31              e.printStackTrace();
32              throw e;
33          }
34      }
35  
36      @Override
37      protected void doPost(HttpServletRequest req, HttpServletResponse resp)
38              throws ServletException, IOException {
39          String entity = req.getParameter("entity");
40          String property = req.getParameter("property");
41          String value = req.getParameter("value");
42          DatastoreText ds = Context.instance().getDatastore();
43          ds.put(keyKind, entity, property, value);
44      }
45  
46  }