package net.sf.minuteProject.configuration.bean; import java.util.ArrayList; import java.util.List; import net.sf.minuteProject.configuration.bean.enrichment.group.Group; import net.sf.minuteProject.configuration.bean.model.data.Table; import net.sf.minuteProject.utils.TableUtils; public abstract class BusinessPackageAdapter extends AbstractConfiguration { protected String defaultPackage, defaultPackageType, autoPackageType; protected List<Condition> conditions; public void addCondition(Condition condition) { if (conditions == null) conditions = new ArrayList<Condition>(); conditions.add(condition); } public List<Condition> getConditions() { return conditions; } public void setConditions(List<Condition> conditions) { this.conditions = conditions; } public String getPackage(String value) { return getConditionsResult(value); } private String getConditionsResult(String valueToTest) { if (conditions!=null) { for (Condition condition : conditions) { if (condition.getConditionResult(valueToTest) != null) { return condition.getResult(); } } } return getDefaultPackage(); } protected abstract String getDefaultPackage(); public void setDefaultPackage(String defaultPackage) { this.defaultPackage = defaultPackage; } public String getAutoPackageType() { return autoPackageType; } public void setAutoPackageType(String autoPackageType) { this.autoPackageType = autoPackageType; } public String getDefaultPackageType() { return defaultPackageType; } public void setDefaultPackageType(String defaultPackageType) { this.defaultPackageType = defaultPackageType; } }