ConcurrentHashMap<String, Values> tempMap = new ConcurrentHashMap<String, Values>();
for (SnapshotValuesOutputCallBack callBack : snapshotValueCallBack) {
ConcurrentHashMap<String, Values> values = callBack.getValues();
Map<String, Values> copiedMap = new HashMap<String, Values>(values);
for (Entry<String, Values> entry : copiedMap.entrySet()) {
Values value = tempMap.get(entry.getKey());
if (null == value) {
Values newValues = new Values();
value = tempMap.putIfAbsent(entry.getKey(), newValues);
if (value == null) {
value = newValues;
}
}