package foundation.action; import java.util.HashMap; import java.util.Map; public class StateContext { private Map items; public StateContext() { items = new HashMap(); } public void setState(String dataName, String stateCode) { if (dataName == null) { return; } String lower = dataName.toLowerCase(); StateContextItem item = items.get(lower); if (item == null) { item = new StateContextItem(dataName); items.put(lower, item); } item.addOne(stateCode); } public StateContextItem getState(String dataName) { if (dataName == null) { return null; } dataName = dataName.toLowerCase(); return items.get(dataName); } public boolean isState(String dataName, String stateCode) { if (dataName == null || stateCode == null) { return false; } dataName = dataName.toLowerCase(); StateContextItem item = items.get(dataName); if (item == null) { return false; } return item.contains(stateCode); } public Map getItems() { return items; } public static boolean isEmpty(StateContext stateContext) { if (stateContext == null) { return true; } Map items = stateContext.getItems(); return items == null || items.isEmpty() || items.size() == 0; } }