@Override @Transactional(propagation = Propagation.REQUIRED, readOnly = true) public List<Map<String, Object>> getLoginReports() { LOG.debug("inside getLoginReports"); User loggedInUser = getLogin(); List<Map<String, Object>> reportList = new ArrayList<Map<String, Object>>(); for (Map<String, Object> report : reportConfig.getReports()) { if (authorizer.isAuthorized( loggedInUser, Constants.VIEW_REPORT_PREFIX + (String) report.get(Constants.NAME))) { reportList.add(report); } } return reportList; }
/* (non-Javadoc) * @see net.webpasswordsafe.client.remote.LoginService#getLoginAuthorizations(java.util.Set) */ @Override @Transactional(propagation = Propagation.REQUIRED, readOnly = true) public Map<Function, Boolean> getLoginAuthorizations(Set<Function> functions) { LOG.debug("inside getLoginAuthorizations"); User loggedInUser = getLogin(); // if passed null, load everything if (null == functions) { LOG.debug("functions was passed null"); functions = new HashSet<Function>(Arrays.asList(Function.values())); } LOG.debug("functions=" + functions.toString()); Map<Function, Boolean> authzMap = new HashMap<Function, Boolean>(functions.size()); for (Function function : functions) { authzMap.put(function, authorizer.isAuthorized(loggedInUser, function.name())); } LOG.debug("authzMap=" + authzMap.toString()); return authzMap; }