public DataCollector fetchMapDataCollector()

in java/e2e-v4/src/main/java/org/apache/rocketmq/utils/data/collect/DataCollectorManager.java [52:72]


    public DataCollector fetchMapDataCollector(String key) {
        String realKey = key;
        if (!collectMap.containsKey(realKey)
                || collectMap.get(realKey) instanceof ListDataCollectorImpl) {
            synchronized (lock) {
                if (!collectMap.containsKey(realKey)
                        || collectMap.get(realKey) instanceof ListDataCollectorImpl) {
                    DataCollector collect = null;
                    if (collectMap.containsKey(realKey)) {
                        DataCollector src = collectMap.get(realKey);
                        collect = new MapDataCollectorImpl(src.getAllData());
                    } else {
                        collect = new MapDataCollectorImpl();
                    }
                    collectMap.put(realKey, collect);

                }
            }
        }
        return collectMap.get(realKey);
    }