docs: public URL getRevocationURL() throws MalformedURLException {
          final var revocationURLTemplate = license.get(REVOCATION_URL) == null ? null : license.get(REVOCATION_URL).getString();
          final String revocationURL;
          if (revocationURLTemplate != null) {
              final var id = Optional.ofNullable(license.getLicenseId()).orElse(license.fingerprint());
              if (id != null) {
                  return new URL(revocationURLTemplate.replaceAll("\\$\\{licenseId}", id.toString()));
              } else {
                  return new URL(revocationURLTemplate);
              }
          } else {
              return null;
          }
      }