public Map fillSecrets()

in src/main/java/com/aws/logaggregator/security/AWSSecretManagerParam.java [112:132]


    public Map<String, Object> fillSecrets(Map<String, Object> map) {
        for (Map.Entry<String, Object> entry : map.entrySet()) {
            if (entry.getValue() instanceof Map) {
                fillSecrets((Map<String, Object>) entry.getValue());
            } else if (entry.getValue() instanceof List) {
                List<Object> list = (List<Object>) entry.getValue();
                list.forEach((temp) -> {
                    fillSecrets((Map<String, Object>) temp);
                });
            } else {
                Matcher matcher = pattern.matcher("" + entry.getValue());
                if (matcher.matches()) {
                    System.out.println(matcher.group(1));
                    String secretPath = matcher.group(1);
                    String[] pathTokens = secretPath.split("\\|");
                    entry.setValue(getSecrets(pathTokens[0], pathTokens[1], pathTokens.length > 2 ? pathTokens[2] : null));
                }
            }
        }
        return map;
    }