Interface VitamRepository
- All Known Implementing Classes:
VitamMongoRepository
public interface VitamRepository
This repository is a specification of vitam data management
-
Method Summary
Modifier and TypeMethodDescriptionlongcount()Count occurence of documentslongcount(org.bson.conversions.Bson filter) Count occurence of documentsvoidDeleted all documents by idscom.mongodb.client.FindIterable<org.bson.Document>findByFieldsDocuments(Map<String, String> fields, int mongoBatchSize, Integer tenant) Return iterable over document for the given collection for a specific tenant and fieldsOptional<org.bson.Document>findByIdentifier(String identifier) Find by identifier for collections cross tenantOptional<org.bson.Document>findByIdentifierAndTenant(String identifier, 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, Integer tenant) Return iterable over document for the given collection for a specific tenantcom.mongodb.client.FindIterable<org.bson.Document>findDocuments(Collection<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 collectionOptional<org.bson.Document>Get vitam document by idlongpurge()Be careful when using this method Remove by tenant for collection cross-tenantlongBe careful when using this method Remove by tenant for collection multi-tenantvoidRemove document by idlongremove(org.bson.conversions.Bson query) Be careful when using this method Remove by queryvoidremoveByNameAndTenant(String name, Integer tenant) Be careful when using this method Remove collection by name and tenantvoidSave a list of vitam documentsvoidsave(org.bson.Document document) Save vitam documentvoidsaveOrUpdate(List<org.bson.Document> documents) Save or update a list of vitam documentssaveOrUpdate(org.bson.Document document) Save or updatevitam documentvoidUsed 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 Details
-
save
Save vitam document- Parameters:
document- the document to be saved- Throws:
DatabaseException- in case error with database occurs
-
saveOrUpdate
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
Save a list of vitam documents- Parameters:
documents- the list of documents to be saved- Throws:
DatabaseException- in case error with database occurs
-
saveOrUpdate
Save 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(List<com.mongodb.client.model.WriteModel<org.bson.Document>> updates) throws DatabaseException 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- Parameters:
updates-- Throws:
DatabaseException
-
remove
Remove 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
Be careful when using this method Remove by query- Parameters:
query-- Throws:
DatabaseException
-
removeByNameAndTenant
Be 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
Be 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
Be 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
Get 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
Optional<org.bson.Document> findByIdentifierAndTenant(String identifier, Integer tenant) throws DatabaseException find 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
Find 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(Collection<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, 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(Map<String, String> fields, int mongoBatchSize, 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
Deleted all documents by ids- Parameters:
ids-tenant-- Throws:
DatabaseException
-