| verifyRedirectUri(KeycloakSession, String, String, Set, boolean) |  | 0% |  | 0% | 21 | 21 | 42 | 42 | 1 | 1 |
| matchesRedirects(Set, String, boolean) |  | 0% |  | 0% | 11 | 11 | 13 | 13 | 1 | 1 |
| decodeRedirectUri(String) |  | 0% |  | 0% | 4 | 4 | 23 | 23 | 1 | 1 |
| resolveValidRedirects(KeycloakSession, String, Set) |  | 0% |  | 0% | 3 | 3 | 9 | 9 | 1 | 1 |
| relativeToAbsoluteURI(KeycloakSession, String, String) |  | 0% |  | 0% | 4 | 4 | 8 | 8 | 1 | 1 |
| lambda$getValidateRedirectUris$1(Map.Entry) |  | 0% |  | 0% | 6 | 6 | 1 | 1 | 1 | 1 |
| lowerCaseHostname(String) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getValidateRedirectUris(KeycloakSession) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
| toUri(String) |  | 0% |  | 0% | 2 | 2 | 9 | 9 | 1 | 1 |
| validateRedirectUriWildcard(String) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| lambda$resolveValidRedirects$0(String, String) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| getSingleValidRedirectUri(Collection) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getFirstValidRedirectUri(Collection) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| verifyRedirectUri(KeycloakSession, String, ClientModel, boolean) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getNormalizedRedirectUri(URI) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| verifyRealmRedirectUri(KeycloakSession, String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$getValidateRedirectUris$2(KeycloakSession, Map.Entry) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| verifyRedirectUri(KeycloakSession, String, ClientModel) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getFirstValidRedirectUri(KeycloakSession, String, Set) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| static {...} |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| RedirectUtils() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |