Get string value by path.
@param map subject
@param pathString nodes to walk in map
@return value
487387
public static Optional<String> dotGetString(final Map map, final String pathString) {
        return dotGet(map, String.class, pathString);
    }
871192
public static String asString(Map<?, ?> map) {
        if (map == null) {
            return NULL;
        }
        StringBuilder builder = new StringBuilder();
        builder.append('{');
        boolean first = true;
        for (Map.Entry<?, ?> entry : map.entrySet()) {
            if (first) {
                first = false;
            } else {
                builder.append(',');
            }
            builder.append(asString(entry.getKey()))
                   .append(':')
                   .append(asString(entry.getValue()));
        }
        builder.append('}');
        return builder.toString();
    }
862554
private static String getOrderedMapString(Map<Object, Object> map) {
		ArrayList<String> list = new ArrayList<String>();
		for (Map.Entry<Object, Object> entry : map.entrySet()) {
			if (entry.getValue() != null) {
				Object key = entry.getKey();
				Object value = entry.getValue();
				String objectString = getObjectString(value);
				if (!StringUtils.isEmpty(objectString)) {
					list.add(getObjectString(key) + "=" + objectString + "&");
				}

			}
		}
		int size = list.size();
		String[] arrayToSort = list.toArray(new String[size]);
		Arrays.sort(arrayToSort, String.CASE_INSENSITIVE_ORDER);
		StringBuilder sb = new StringBuilder();
		for (int i = 0; i < size; i++) {
			sb.append(arrayToSort[i]);
		}
		return "{" + sb.toString() + "}";
	}
1369705
public Map<String, String> getGroupNameValueMap(String targetString) {
        return getMatcherAsOpt(targetString)
                .map(matcher -> groupNameList.stream()
                        .collect(Collectors
                                .toMap(Function.identity(), matcher::group)))
                .orElseGet(Collections::emptyMap);
    }
612279
public static String getStringUnsafe(final Map map, final Object... path) {
        return getUnsafe(map, String.class, path);
    }
885845
@SuppressWarnings("unchecked")
  public String path(T target, Object... params) {
    if (params.length == 0) return path(target, Collections.emptyMap());

    if (params.length == 1 && params[0] instanceof Map<?, ?>) return pathMap(target, (Map<Object, Object>) params[0]);

    if (params.length % 2 == 1) throw new RuntimeException("Missing value for param: " + params[params.length - 1]);

    final Map<Object, Object> map = new HashMap<Object, Object>();
    for (int i = 0; i < params.length; i += 2) {
      final String key   = params[i].toString();
      final String value = params[i + 1].toString();
      map.put(key, value);
    }
    return pathMap(target, map);
  }
857700
public static String mapToString(Map map)
    {
        Set entries = map.entrySet();
        Iterator iter = entries.iterator();
        StringBuffer buff = new StringBuffer();
        while (iter.hasNext())
        {
            Map.Entry entry = (Map.Entry) iter.next();
            buff.append("[" + entry.getKey() + "," + entry.getValue() + "]\n");
        }
        return buff.toString();
    }
981163
public static <A, B> Optional<Map<A, B>> dotGetMap(final Map map, final String pathString) {
        return dotGet(map, Map.class, pathString).map(m -> (Map<A, B>) m);
    }
1236685
public Map<String, String> getStringMap(final Map<String, String> map) {
		final int len = getVInt();
		for (int i = 0; i < len; i++) {
			map.put(getString(), getString());
		}
		return map;
	}
211048
public static Map dotAssoc(final Map map, final String pathString, final Object value) {
        return dotAssoc(map, map.getClass(), pathString, value);
    }
1312575
public static <T> Optional<Optional<T>> dotGetOptional(
            final Map map, final String pathString, final Class<T> clazz
    ) {
        return dotGet(map, Optional.class, pathString).map(opt -> (Optional<T>) opt);
    }
438118
protected String getAndRemoveValue(Map<String, String> map, String key) {

        String value = map.get(key);
        if (value != null) {
            map.remove(key);
        }
        return value;
    }
744270
static String valueAsString(Map<String, Object> map, Key key, String defaultValue) {
        Validate.notNullOrEmpty(key.key, "Key for plugin configuration must be set");
        if (map.containsKey(key.key)) {
            return map.get(key.key).toString().length() == 0 ? defaultValue : map.get(key.key).toString();
        }
        return defaultValue;
    }
400739
public final String getPath(final String key) {
        StringBuilder result = new StringBuilder();
        addPathTo(result);
        result.append(".");
        result.append(getPathElement(key));
        return result.toString();
    }
1077074
private String getString(I_CmsXmlContentLocation val, String path, String defaultValue) {

        if ((val != null)) {
            I_CmsXmlContentValueLocation subVal = val.getSubValue(path);
            if ((subVal != null) && (subVal.getValue() != null)) {
                return subVal.getValue().getStringValue(m_cms);
            }
        }
        return defaultValue;
    }
226975
public synchronized String getValue(String name) {
        if (map == null) {
            return null;
        }
        return map.get(name);
    }
1243521
public static <T> T dotGetUnsafe(final Map map, final Class<T> clazz, final String pathString) {
        return dotGet(map, clazz, pathString).orElseThrow(() -> new IllegalAccessError(
                "Map "
                        + map
                        + " does not have value of type "
                        + clazz.getName()
                        + " by "
                        + pathString)
        );
    }