@PreAuthorize("hasRole('" + StandardEntitlement.APPLICATION_CREATE + "')") public ApplicationTO create(final ApplicationTO applicationTO) { return binder.getApplicationTO(applicationDAO.save(binder.create(applicationTO))); }
@PreAuthorize("hasRole('" + StandardEntitlement.APPLICATION_READ + "')") @Transactional(readOnly = true) public PrivilegeTO readPrivilege(final String key) { Privilege privilege = applicationDAO.findPrivilege(key); if (privilege == null) { LOG.error("Could not find privilege '" + key + "'"); throw new NotFoundException(key); } return binder.getPrivilegeTO(privilege); }
@PreAuthorize("hasRole('" + StandardEntitlement.APPLICATION_UPDATE + "')") public ApplicationTO update(final ApplicationTO applicationTO) { Application application = applicationDAO.find(applicationTO.getKey()); if (application == null) { LOG.error("Could not find application '" + applicationTO.getKey() + "'"); throw new NotFoundException(applicationTO.getKey()); } return binder.getApplicationTO(applicationDAO.save(binder.update(application, applicationTO))); }
@PreAuthorize("hasRole('" + StandardEntitlement.APPLICATION_READ + "')") @Transactional(readOnly = true) public ApplicationTO read(final String key) { Application application = applicationDAO.find(key); if (application == null) { LOG.error("Could not find application '" + key + "'"); throw new NotFoundException(key); } return binder.getApplicationTO(application); }
@PreAuthorize("hasRole('" + StandardEntitlement.APPLICATION_DELETE + "')") public ApplicationTO delete(final String key) { Application application = applicationDAO.find(key); if (application == null) { LOG.error("Could not find application '" + key + "'"); throw new NotFoundException(key); } ApplicationTO deleted = binder.getApplicationTO(application); applicationDAO.delete(key); return deleted; }
@Override protected ApplicationTO resolveReference(final Method method, final Object... args) throws UnresolvedReferenceException { String key = null; if (ArrayUtils.isNotEmpty(args)) { for (int i = 0; key == null && i < args.length; i++) { if (args[i] instanceof String) { key = (String) args[i]; } else if (args[i] instanceof ApplicationTO) { key = ((ApplicationTO) args[i]).getKey(); } } } if (key != null) { try { return binder.getApplicationTO(applicationDAO.find(key)); } catch (Throwable ignore) { LOG.debug("Unresolved reference", ignore); throw new UnresolvedReferenceException(ignore); } } throw new UnresolvedReferenceException(); }