code: private boolean checkMatches(boolean inbound, String address, Object body) {
  
      List<PermittedOptions> matches = inbound ? inboundPermitted : outboundPermitted;
  
      for (PermittedOptions matchHolder : matches) {
        String matchAddress = matchHolder.getAddress();
        String matchRegex;
        if (matchAddress == null) {
          matchRegex = matchHolder.getAddressRegex();
        } else {
          matchRegex = null;
        }
  
        boolean addressOK;
        if (matchAddress == null) {
          addressOK = matchRegex == null || regexMatches(matchRegex, address);
        } else {
          addressOK = matchAddress.equals(address);
        }
  
        if (addressOK) {
          return structureMatches(matchHolder.getMatch(), body);
        }
      }
      return false;
    }
docs: /*
  Empty inboundPermitted means reject everything - this is the default.
  If at least one match is supplied and all the fields of any match match then the message inboundPermitted,
  this means that specifying one match with a JSON empty object means everything is accepted