package codeine.servlets.api_servlets.angular; import javax.inject.Inject; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import codeine.jsons.global.ExperimentalConfJson; import codeine.jsons.global.ExperimentalConfJsonStore; import codeine.servlet.AbstractApiServlet; public class CodeineExperimentalConfigurationApiServlet extends AbstractApiServlet { private static final Logger log = Logger.getLogger(CodeineExperimentalConfigurationApiServlet.class); private static final long serialVersionUID = 1L; @Inject private ExperimentalConfJsonStore configurationJsonStore; @Override protected boolean checkPermissions(HttpServletRequest request) { if (request.getMethod().equals("PUT")) { if (!isAdministrator(request)) { log.info("User can not update configuration"); return false; } return true; } return true; } @Override protected void myGet(HttpServletRequest request, HttpServletResponse response) { writeResponseJson(response, configurationJsonStore.get()); } @Override protected void myPut(HttpServletRequest req, HttpServletResponse resp) { ExperimentalConfJson config = readBodyJson(req, ExperimentalConfJson.class); log.info("Will update codeine Experimenta configuration. New Config is: " + config); configurationJsonStore.store(config); writeResponseJson(resp, configurationJsonStore.get()); } }