package com.a.eye.skywalking.collector.worker.storage; import java.util.Map; /** * @author pengys5 */ public class SegmentPersistenceData extends Window implements PersistenceData { private WindowData lockedWindowData; public SegmentData getOrCreate(String id) { if (!lockedWindowData.containsKey(id)) { lockedWindowData.put(id, new SegmentData(id)); } return lockedWindowData.get(id); } public void hold() { lockedWindowData = getCurrentAndHold(); } public void release() { lockedWindowData.release(); lockedWindowData = null; } public int size() { return lockedWindowData.size(); } public Map asMap() { return lockedWindowData.asMap(); } }