package edu.isi.karma.controller.command.selection; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.concurrent.ConcurrentHashMap; public class SelectionManager { private Map<String, List<Selection> > selectionMapping = new ConcurrentHashMap<>(); public static String defaultCode = "return False"; public void removeSelection(Selection sel) { List<Selection> selections = selectionMapping.get(sel.hTableId); if (sel != null && selections != null) selections.remove(sel); } public List<Selection> getAllDefinedSelection() { List<Selection> selections = new ArrayList<>(); for (Entry<String, List<Selection> > entry : selectionMapping.entrySet()) { List<Selection> sels = entry.getValue(); if (sels != null) selections.addAll(sels); } return selections; } public void addSelection(Selection sel) { String hTableId = sel.getHTableId(); List<Selection> selections = selectionMapping.get(hTableId); if (selections == null) selections = new ArrayList<>(); selections.add(sel); selectionMapping.put(hTableId, selections); } }