Interface VitamRepository
-
- All Known Implementing Classes:
VitamMongoRepository
public interface VitamRepositoryThis repository is a specification of vitam data management
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description longcount()Count occurence of documentslongcount(org.bson.conversions.Bson filter)Count occurence of documentsvoiddelete(java.util.List<java.lang.String> ids, int tenant)Deleted all documents by idscom.mongodb.client.FindIterable<org.bson.Document>findByFieldsDocuments(java.util.Map<java.lang.String,java.lang.String> fields, int mongoBatchSize, java.lang.Integer tenant)Return iterable over document for the given collection for a specific tenant and fieldsjava.util.Optional<org.bson.Document>findByIdentifier(java.lang.String identifier)Find by identifier for collections cross tenantjava.util.Optional<org.bson.Document>findByIdentifierAndTenant(java.lang.String identifier, java.lang.Integer tenant)find by identifier for all tenantcom.mongodb.client.FindIterable<org.bson.Document>findDocuments(int mongoBatchSize)Return iterable over document for the given collectioncom.mongodb.client.FindIterable<org.bson.Document>findDocuments(int mongoBatchSize, java.lang.Integer tenant)Return iterable over document for the given collection for a specific tenantcom.mongodb.client.FindIterable<org.bson.Document>findDocuments(java.util.Collection<java.lang.String> ids, org.bson.conversions.Bson projection)Find collection of document by there id and return only projection fieldscom.mongodb.client.FindIterable<org.bson.Document>findDocuments(org.bson.conversions.Bson query, int mongoBatchSize)Return iterable over document for the given collectionjava.util.Optional<org.bson.Document>getByID(java.lang.String id, java.lang.Integer tenant)Get vitam document by idlongpurge()Be careful when using this method Remove by tenant for collection cross-tenantlongpurge(java.lang.Integer tenant)Be careful when using this method Remove by tenant for collection multi-tenantvoidremove(java.lang.String id, java.lang.Integer tenant)Remove document by idlongremove(org.bson.conversions.Bson query)Be careful when using this method Remove by queryvoidremoveByNameAndTenant(java.lang.String name, java.lang.Integer tenant)Be careful when using this method Remove collection by name and tenantvoidsave(java.util.List<org.bson.Document> documents)Save a list of vitam documentsvoidsave(org.bson.Document document)Save vitam documentvoidsaveOrUpdate(java.util.List<org.bson.Document> documents)Save or update a list of vitam documentsVitamRepositoryStatussaveOrUpdate(org.bson.Document document)Save or updatevitam documentvoidupdate(java.util.List<com.mongodb.client.model.WriteModel<org.bson.Document>> updates)Used to execute a bulk update If document exists then update If document do not exists then create document throw Duplicate key exception if document exists by _id but not exists by filter in the update one model
-
-
-
Method Detail
-
save
void save(org.bson.Document document) throws DatabaseException
Save vitam document- Parameters:
document- the document to be saved- Throws:
DatabaseException- in case error with database occurs
-
saveOrUpdate
VitamRepositoryStatus saveOrUpdate(org.bson.Document document) throws DatabaseException
Save or updatevitam document- Parameters:
document- the document to be saved- Returns:
- status CREATED or UPDATED
- Throws:
DatabaseException- in case error with database occurs
-
save
void save(java.util.List<org.bson.Document> documents) throws DatabaseException
Save a list of vitam documents- Parameters:
documents- the list of documents to be saved- Throws:
DatabaseException- in case error with database occurs
-
saveOrUpdate
void saveOrUpdate(java.util.List<org.bson.Document> documents) throws DatabaseExceptionSave or update a list of vitam documents- Parameters:
documents- the list of document to be saved orupdated- Throws:
DatabaseException- in case error with database occurs
-
update
void update(java.util.List<com.mongodb.client.model.WriteModel<org.bson.Document>> updates) throws DatabaseExceptionUsed to execute a bulk update If document exists then update If document do not exists then create document throw Duplicate key exception if document exists by _id but not exists by filter in the update one model- Parameters:
updates-- Throws:
DatabaseException
-
remove
void remove(java.lang.String id, java.lang.Integer tenant) throws DatabaseExceptionRemove document by id- Parameters:
id- the id of the document to be removedtenant- the tenant of the document to be removed- Throws:
DatabaseException- in case error with database occurs
-
remove
long remove(org.bson.conversions.Bson query) throws DatabaseExceptionBe careful when using this method Remove by query- Parameters:
query-- Throws:
DatabaseException
-
removeByNameAndTenant
void removeByNameAndTenant(java.lang.String name, java.lang.Integer tenant) throws DatabaseExceptionBe careful when using this method Remove collection by name and tenant- Parameters:
name- the name of the collection to be removedtenant- the tenant of the collection to be removed- Throws:
DatabaseException- in case error with database occurs
-
purge
long purge(java.lang.Integer tenant) throws DatabaseExceptionBe careful when using this method Remove by tenant for collection multi-tenant- Parameters:
tenant- the tenant- Returns:
- the number of deleted documents
- Throws:
DatabaseException- in case error with database occurs
-
purge
long purge() throws DatabaseExceptionBe careful when using this method Remove by tenant for collection cross-tenant- Returns:
- number of purged documents
- Throws:
DatabaseException- in case error with database occurs
-
getByID
java.util.Optional<org.bson.Document> getByID(java.lang.String id, java.lang.Integer tenant) throws DatabaseExceptionGet vitam document by id- Parameters:
id- the document idtenant- the tenant of the document- Returns:
- the document if found
- Throws:
DatabaseException- in case error with database occurs
-
findByIdentifierAndTenant
java.util.Optional<org.bson.Document> findByIdentifierAndTenant(java.lang.String identifier, java.lang.Integer tenant) throws DatabaseExceptionfind by identifier for all tenant- Parameters:
identifier- the identifier of the documenttenant- the tenant of the document- Returns:
- the document if found
- Throws:
DatabaseException- in case error with database occurs
-
findByIdentifier
java.util.Optional<org.bson.Document> findByIdentifier(java.lang.String identifier) throws DatabaseExceptionFind by identifier for collections cross tenant- Parameters:
identifier- the identifier of the document- Returns:
- the document if found
- Throws:
DatabaseException- in case error with database occurs
-
findDocuments
com.mongodb.client.FindIterable<org.bson.Document> findDocuments(java.util.Collection<java.lang.String> ids, org.bson.conversions.Bson projection)Find collection of document by there id and return only projection fields- Parameters:
ids- list of documents idprojection- the fields wanted in the result- Returns:
- An iterable of documents
-
findDocuments
com.mongodb.client.FindIterable<org.bson.Document> findDocuments(int mongoBatchSize, java.lang.Integer tenant)Return iterable over document for the given collection for a specific tenant- Parameters:
mongoBatchSize- mongoBatchSizetenant- tenant id- Returns:
- iterable over document for the given collection
-
findByFieldsDocuments
com.mongodb.client.FindIterable<org.bson.Document> findByFieldsDocuments(java.util.Map<java.lang.String,java.lang.String> fields, int mongoBatchSize, java.lang.Integer tenant)Return iterable over document for the given collection for a specific tenant and fields- Parameters:
fields- list of fields for filtermongoBatchSize- mongoBatchSizetenant- tenant id- Returns:
- iterable over document for the given collection
-
findDocuments
com.mongodb.client.FindIterable<org.bson.Document> findDocuments(int mongoBatchSize)
Return iterable over document for the given collection- Parameters:
mongoBatchSize- mongoBatchSize- Returns:
- iterable over document for the given collection
-
count
long count()
Count occurence of documents- Returns:
- the number of documents
-
count
long count(org.bson.conversions.Bson filter)
Count occurence of documents- Parameters:
filter- filtre- Returns:
- the number of documents
-
findDocuments
com.mongodb.client.FindIterable<org.bson.Document> findDocuments(org.bson.conversions.Bson query, int mongoBatchSize)Return iterable over document for the given collection- Parameters:
query- the mongo query to be executedmongoBatchSize- mongoBatchSize- Returns:
- iterable over document for the given collection
-
delete
void delete(java.util.List<java.lang.String> ids, int tenant) throws DatabaseExceptionDeleted all documents by ids- Parameters:
ids-tenant-- Throws:
DatabaseException
-
-