docs: public AuthorizationRequest updateAfterApproval(AuthorizationRequest authorizationRequest,
  			Authentication userAuthentication) {
  		// Get the approved scopes
  		Set<String> requestedScopes = authorizationRequest.getScope();
  		Set<String> approvedScopes = new HashSet<String>();
  		Set<Approval> approvals = new HashSet<Approval>();
  
  		Date expiry = computeExpiry();
  
  		// Store the scopes that have been approved / denied
  		Map<String, String> approvalParameters = authorizationRequest.getApprovalParameters();
  		for (String requestedScope : requestedScopes) {
  			String approvalParameter = scopePrefix + requestedScope;
  			String value = approvalParameters.get(approvalParameter);
  			value = value == null ? "" : value.toLowerCase();
  			if ("true".equals(value) || value.startsWith("approve")) {
  				approvedScopes.add(requestedScope);
  				approvals.add(new Approval(userAuthentication.getName(), authorizationRequest.getClientId(),
  						requestedScope, expiry, ApprovalStatus.APPROVED));
  			}
  			else {
  				approvals.add(new Approval(userAuthentication.getName(), authorizationRequest.getClientId(),
  						requestedScope, expiry, ApprovalStatus.DENIED));
  			}
  		}
  		approvalStore.addApprovals(approvals);
  
  		boolean approved;
  		authorizationRequest.setScope(approvedScopes);
  		if (approvedScopes.isEmpty() && !requestedScopes.isEmpty()) {
  			approved = false;
  		}
  		else {
  			approved = true;
  		}
  		authorizationRequest.setApproved(approved);
  		return authorizationRequest;
  	}