code: private static boolean matches(String value, String component, Map<String, String> variableMap) {
          if (Utils.isEmpty(component)) {
              return Utils.isEmpty(value);
          }
          if (component.charAt(0) == '{') {
              // The component is a variable, so it always matches.
              if (!Utils.isEmpty(value)) {
                  String varName = getVariableName(component);
                  variableMap.put(varName, value);
              }
              return true;
          }
          return component.equals(value);
      }
docs: variable value is extracted and added to the given map.