code: public MatchResponse merge(MatchResponse matchResponse) {
          if (matchResponse == null || matchResponse == this) {
              return this;
          } else {
              boolean mergedSSLRequired = mergeSSLRequired(matchResponse.isSSLRequired());
              boolean mergedAccessPrecluded = mergeAccessPrecluded(matchResponse.isAccessPrecluded());
              List<String> mergedRoles = mergeRoles(matchResponse.getRoles(), mergedAccessPrecluded);
              return new MatchResponse(mergedRoles, mergedSSLRequired, mergedAccessPrecluded);
          }
      }
docs: Merges the roles, sslRequired, and accessPrecluded fields according to the
  Servlet 2.3 and 3.0 specifications.
  
  @param matchResponse
  @return