package com.mongodb.hvdf.allocators; import java.util.ArrayList; import java.util.List; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.hvdf.configuration.PluginConfiguration; import com.mongodb.hvdf.configuration.PluginConfiguration.HVDF; public class SingleCollectionAllocator implements CollectionAllocator{ private DBCollection collection = null; public SingleCollectionAllocator(PluginConfiguration config){ String prefix = config.get(HVDF.PREFIX, String.class); DB db = config.get(HVDF.DB, DB.class); this.collection = db.getCollection(prefix); } @Override public DBCollection getCollection(long timestamp) { return this.collection; } @Override public DBCollection getPreviousWithLimit(DBCollection current, long minTime) { // There is only one collection, no previous return null; } @Override public List<SliceDetails> getCollectionSlices() { // Create a list of one ! List<SliceDetails> result = new ArrayList<SliceDetails>(1); result.add(new SliceDetails(this.collection.getName(), Long.MIN_VALUE, Long.MAX_VALUE)); return result; } }