public MongoDBCollection getCollection(String collection) { return getCollection(collection, null, null); }
void drop() { logger.debug("MongoDataStore: drop database '{}'", getDatabaseName()); db.drop(); }
public boolean isReplSet() { Document document = getServerStatus(); return document.containsKey(REPL_SET_KEY); }
public MongoDBCollection getStageCollection(int studyId) { String stageCollectionName = configuration.getString(COLLECTION_STAGE.key(), COLLECTION_STAGE.defaultValue()); // Ensure retro-compatibility. // If a "stage" collection exists, continue using one single stage collection for all the studies. // Otherwise, build the stage collection name as: 'stage_study_<study-id>' if (db.getCollectionNames().contains(stageCollectionName)) { return db.getCollection(stageCollectionName); } else { return db.getCollection(stageCollectionName + "_study_" + studyId); } }
mongoDBCollection = mongoDataStore.getCollection(collectionName); logger.debug("Connection to MongoDB datastore '{}' created, collection '{}' is used", mongoDataStore.getDatabaseName(), collectionName);
private void clearCatalog() throws URISyntaxException { List<DataStoreServerAddress> dataStoreServerAddresses = new LinkedList<>(); for (String hostPort : configuration.getCatalog().getDatabase().getHosts()) { if (hostPort.contains(":")) { String[] split = hostPort.split(":"); Integer port = Integer.valueOf(split[1]); dataStoreServerAddresses.add(new DataStoreServerAddress(split[0], port)); } else { dataStoreServerAddresses.add(new DataStoreServerAddress(hostPort, 27017)); } } MongoDataStoreManager mongoManager = new MongoDataStoreManager(dataStoreServerAddresses); // MongoDataStore db = mongoManager.get(catalogConfiguration.getDatabase().getDatabase()); MongoDataStore db = mongoManager.get(getCatalogDatabase()); db.getDb().drop(); // mongoManager.close(catalogConfiguration.getDatabase().getDatabase()); mongoManager.close(getCatalogDatabase()); Path rootdir = Paths.get(UriUtils.createDirectoryUri(configuration.getDataDir())); deleteFolderTree(rootdir.toFile()); if (!configuration.getTempJobsDir().isEmpty()) { Path jobsDir = Paths.get(UriUtils.createDirectoryUri(configuration.getTempJobsDir())); if (jobsDir.toFile().exists()) { deleteFolderTree(jobsDir.toFile()); } } }
@Override public void installCatalogDB(Configuration configuration) throws CatalogException { // TODO: Check META object does not exist. Use {@link isCatalogDBReady} // TODO: Check all collections do not exists, or are empty // TODO: Catch DuplicatedKeyException while inserting META object MongoDataStore mongoDataStore = mongoManager.get(database, this.configuration); if (!mongoDataStore.getCollectionNames().isEmpty()) { throw new CatalogException("Database " + database + " already exists with the following collections: " + StringUtils.join(mongoDataStore.getCollectionNames()) + ".\nPlease, remove the database or choose a different one."); } COLLECTIONS_LIST.forEach(mongoDataStore::createCollection); metaDBAdaptor.createIndexes(); metaDBAdaptor.initializeMetaCollection(configuration); }
mongoDataStore = new MongoDataStore(mc, db, mongoDBConfiguration); } else { logger.debug("MongoDB database is null or empty");
mongoDBCollection = mongoDataStore.getCollection(collectionName); logger.debug("Connection to MongoDB datastore '{}' created, collection '{}' is used", mongoDataStore.getDatabaseName(), collectionName);
@Override public boolean check() { try (MongoDataStoreManager mongoManager = new MongoDataStoreManager(getDataStoreServerAddresses())) { MongoDataStore db = mongoManager.get(getMongoDbName(), getMongoDBConfiguration()); MongoIterable<String> strings = db.getDb().listCollectionNames(); int count = 0; for (String string : strings) { count++; } return true; } catch (MongoException e) { //FIXME: Throw IllegalOpenCGACredentialsException ?? return false; } }
public GenomeMongoDBAdaptor(String species, String assembly, MongoDataStore mongoDataStore) { super(species, assembly, mongoDataStore); genomeInfoMongoDBCollection = mongoDataStore.getCollection("genome_info"); mongoDBCollection = mongoDataStore.getCollection("genome_sequence"); conservationMongoDBCollection = mongoDataStore.getCollection("conservation"); logger.debug("GenomeMongoDBAdaptor: in 'constructor'"); }
db.getDb().drop();
private Map<String, HealthStatus.ApplicationDetails.DependenciesStatus.DatastoreDependenciesStatus.DatastoreStatus> getSingleMachineDBStatus(MongoDataStore mongoDatastore, String species, String assembly) { Document statusDocument = mongoDatastore.getServerStatus(); Map<String, HealthStatus.ApplicationDetails.DependenciesStatus.DatastoreDependenciesStatus.DatastoreStatus> statusMap = new HashMap<>(1); HealthStatus.ApplicationDetails.DependenciesStatus.DatastoreDependenciesStatus.DatastoreStatus datastoreStatus = new HealthStatus.ApplicationDetails.DependenciesStatus.DatastoreDependenciesStatus.DatastoreStatus(); datastoreStatus.setResponseTime(getQueryResponseTime(species, assembly)); statusMap.put((String) statusDocument.get(HOST), datastoreStatus); return statusMap; }
void close() { logger.debug("MongoDataStore: connection closed for database '{}'", getDatabaseName()); mongoClient.close(); }
public VariantMongoDBAdaptor(String species, String assembly, MongoDataStore mongoDataStore) { super(species, assembly, mongoDataStore); mongoDBCollection = mongoDataStore.getCollection("variation"); caddDBCollection = mongoDataStore.getCollection("variation_functional_score"); logger.debug("VariationMongoDBAdaptor: in 'constructor'"); }
db.getDb().drop();
private Map<String, HealthStatus.ApplicationDetails.DependenciesStatus.DatastoreDependenciesStatus.DatastoreStatus> getSingleMachineDBStatus(MongoDataStore mongoDatastore, String species, String assembly) { Document statusDocument = mongoDatastore.getServerStatus(); Map<String, HealthStatus.ApplicationDetails.DependenciesStatus.DatastoreDependenciesStatus.DatastoreStatus> statusMap = new HashMap<>(1); HealthStatus.ApplicationDetails.DependenciesStatus.DatastoreDependenciesStatus.DatastoreStatus datastoreStatus = new HealthStatus.ApplicationDetails.DependenciesStatus.DatastoreDependenciesStatus.DatastoreStatus(); datastoreStatus.setResponseTime(getQueryResponseTime(species, assembly)); statusMap.put((String) statusDocument.get(HOST), datastoreStatus); return statusMap; }
@Override public void close() { mongoManager.close(db.getDatabaseName()); }
public GenomeMongoDBAdaptor(String species, String assembly, MongoDataStore mongoDataStore) { super(species, assembly, mongoDataStore); genomeInfoMongoDBCollection = mongoDataStore.getCollection("genome_info"); mongoDBCollection = mongoDataStore.getCollection("genome_sequence"); conservationMongoDBCollection = mongoDataStore.getCollection("conservation"); logger.debug("GenomeMongoDBAdaptor: in 'constructor'"); }
db.getDb().drop();