PolicyRolesController extends RestrictedBaseController { @RequestMapping( value = {"/save_NonSuperRolesData"}, method = {org.springframework.web.bind.annotation.RequestMethod.POST}) public ModelAndView SaveRolesEntityData(HttpServletRequest request, HttpServletResponse response) { try { StringBuilder scopeName = new StringBuilder(); ObjectMapper mapper = new ObjectMapper(); mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); String userId = UserUtils.getUserSession(request).getOrgUserId(); JsonNode root = mapper.readTree(request.getReader()); ReadScopes adapter = mapper.readValue(root.get("editRoleData").toString(), ReadScopes.class); for (int i = 0; i < adapter.getScope().size(); i++) { if (i == 0) { scopeName.append(adapter.getScope().get(0)); } else { scopeName.append("," + adapter.getScope().get(i)); } } LOGGER.info( "*************************Logging UserID for Roles Function***********************************"); LOGGER.info("UserId: " + userId + "Updating the Scope for following user" + adapter.getLoginId() + "ScopeNames" + adapter.getScope()); LOGGER.info( "*********************************************************************************************"); UserInfo userInfo = new UserInfo(); userInfo.setUserLoginId(adapter.getLoginId().getUserName()); userInfo.setUserName(adapter.getLoginId().getUserName()); boolean checkNew = false; if (adapter.getId() == 0 && "mechid".equals(adapter.getRole())) { LOGGER.info( "*********************Logging UserID for New Mechid Function********************************"); LOGGER.info("UserId:" + userId + "Adding new mechid-scopes for following user" + adapter.getLoginId() + "ScopeNames " + adapter.getScope()); LOGGER.info( "*******************************************************************************************"); commonClassDao.save(userInfo); checkNew = true; } PolicyRoles roles = new PolicyRoles(); roles.setId(adapter.getId()); roles.setLoginId(adapter.getLoginId()); roles.setRole(adapter.getRole()); roles.setScope(scopeName.toString()); if (checkNew) { roles.setLoginId(userInfo); commonClassDao.save(roles); } else { commonClassDao.update(roles); } response.setCharacterEncoding(PolicyUtils.CHARACTER_ENCODING); response.setContentType(PolicyUtils.APPLICATION_JSON); request.setCharacterEncoding(PolicyUtils.CHARACTER_ENCODING); response.getWriter().write(new JSONObject("{rolesDatas: " + mapper.writeValueAsString(commonClassDao.getUserRoles()) + "}").toString()); } catch (Exception e) { LOGGER.error("Exception Occured" + e); } return null; }  void setCommonClassDao(CommonClassDao commonClassDao); @RequestMapping( value = {"/get_RolesData"}, method = {org.springframework.web.bind.annotation.RequestMethod.GET}, produces = MediaType.APPLICATION_JSON_VALUE) void getPolicyRolesEntityData(HttpServletRequest request, HttpServletResponse response); @RequestMapping( value = {"/save_NonSuperRolesData"}, method = {org.springframework.web.bind.annotation.RequestMethod.POST}) ModelAndView SaveRolesEntityData(HttpServletRequest request, HttpServletResponse response); @RequestMapping( value = {"/get_PolicyRolesScopeData"}, method = {org.springframework.web.bind.annotation.RequestMethod.GET}, produces = MediaType.APPLICATION_JSON_VALUE) void getPolicyScopesEntityData(HttpServletRequest request, HttpServletResponse response);  }
@Test public void testSaveRolesEntityData() { logger.info("PolicyRolesControllerTest: Entering"); String jsonString = "{\"editRoleData\": {\"id\": 1,\"loginId\": {\"userLoginId\" : \"test\", \"userName\" : \"test\"}," + "\"role\":\"test\",\"scope\":[\"scope\"]}}"; try (BufferedReader br = new BufferedReader(new StringReader(jsonString))) { when(request.getReader()).thenReturn(br); controller.SaveRolesEntityData(request, response); logger.info("response.getContentAsString(): " + response.getContentAsString()); assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("rolesDatas")); } catch (Exception e) { fail("Exception: " + e); } logger.info("PolicyRolesControllerTest: exit"); }