package com.cellbots.cellserv.server; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.httpclient.HttpStatus; import com.cellbots.CellbotProtos; public class VideoServlet extends HttpServlet { private static final long serialVersionUID = -1542374763947377440L; public String getServletInfo() { return "Servlet for handeling communication with phone"; } public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { String botID = ""; if(req.getParameter("BOTID") != null) { botID = req.getParameter("BOTID"); } if (StateHolder.getInstance(botID).newVideoFrameAvilble()) { res.getOutputStream().write(StateHolder.getInstance(botID).getVideoFrame()); } else { res.setStatus(HttpStatus.SC_NOT_MODIFIED); } } public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { // res.setContentType("text/html"); try { CellbotProtos.AudioVideoFrame frame = CellbotProtos.AudioVideoFrame.parseFrom(req.getInputStream()); String botID = ""; if(frame.hasBotID()) { botID = frame.getBotID(); } StateHolder.getInstance(botID).setVideoFrame(frame); } catch (IOException e) { e.printStackTrace(); } } }