@Override
  public String processUnresolvableString(String stringWithPrefixAndSuffix, String prefix,
      String suffix) {
    String resolvedString = null;
    try {
      if (helper == null) {
        helper = new CacheXmlPropertyResolverHelper(prefix, suffix);
      }
      /*
       * A <code>resolvedString</code> can be same as <code>stringWithPrefixAndSuffix</code> if
       * <code>ignoreUnresolvedProperties</code> is set true and we just return it as is.
       */
      resolvedString =
          helper.parseResolvablePropString(stringWithPrefixAndSuffix, this, new HashSet<>());
    } catch (IllegalArgumentException e) {
      if (ignoreUnresolvedProperties) {
        // Do Nothing
      } else {
        logger.error("Format of the string {} used for parameterization is unresolvable",
            stringWithPrefixAndSuffix);
      }
    }
    return resolvedString;
  }
Resolves the given property string either from system properties or given properties. and
returns the replacement of the property found in available properties. If no string replacement
is found then {@link IllegalArgumentException} would be thrown based on
<code>ignoreUnresolvedProperties</code> flag being set by {@link CacheXmlParser}.
geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlPropertyResolver.java