/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE file at the root of the source * tree and available online at * * https://github.com/keeps/roda */ package org.roda.wui.client.common; import java.util.ArrayList; import java.util.List; import org.roda.core.data.v2.index.IsIndexed; import org.roda.core.data.v2.index.select.SelectedItems; import org.roda.wui.client.common.lists.pagination.ListSelectionState; public class LastSelectedItemsSingleton { private static LastSelectedItemsSingleton singleton = null; private SelectedItems<? extends IsIndexed> selected = null; private String detailsMessage = ""; private List<String> lastHistory = new ArrayList<>(); private IsIndexed lastObject = null; private ListSelectionState<? extends IsIndexed> lastListSelectionState = null; private boolean selectedJustActive = true; private LastSelectedItemsSingleton() { // do nothing } public static LastSelectedItemsSingleton getInstance() { if (singleton == null) { singleton = new LastSelectedItemsSingleton(); } return singleton; } public SelectedItems<? extends IsIndexed> getSelectedItems() { return selected; } public void setSelectedItems(SelectedItems<? extends IsIndexed> selected) { this.selected = selected; } public String getDetailsMessage() { return detailsMessage; } public void setDetailsMessage(String detailsMessage) { this.detailsMessage = detailsMessage; } public List<String> getLastHistory() { return lastHistory; } public void setLastHistory(List<String> lastHistory) { this.lastHistory = lastHistory; } public void clearLastHistory() { this.lastHistory = new ArrayList<>(); } public <T extends IsIndexed> T getLastObject() { return (T) this.lastObject; } public <T extends IsIndexed> void setLastObject(T lastObject) { this.lastObject = lastObject; } public <T extends IsIndexed> void setLastListSelectionState(ListSelectionState<T> lastListSelectionState) { this.lastListSelectionState = lastListSelectionState; } public ListSelectionState<? extends IsIndexed> getLastListSelectionState() { return lastListSelectionState; } public boolean isSelectedJustActive() { return selectedJustActive; } public void setSelectedJustActive(boolean selectedJustActive) { this.selectedJustActive = selectedJustActive; } }