package net.mostlyoriginal.game.system.ui;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/** Repository for all dilemma. */
public class DilemmaLibrary {
public Dilemma[] dilemmas;
public DilemmaLibrary() {
}
Map<String, List<Dilemma>> grouped = new HashMap<>();
/** Return dilemma, or <code>null</code> if empty. */
public Dilemma getById( String id )
{
for (Dilemma dilemma : dilemmas) {
if ( dilemma.id != null && dilemma.id.equals(id)) return dilemma;
}
return null;
}
/** Map dilemma to groups */
public void assignToGroups() {
for (Dilemma dilemma : dilemmas) {
if (dilemma.groups != null) {
for (String group : dilemma.groups) {
addToGroup(dilemma, group);
}
}
}
}
private void addToGroup(Dilemma dilemma, String group) {
getGroup(group).add(dilemma);
}
public List<Dilemma> getGroup(String group) {
List<Dilemma> list = grouped.get(group);
if ( list == null )
{
list = new ArrayList<>();
grouped.put(group, list);
}
return list;
}
}