package xyz.veronie.bgg.result; import java.util.HashMap; import xyz.veronie.bgg.types.FilterFlagState; import xyz.veronie.bgg.types.ResultAction; import xyz.veronie.bgg.types.SourceFilter; import xyz.veronie.bgg.types.Subtype; import xyz.veronie.bgg.types.UserFlag; /// DTO / container for configuration of result download. Also defines startup settings for controls. /// This container is handled by the ResultConfigManager. public class ResultConfig { // TODO: integrate different filters (or extend?) public SourceFilter source = SourceFilter.BGG_USER; public ResultAction action = ResultAction.ADD; public HashMap subTypes = new HashMap() { private static final long serialVersionUID = -8718858283141976457L; { for (Subtype st : Subtype.values()) { put(st, false); } put(Subtype.BOARDGAME, true); }}; // bgg user filter settings public String user = ""; public HashMap userFlags = new HashMap() { private static final long serialVersionUID = 3086538711393696853L; { for (UserFlag uf : UserFlag.values()) { put(uf, FilterFlagState.IGNORE); } put(UserFlag.OWN, FilterFlagState.IS); put(UserFlag.PREVIOUSLY_OWNED, FilterFlagState.ISNOT); }}; public Integer geeklistId = null; public Integer familyId = null; // TODO: add others }