protected int addReceiptSPAssociation(String receiptId, ReceiptServiceInput receiptServiceInput) throws ConsentManagementServerException { int receiptToSPAssocId; JdbcTemplate jdbcTemplate = JdbcUtils.getNewTemplate(); try { receiptToSPAssocId = jdbcTemplate.withTransaction(template -> template.executeInsert(INSERT_RECEIPT_SP_ASSOC_SQL, (preparedStatement -> { preparedStatement.setString(1, receiptId); preparedStatement.setString(2, receiptServiceInput.getService()); preparedStatement.setInt(3, receiptServiceInput.getTenantId()); preparedStatement.setString(4, receiptServiceInput.getSpDisplayName()); preparedStatement.setString(5, receiptServiceInput.getSpDescription()); }), receiptServiceInput, true)); } catch (TransactionException e) { throw ConsentUtils.handleServerException(ErrorMessages.ERROR_CODE_ADD_RECEIPT_SP_ASSOC, receiptServiceInput.getService(), e); } return receiptToSPAssocId; }
private void revokeActiveReceipts(ReceiptInput receiptInput) throws ConsentManagementServerException { JdbcTemplate jdbcTemplate = JdbcUtils.getNewTemplate(); try { jdbcTemplate.withTransaction(template -> { receiptInput.getServices().forEach(rethrowConsumer(receiptServiceInput -> { List<String> ids = template.executeQuery(GET_ACTIVE_RECEIPTS_SQL, (resultSet, rowNumber) -> resultSet .getString(1), preparedStatement -> { preparedStatement.setString(1, receiptInput.getPiiPrincipalId()); preparedStatement.setString(2, receiptServiceInput.getService()); preparedStatement.setInt(3, receiptInput.getTenantId()); preparedStatement.setInt(4, receiptServiceInput.getTenantId()); }); if (isNotEmpty(ids)) { ids.forEach(rethrowConsumer(id -> { revokeReceipt(id); if (log.isDebugEnabled()) { log.debug("Revoked active receipt: " + id + " of the user: " + receiptInput .getPiiPrincipalId()); } })); } })); return null; }); } catch (TransactionException e) { throw ConsentUtils.handleServerException(ErrorMessages.ERROR_CODE_REVOKE_ACTIVE_RECEIPT, receiptInput.getPiiPrincipalId(), e); } }