public AgentConfigurationsTable readAgentConfigurationsTable() {
        AgentConfigurationsTable agentConfigurationsTable = new AgentConfigurationsTable();
        try {
            if (Objects.nonNull(yamlData)) {
                Map configurationsData = (Map) yamlData.get("configurations");
                if (configurationsData != null) {
                    configurationsData.forEach((k, v) -> {
                        Map map = (Map) v;
                        StringBuilder serviceConfigStr = new StringBuilder();
                        Map<String, String> config = new HashMap<>(map.size());
                        map.forEach((key, value) -> {
                            config.put(key.toString(), value.toString());

                            serviceConfigStr.append(key).append(":").append(value);
                        });

                        // noinspection UnstableApiUsage
                        AgentConfigurations agentConfigurations = new AgentConfigurations(
                            k.toString(), config,
                            Hashing.sha512().hashString(
                                serviceConfigStr.toString(), StandardCharsets.UTF_8).toString()
                        );
                        agentConfigurationsTable.getAgentConfigurationsCache()
                                                .put(agentConfigurations.getService(), agentConfigurations);
                    });
                }
            }
        } catch (Exception e) {
            log.error("Read ConfigurationDiscovery configurations error.", e);
        }
        return agentConfigurationsTable;
    }
Used to parse the String configuration to AgentConfigurations.
oap-server/server-receiver-plugin/configuration-discovery-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/configuration/discovery/AgentConfigurationsReader.java