package uk.bl.monitrix.database.mongodb.ingest; import java.util.AbstractList; import java.util.List; import com.mongodb.DB; import com.mongodb.DBObject; import uk.bl.monitrix.database.mongodb.model.MongoAlert; import uk.bl.monitrix.database.mongodb.model.MongoAlertLog; /** * An extended version of {@link MongoAlertLog} that adds insert capability. * @author Rainer Simon <rainer.simon@ait.ac.at> */ class MongoAlertLogImporter extends MongoAlertLog { public MongoAlertLogImporter(DB db) { super(db); } public void insert(MongoAlert alert) { collection.insert(alert.getBackingDBO()); } public void insert(final List<MongoAlert> alerts) { List<DBObject> mapped = new AbstractList<DBObject>() { @Override public DBObject get(int index) { return alerts.get(index).getBackingDBO(); } @Override public int size() { return alerts.size(); } }; collection.insert(mapped); } }