/** * Gets MonogoDB database object. It does not auto-creates database if given db name does not * corresponds to any db's. * * @param dbName name of database * @return MongoDB databaase object or null if base does not exists. */ public MongoDatabase getDatabase(String dbName) { return getDatabase(dbName, false); }
/** * Gets MonogoDB database object. It does not auto-creates database if given db name does not * corresponds to any db's. * * @param dbName name of database * @return MongoDB databaase object or null if base does not exists. */ public MongoDatabase getDatabase(String dbName) { return getDatabase(dbName, false); }
private MongoCollection<Document> getMetadataCollection(DBKey dbKey) throws StorageException { final String dbName = MongoDBClient.getDbName(dbKey.getCompany(), dbKey.getProject()); final MongoDatabase database = client.getDatabase(dbName, true); if (database == null) { throw new StorageException( String.format("Database %s does not exist! Contact AET administrators.", dbName)); } return database.getCollection(METADATA_COLLECTION_NAME); } }
private MongoCollection<Document> getMetadataCollection(DBKey dbKey) throws StorageException { final String dbName = MongoDBClient.getDbName(dbKey.getCompany(), dbKey.getProject()); final MongoDatabase database = client.getDatabase(dbName, true); if (database == null) { throw new StorageException( String.format("Database %s does not exist! Contact AET administrators.", dbName)); } return database.getCollection(METADATA_COLLECTION_NAME); } }
@Override public Set<String> getArtifactsIds(DBKey dbKey) { final String dbName = MongoDBClient.getDbName(dbKey.getCompany(), dbKey.getProject()); FindIterable<Document> findIterable = client.getDatabase(dbName) .getCollection(ARTIFACTS_COLLECTION_NAME + FILES_COLLECTION_SUFFIX) .find().projection(fields(include(ID_FIELD_NAME))); Set<String> artifactsId = new HashSet<>(); for (Document document : findIterable) { artifactsId.add(document.get(ID_FIELD_NAME).toString()); } return artifactsId; }
@Override public String getArtifactMD5(DBKey dbKey, String objectID) { final String dbName = MongoDBClient.getDbName(dbKey.getCompany(), dbKey.getProject()); FindIterable findIterable = client.getDatabase(dbName) .getCollection(ARTIFACTS_COLLECTION_NAME + FILES_COLLECTION_SUFFIX) .find(new Document(ID_FIELD_NAME, new ObjectId(objectID))); Document fileMetadata = (Document) findIterable.first(); if (fileMetadata == null) { LOGGER.error("Unable to find file artifact with ObjectID: {}", objectID); } return fileMetadata != null ? fileMetadata.get(MD5_FIELD_NAME).toString() : null; }
@Override public Set<String> getArtifactsIds(DBKey dbKey) { final String dbName = MongoDBClient.getDbName(dbKey.getCompany(), dbKey.getProject()); FindIterable<Document> findIterable = client.getDatabase(dbName) .getCollection(ARTIFACTS_COLLECTION_NAME + FILES_COLLECTION_SUFFIX) .find().projection(fields(include(ID_FIELD_NAME))); Set<String> artifactsId = new HashSet<>(); for (Document document : findIterable) { artifactsId.add(document.get(ID_FIELD_NAME).toString()); } return artifactsId; }
@Override public String getArtifactMD5(DBKey dbKey, String objectID) { final String dbName = MongoDBClient.getDbName(dbKey.getCompany(), dbKey.getProject()); FindIterable findIterable = client.getDatabase(dbName) .getCollection(ARTIFACTS_COLLECTION_NAME + FILES_COLLECTION_SUFFIX) .find(new Document(ID_FIELD_NAME, new ObjectId(objectID))); Document fileMetadata = (Document) findIterable.first(); if (fileMetadata == null) { LOGGER.error("Unable to find file artifact with ObjectID: {}", objectID); } return fileMetadata != null ? fileMetadata.get(MD5_FIELD_NAME).toString() : null; }
@Override public Date getArtifactUploadDate(DBKey dbKey, String objectID) { final String dbName = MongoDBClient.getDbName(dbKey.getCompany(), dbKey.getProject()); FindIterable findIterable = client.getDatabase(dbName) .getCollection(ARTIFACTS_COLLECTION_NAME + FILES_COLLECTION_SUFFIX) .find(new Document(ID_FIELD_NAME, new ObjectId(objectID))); Document fileMetadata = (Document) findIterable.first(); if (fileMetadata == null) { LOGGER.error("Unable to find file artifact with ObjectID: {}", objectID); } return fileMetadata != null ? (Date) fileMetadata.get(UPLOAD_DATE_FIELD_NAME) : null; }
@Override public Date getArtifactUploadDate(DBKey dbKey, String objectID) { final String dbName = MongoDBClient.getDbName(dbKey.getCompany(), dbKey.getProject()); FindIterable findIterable = client.getDatabase(dbName) .getCollection(ARTIFACTS_COLLECTION_NAME + FILES_COLLECTION_SUFFIX) .find(new Document(ID_FIELD_NAME, new ObjectId(objectID))); Document fileMetadata = (Document) findIterable.first(); if (fileMetadata == null) { LOGGER.error("Unable to find file artifact with ObjectID: {}", objectID); } return fileMetadata != null ? (Date) fileMetadata.get(UPLOAD_DATE_FIELD_NAME) : null; }