code: private static String resolveCompositeKey(String key, Properties props) {
          String value = null;
  
          // Look for the comma
          int comma = key.indexOf(',');
          if (comma > -1) {
              // If we have a first part, try resolve it
              if (comma > 0) {
                  // Check the first part
                  String key1 = key.substring(0, comma);
                  value = getReplacementString(key1, props);
              }
              // Check the second part, if there is one and first lookup failed
              if (value == null && comma < key.length() - 1) {
                  String key2 = key.substring(comma + 1);
                  value = getReplacementString(key2, props);
              }
          }
          // Return whatever we've found or null
          return value;
      }
docs: Try to resolve a "key" from the provided properties by
  checking if it is actually a "key1,key2", in which case
  try first "key1", then "key2". If all fails, return null.
  
  It also accepts "key1," and ",key2".
  
  @param key the key to resolve
  @param props the properties to use
  @return the resolved key or null