docs: protected String getDelegatedClientId(final WebContext webContext, final BaseClient client) {
          var clientId = webContext.getRequestParameter(PARAMETER_CLIENT_ID);
          if (StringUtils.isBlank(clientId)) {
              if (client instanceof SAML2Client) {
                  LOGGER.debug("Client identifier could not found as part of the request parameters. Looking at relay-state for the SAML2 client");
                  clientId = webContext.getRequestParameter("RelayState");
              }
              if (client instanceof OAuth20Client || client instanceof OidcClient) {
                  LOGGER.debug("Client identifier could not found as part of the request parameters. Looking at state for the OAuth2/Oidc client");
                  clientId = webContext.getRequestParameter(OAuth20Configuration.STATE_REQUEST_PARAMETER);
              }
              if (client instanceof OAuth10Client) {
                  LOGGER.debug("Client identifier could not be found as part of request parameters.  Looking at state for the OAuth1 client");
                  val sessionStore = webContext.getSessionStore();
                  clientId = (String) sessionStore.get(webContext, OAUTH10_CLIENT_ID_SESSION_KEY);
                  sessionStore.set(webContext, OAUTH10_CLIENT_ID_SESSION_KEY, null);
              }
          }
          LOGGER.debug("Located delegated client identifier for this request as [{}]", clientId);
          return clientId;
      }