private URI findPossibleWarLocationFromExtraLocations(String versionedWarFileName,
      String unversionedWarFileName) {
    final URL url = Arrays.stream(new String[] {versionedWarFileName,
        "tools/Pulse/" + versionedWarFileName,
        "tools/Extensions/" + versionedWarFileName,
        "lib/" + versionedWarFileName,
        unversionedWarFileName})
        .map(possibleFile -> getClass().getClassLoader().getResource(possibleFile))
        .filter(Objects::nonNull).findFirst().orElse(null);

    URI uri = null;
    if (url != null) {
      try {
        uri = url.toURI();
        logger.info("War file found: {}", uri.toString());
      } catch (URISyntaxException ex) {
        logger.warn("War file URL could not be converted to URI: {}", url.toString());
      }
    }
    return uri;
  }
this method will try to find the named war files in the following order: 1. if GEODE_HOME is
defined, it will look under tools/Extensions, tools/Pulse and lib folder (in this order) to
find either the name-version.war or the name.war file 2. If GEODE_HOME is not defined, it will
try to find either the name-version.war/name.war (in that order) on the classpath

@param warFilePrefix : the prefix of the war file, e.g. geode-web, geode-pulse, or
       geode-web-api
geode-core/src/main/java/org/apache/geode/management/internal/AgentUtil.java