code: public MatchResponse performMatch(SecurityConstraintCollection securityConstraintCollection, String resourceName, String method) {
          MatchResponse currentResponse = null;
          ResponseAggregate responseAggregate = createResponseAggregate();
  
          for (SecurityConstraint securityConstraint : securityConstraintCollection.getSecurityConstraints()) {
              currentResponse = getMatchResponse(securityConstraint, resourceName, method);
  
              optionallySetAggregateResponseDefault(currentResponse, responseAggregate);
              if (isMatch(currentResponse)) {
                  responseAggregate = currentResponse.aggregateResponse(responseAggregate);
              }
          }
  
          return responseAggregate.selectMatchResponse();
      }
docs: Common iteration to get the best constraint match response from the security constraints.
  <pre>
  To get the aggregated match response,
  
  1. For each security constraint,
  1a. Ask security constraint for its match response for the resource access.
  1b. Optionally set the default match response of the aggregate after receiving a response for a security constraint.
  1c. Aggregate the responses. See {@link com.ibm.ws.webcontainer.security.metadata.MatchResponse#aggregateResponse(ResponseAggregate)}.
  2. Finally, select from the aggregate the response.
  </pre>
  
  @param securityConstraintCollection the security constraints to iterate through.
  @param resourceName the resource name.
  @param method the HTTP method.
  @return the match response.