Best Cerberus-source code snippet using org.cerberus.servlet.crud.buildrevisionchange.UpdateBuildRevisionInvariant.processRequest
Source:UpdateBuildRevisionInvariant.java
...60 * @param response servlet response61 * @throws ServletException if a servlet-specific error occurs62 * @throws IOException if an I/O error occurs63 */64 protected void processRequest(HttpServletRequest request, HttpServletResponse response)65 throws ServletException, IOException, CerberusException, JSONException {66 JSONObject jsonResponse = new JSONObject();67 Answer ans = new Answer();68 MessageEvent msg = new MessageEvent(MessageEventEnum.DATA_OPERATION_ERROR_UNEXPECTED);69 msg.setDescription(msg.getDescription().replace("%DESCRIPTION%", ""));70 ans.setResultMessage(msg);71 PolicyFactory policy = Sanitizers.FORMATTING.and(Sanitizers.LINKS);72 String charset = request.getCharacterEncoding() == null ? "UTF-8" : request.getCharacterEncoding();73 response.setContentType("application/json");74 // Calling Servlet Transversal Util.75 ServletUtil.servletStart(request);76 77 /**78 * Parsing and securing all required parameters.79 */80 // Parameter that are already controled by GUI (no need to decode) --> We SECURE them81 Integer seq = -1;82 boolean seq_error = false;83 try {84 if (request.getParameter("seq") != null && !request.getParameter("seq").isEmpty()) {85 seq = Integer.valueOf(policy.sanitize(request.getParameter("seq")));86 }87 } catch (Exception ex) {88 seq_error = true;89 }90 Integer level = -1;91 boolean level_error = false;92 try {93 if (request.getParameter("level") != null && !request.getParameter("level").isEmpty()) {94 level = Integer.valueOf(policy.sanitize(request.getParameter("level")));95 }96 } catch (Exception ex) {97 level_error = true;98 }99 // Parameter that needs to be secured --> We SECURE+DECODE them100 String system = ParameterParserUtil.parseStringParamAndDecodeAndSanitize(request.getParameter("system"), "", charset);101 String versionName = ParameterParserUtil.parseStringParamAndDecodeAndSanitize(request.getParameter("versionname"), "", charset);102 // Parameter that we cannot secure as we need the html --> We DECODE them103 /**104 * Checking all constrains before calling the services.105 */106 if (StringUtil.isNullOrEmpty(system)) {107 msg = new MessageEvent(MessageEventEnum.DATA_OPERATION_ERROR_EXPECTED);108 msg.setDescription(msg.getDescription().replace("%ITEM%", "BuildRevisionInvariant")109 .replace("%OPERATION%", "Update")110 .replace("%REASON%", "System name is missing!"));111 ans.setResultMessage(msg);112 } else if (level_error) {113 msg = new MessageEvent(MessageEventEnum.DATA_OPERATION_ERROR_EXPECTED);114 msg.setDescription(msg.getDescription().replace("%ITEM%", "BuildRevisionInvariant")115 .replace("%OPERATION%", "Update")116 .replace("%REASON%", "Could not manage to convert level to an integer value!"));117 ans.setResultMessage(msg);118 } else if (seq_error) {119 msg = new MessageEvent(MessageEventEnum.DATA_OPERATION_ERROR_EXPECTED);120 msg.setDescription(msg.getDescription().replace("%ITEM%", "BuildRevisionInvariant")121 .replace("%OPERATION%", "Update")122 .replace("%REASON%", "Could not manage to convert sequence to an integer value!"));123 ans.setResultMessage(msg);124 } else {125 /**126 * All data seems cleans so we can call the services.127 */128 ApplicationContext appContext = WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());129 IBuildRevisionInvariantService buildRevisionInvariantService = appContext.getBean(IBuildRevisionInvariantService.class);130 AnswerItem resp = buildRevisionInvariantService.readByKey(system, level, seq);131 if (!(resp.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode()) && resp.getItem()!=null)) {132 /**133 * Object could not be found. We stop here and report the error.134 */135 msg = new MessageEvent(MessageEventEnum.DATA_OPERATION_ERROR_EXPECTED);136 msg.setDescription(msg.getDescription().replace("%ITEM%", "BuildRevisionInvariant")137 .replace("%OPERATION%", "Update")138 .replace("%REASON%", "BuildRevisionInvariant does not exist."));139 ans.setResultMessage(msg);140 } else {141 /**142 * The service was able to perform the query and confirm the143 * object exist, then we can update it.144 */145 BuildRevisionInvariant buildRevisionInvariantData = (BuildRevisionInvariant) resp.getItem();146 buildRevisionInvariantData.setSystem(system);147 buildRevisionInvariantData.setLevel(level);148 buildRevisionInvariantData.setSeq(seq);149 buildRevisionInvariantData.setVersionName(versionName);150 ans = buildRevisionInvariantService.update(buildRevisionInvariantData.getSystem(), buildRevisionInvariantData.getLevel(), buildRevisionInvariantData.getSeq(), buildRevisionInvariantData);151 if (ans.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {152 /**153 * Update was successful. Adding Log entry.154 */155 ILogEventService logEventService = appContext.getBean(LogEventService.class);156 logEventService.createForPrivateCalls("/UpdateBuildRevisionInvariant", "UPDATE", "Updated BuildRevisionInvariant : ['" + system + "'|'" + level + "'|'" + seq + "']", request);157 }158 }159 }160 /**161 * Formating and returning the json result.162 */163 jsonResponse.put("messageType", ans.getResultMessage().getMessage().getCodeString());164 jsonResponse.put("message", ans.getResultMessage().getDescription());165 response.getWriter().print(jsonResponse);166 response.getWriter().flush();167 }168 // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">169 /**170 * Handles the HTTP <code>GET</code> method.171 *172 * @param request servlet request173 * @param response servlet response174 * @throws ServletException if a servlet-specific error occurs175 * @throws IOException if an I/O error occurs176 */177 @Override178 protected void doGet(HttpServletRequest request, HttpServletResponse response)179 throws ServletException, IOException {180 try {181 processRequest(request, response);182 } catch (CerberusException ex) {183 LOG.warn(ex);184 } catch (JSONException ex) {185 LOG.warn(ex);186 }187 }188 /**189 * Handles the HTTP <code>POST</code> method.190 *191 * @param request servlet request192 * @param response servlet response193 * @throws ServletException if a servlet-specific error occurs194 * @throws IOException if an I/O error occurs195 */196 @Override197 protected void doPost(HttpServletRequest request, HttpServletResponse response)198 throws ServletException, IOException {199 try {200 processRequest(request, response);201 } catch (CerberusException ex) {202 LOG.warn(ex);203 } catch (JSONException ex) {204 LOG.warn(ex);205 }206 }207 /**208 * Returns a short description of the servlet.209 *210 * @return a String containing servlet description211 */212 @Override213 public String getServletInfo() {214 return "Short description";...
processRequest
Using AI Code Generation
1import org.cerberus.servlet.crud.buildrevisionchange.UpdateBuildRevisionInvariant;2import org.cerberus.servlet.crud.buildrevisionchange.UpdateBuildRevisionInvariantRequest;3UpdateBuildRevisionInvariantRequest request = new UpdateBuildRevisionInvariantRequest();4request.setBuild("1.0.0");5request.setRevision("1");6request.setVersionName("
processRequest
Using AI Code Generation
1import org.cerberus.servlet.crud.buildrevisionchange.UpdateBuildRevisionInvariant;2UpdateBuildRevisionInvariant updateBuildRevisionInvariant = new UpdateBuildRevisionInvariant();3updateBuildRevisionInvariant.processRequest(request, response);4import org.cerberus.servlet.crud.buildrevisionchange.UpdateBuildRevisionInvariant;5UpdateBuildRevisionInvariant updateBuildRevisionInvariant = new UpdateBuildRevisionInvariant();6updateBuildRevisionInvariant.processRequest(request, response);
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!