public void cleanup() { for (Entry<SModelReference, ConcurrentMap<SReferenceBase, Object>> entry : myReferences.entrySet()) { for (SReferenceBase r : entry.getValue().keySet()) { r.mature(true); } } myReferences.clear(); }
void remove(SReferenceBase ref) { if (myDisabled) return; SModelReference modelRef = ref.getSourceNode().getModel().getSModelReference(); ConcurrentMap<SReferenceBase, Object> refSet = myReferences.get(modelRef); if (refSet != null) { refSet.remove(ref); } }
void add(SReferenceBase ref) { if (myDisabled) return; SModelReference modelRef = ref.getSourceNode().getModel().getSModelReference(); ConcurrentMap<SReferenceBase, Object> refSet = getOrCreateRefSet(modelRef); refSet.put(ref, PRESENT); }