package com.mongodb.tools.driver;
import java.net.UnknownHostException;
import java.util.ArrayList;
import com.mongodb.Mongo;
import com.mongodb.MongoException;
import com.mongodb.MongoURI;
public class MongoInstanceManager extends ArrayList<Mongo> {
public static final MongoInstanceManager INSTANCE = new MongoInstanceManager();
public static MongoInstanceManager getInstance() {
return INSTANCE;
}
public MongoInstanceManager() {
}
public Mongo createMongo(String host, Integer port)
throws UnknownHostException, MongoException {
Mongo mongo = MongoDriverFactory.createMongo(host, port);
super.add(mongo);
return mongo;
}
public Mongo createMongo(MongoURI mongoURI) throws MongoException,
UnknownHostException {
Mongo mongo = MongoDriverFactory.createMongo(mongoURI);
super.add(mongo);
return mongo;
}
public void dispose() {
for (Mongo mongo : this) {
try {
dispose(mongo);
} catch (Throwable e) {
e.printStackTrace();
}
}
}
public void dispose(Mongo mongo) {
if (super.contains(mongo)) {
mongo.close();
super.remove(mongo);
}
}
}