/** * Mad-Advertisement * Copyright (C) 2011 Thorsten Marx <thmarx@gmx.net> * * This program is free software: you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later * version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more * details. * * You should have received a copy of the GNU General Public License along with * this program. If not, see <http://www.gnu.org/licenses/>. */ package net.mad.ads.db; import java.util.ArrayList; import java.util.List; import net.mad.ads.db.condition.Condition; import net.mad.ads.db.condition.impl.AdSlotCondition; import net.mad.ads.db.condition.impl.CountryCondition; import net.mad.ads.db.condition.impl.DateCondition; import net.mad.ads.db.condition.impl.DayCondition; import net.mad.ads.db.condition.impl.DistanceCondition; import net.mad.ads.db.condition.impl.ExcludeSiteCondition; import net.mad.ads.db.condition.impl.KeyValueCondition; import net.mad.ads.db.condition.impl.KeywordCondition; import net.mad.ads.db.condition.impl.SiteCondition; import net.mad.ads.db.condition.impl.StateCondition; import net.mad.ads.db.condition.impl.TimeCondition; import net.mad.ads.db.db.AdDB; public class AdDBManager { private static AdDBManager INSTANCE = new AdDBManager(); private static final AdDB adDB = new AdDB(); private static final AdDBContext context = new AdDBContext(); public static AdDBManager getInstance () { return INSTANCE; } private static final List<Condition> conditions = new ArrayList<Condition>(); static { // Default Conditions conditions.add(new CountryCondition()); conditions.add(new StateCondition()); conditions.add(new DateCondition()); conditions.add(new DayCondition()); conditions.add(new TimeCondition()); conditions.add(new KeywordCondition()); conditions.add(new KeyValueCondition()); conditions.add(new SiteCondition()); conditions.add(new AdSlotCondition()); // wieso ist diese ExcludeCondition auskommentiert /* * wahrscheinlich muss die Klasse ExcludeCondition noch angepasst werden, da dort die selben Element wir in Site verwendet werden */ // conditions.add(new ExcludeSiteCondition()); conditions.add(new DistanceCondition()); } // private AdDBManager () { } public AdDB getAdDB () { return adDB; } public List<Condition> getConditions () { return conditions; } public AdDBContext getContext () { return this.context; } }