@Override public Set<String> getStateIds() { Iterator<MongoState> res = getCollection().find().as(MongoState.class).iterator(); Set<String> result = new HashSet<String>(); while (res.hasNext()) { MongoState state = res.next(); result.add(state.getId()); } return result; }