docs: @FFDCIgnore({ KeyStoreException.class })
      public PublicKey getPublicKeyFromJwk(String kid, String x5t, String use, boolean useSystemPropertiesForHttpClientConnections)
              throws PrivilegedActionException, IOException, KeyStoreException, InterruptedException {
          PublicKey key = null;
          KeyStoreException errKeyStoreException = null;
          InterruptedException errInterruptedException = null;
  
          boolean isHttp = remoteHttpCall(this.jwkEndpointUrl, this.publicKeyText, this.keyLocation);
          try {
              if (isHttp) {
                  key = this.getJwkRemote(kid, x5t, use , useSystemPropertiesForHttpClientConnections);
              } else {
                  key = this.getJwkLocal(kid, x5t, publicKeyText, keyLocation, use);
              }
          } catch (KeyStoreException e) {
              errKeyStoreException = e;
          } catch (InterruptedException e) {
              errInterruptedException = e;
          }
  
          if (key == null) {
              if (errKeyStoreException != null) {
                  throw errKeyStoreException;
              }
              if (errInterruptedException != null) {
                  throw errInterruptedException;
              }
          }
          return key;
      }