/** {@inheritDoc} */
  @Override
  protected R createKeytoolRequest() {
    R request = super.createKeytoolRequest();

    if (StringUtils.isNotEmpty(keystore)) {

      File file = getFile(keystore);

      // make sure the parent directory of the keystore exists

      boolean mkdirs = file.getParentFile().mkdirs();
      getLog().debug("mdkirs: " + mkdirs + " " + file.getParentFile());

      // force to not use this parameter
      request.setKeystore(file.getAbsolutePath());
    }

    request.setProviderarg(providerarg);
    request.setProviderclass(providerclass);
    request.setProvidername(providername);
    request.setProviderpath(providerpath);
    request.setStorepass(storepass);
    request.setStoretype(storetype);
    return request;
  }