C# OJAI Client API
MapRDB.Driver.Ojai.OjaiDocumentStore Class Reference
Inheritance diagram for MapRDB.Driver.Ojai.OjaiDocumentStore:

Public Member Functions

async Task< IDocumentFindByIdAsync (string id, params string[] fieldPaths)
 Returns the Document with the given "id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. More...
 
async Task< IDocumentFindByIdAsync (string id, long timeout, params string[] fieldPaths)
 Returns the Document with the given "id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. Request has limited timeout in miliseconds. More...
 
async Task< IDocumentFindByIdAsync (byte[] id, params string[] fieldPaths)
 Returns the Document with the given "id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. More...
 
async Task< IDocumentFindByIdAsync (byte[] id, long timeout, params string[] fieldPaths)
 Returns the Document with the given "id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. Request has limited timeout in miliseconds. More...
 
async Task< IDocumentFindByIdAsync (string id, IQueryCondition condition)
 Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. More...
 
async Task< IDocumentFindByIdAsync (string id, IQueryCondition condition, long timeout)
 Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. Request has limited timeout in miliseconds. More...
 
async Task< IDocumentFindByIdAsync (byte[] id, IQueryCondition condition)
 Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. More...
 
async Task< IDocumentFindByIdAsync (byte[] id, IQueryCondition condition, long timeout)
 Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. Request has limited timeout in miliseconds. More...
 
async Task< IDocumentFindByIdAsync (string id, IQueryCondition condition, params string[] fieldPaths)
 Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. More...
 
async Task< IDocumentFindByIdAsync (string id, IQueryCondition condition, long timeout, params string[] fieldPaths)
 Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. Request has limited timeout in miliseconds. More...
 
async Task< IDocumentFindByIdAsync (byte[] id, IQueryCondition condition, params string[] fieldPaths)
 Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. More...
 
async Task< IDocumentFindByIdAsync (byte[] id, IQueryCondition condition, long timeout, params string[] fieldPaths)
 Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. Request has limited timeout in miliseconds. More...
 
async Task InsertOrReplaceAsync (IDocument document)
 Inserts or replaces a new document in this DocumentStore. The specified Document must contain an "id" field or the operation will fail. If the document with the given id exists in the DocumentStore then that document will be replaced by the specified document. More...
 
async Task InsertOrReplaceAsync (string id, IDocument document)
 Inserts or replaces a new document in this DocumentStore with the given "id" asynchronously. The specified document should either not contain an "id" field or its value should be same as the specified "id" or the operation will fail. If the document with the given "id" exists in the DocumentStore then that document will be replaced by the specified document. More...
 
async Task InsertOrReplaceAsync (byte[] id, IDocument document)
 Inserts or replaces a new document in this DocumentStore with the given "id" asynchronously. The specified document should either not contain an "id" field or its value should be same as the specified "id" or the operation will fail. If the document with the given "id" exists in the DocumentStore then that document will be replaced by the specified document. More...
 
async Task InsertOrReplaceAsync (IDocument document, string fieldAsKey)
 
async Task InsertOrReplaceAsync (IDocumentStream stream)
 Inserts all documents from the specified DocumentStream into this DocumentStore asynchronously. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error has occurred while storing the documents. Each document read from the DocumentStream must have a field "id"; otherwise, the operation will fail. More...
 
async Task InsertOrReplaceAsync (IDocumentStream stream, string fieldAsKey)
 
async Task UpdateAsync (string id, IDocumentMutation mutation)
 Applies a mutation on the document identified by the document id. All updates specified by the mutation object should be applied atomically, and consistently meaning either all of the updates in mutation are applied or none of them is applied and a partial update should not be visible to an observer. More...
 
async Task UpdateAsync (byte[] id, IDocumentMutation mutation)
 Applies a mutation on the document identified by the document id. All updates specified by the mutation object should be applied atomically, and consistently meaning either all of the updates in mutation are applied or none of them is applied and a partial update should not be visible to an observer. More...
 
async Task DeleteAsync (string id)
 Deletes a document with the given "id". This operation is successful even when the document with the given "id" doesn't exist. More...
 
async Task DeleteAsync (byte[] id)
 Deletes a document with the given "id". This operation is successful even when the document with the given "id" doesn't exist. More...
 
async Task DeleteAsync (IDocument document)
 Deletes a document. More...
 
async Task DeleteAsync (IDocument doc, string fieldAsKey)
 
async Task DeleteAsync (IDocumentStream stream)
 Deletes a set of documents from the DocumentStore represented by the DocumentStream. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise the operation will fail. More...
 
async Task DeleteAsync (IDocumentStream stream, string fieldAsKey)
 
async Task InsertAsync (string id, IDocument document)
 Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist. More...
 
async Task InsertAsync (byte[] id, IDocument document)
 Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist. More...
 
async Task InsertAsync (IDocument document)
 Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist. More...
 
async Task InsertAsync (IDocument doc, string fieldAsKey)
 
async Task InsertAsync (IDocumentStream stream)
 Inserts a set of documents represented by the DocumentStream into the DocumentStore. This is a synchronous API that won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise, the operation will fail or it will be of the Document type. More...
 
async Task InsertAsync (IDocumentStream stream, string fieldAsKey)
 
async Task ReplaceAsync (string id, IDocument document)
 Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail. More...
 
async Task ReplaceAsync (byte[] id, IDocument document)
 Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail. More...
 
async Task ReplaceAsync (IDocument document)
 Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail. More...
 
async Task ReplaceAsync (IDocument doc, string fieldAsKey)
 
async Task ReplaceAsync (IDocumentStream stream)
 Replaces a set of documents represented by the DocumentStream into the DocumentStore. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise, the operation will fail or it will be of Document type. More...
 
async Task ReplaceAsync (IDocumentStream stream, string fieldAsKey)
 
async Task IncrementAsync (string id, string fieldPath)
 Atomically applies an increment to a given field (in dot separated notation) of the given document id. If the field doesn't exist on the server then it will be created with the type of the incremental value. The increment operation can be applied on any of the numeric types, such as byte, short, int, long, float, double, or decimal, of a field. The operation will fail if the increment is applied to a field that is of a non-numeric type. More...
 
async Task IncrementAsync (string id, string fieldPath, byte increment)
 
async Task IncrementAsync (string id, string fieldPath, short increment)
 
async Task IncrementAsync (string id, string fieldPath, int increment)
 
async Task IncrementAsync (string id, string fieldPath, long increment)
 
async Task IncrementAsync (string id, string fieldPath, float increment)
 
async Task IncrementAsync (string id, string fieldPath, double increment)
 
async Task IncrementAsync (string id, string fieldPath, decimal increment)
 
async Task DecrementAsync (string id, string fieldPath)
 
async Task DecrementAsync (string id, string fieldPath, byte decrement)
 
async Task DecrementAsync (string id, string fieldPath, short decrement)
 
async Task DecrementAsync (string id, string fieldPath, int decrement)
 
async Task DecrementAsync (string id, string fieldPath, long decrement)
 
async Task DecrementAsync (string id, string fieldPath, float decrement)
 
async Task DecrementAsync (string id, string fieldPath, double decrement)
 
async Task DecrementAsync (string id, string fieldPath, decimal decrement)
 
async Task IncrementAsync (byte[] id, string fieldPath)
 
async Task IncrementAsync (byte[] id, string fieldPath, byte increment)
 
async Task IncrementAsync (byte[] id, string fieldPath, short increment)
 
async Task IncrementAsync (byte[] id, string fieldPath, int increment)
 
async Task IncrementAsync (byte[] id, string fieldPath, long increment)
 
async Task IncrementAsync (byte[] id, string fieldPath, float increment)
 
async Task IncrementAsync (byte[] id, string fieldPath, double increment)
 
async Task IncrementAsync (byte[] id, string fieldPath, decimal increment)
 
async Task DecrementAsync (byte[] id, string fieldPath)
 
async Task DecrementAsync (byte[] id, string fieldPath, byte decrement)
 
async Task DecrementAsync (byte[] id, string fieldPath, short decrement)
 
async Task DecrementAsync (byte[] id, string fieldPath, int decrement)
 
async Task DecrementAsync (byte[] id, string fieldPath, long decrement)
 
async Task DecrementAsync (byte[] id, string fieldPath, float decrement)
 
async Task DecrementAsync (byte[] id, string fieldPath, double decrement)
 
async Task DecrementAsync (byte[] id, string fieldPath, decimal decrement)
 
async Task< bool > CheckAndUpdateAsync (string id, IQueryCondition condition, IDocumentMutation mutation)
 Atomically evaluates the condition on a given document and if the condition holds true for the document then a mutation is applied on the document. More...
 
async Task< bool > CheckAndUpdateAsync (byte[] id, IQueryCondition condition, IDocumentMutation mutation)
 Atomically evaluates the condition on a given document and if the condition holds true for the document then a mutation is applied on the document. More...
 
async Task< bool > CheckAndDeleteAsync (string id, IQueryCondition condition)
 Atomically evaluates the condition on given document and if the condition holds true for the document then it is atomically deleted. More...
 
async Task< bool > CheckAndDeleteAsync (byte[] id, IQueryCondition condition)
 Atomically evaluates the condition on given document and if the condition holds true for the document then it is atomically deleted. More...
 
async Task< bool > CheckAndReplaceAsync (string id, IQueryCondition condition, IDocument document)
 Atomically evaluates the condition on the given document and if the condition holds true for the document then it atomically replaces the document with the given document. More...
 
async Task< bool > CheckAndReplaceAsync (byte[] id, IQueryCondition condition, IDocument document)
 Atomically evaluates the condition on the given document and if the condition holds true for the document then it atomically replaces the document with the given document. More...
 
 OjaiDocumentStore (MapRDBClient mapRDBClient, string storePath)
 
IDocument FindById (string id, params string[] fieldPaths)
 Returns the Document with the given "_id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. More...
 
IDocument FindById (string id, long timeout, params string[] fieldPaths)
 Returns the Document with the given "_id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. Request has limited timeout in miliseconds. More...
 
IDocument FindById (byte[] id, params string[] fieldPaths)
 Returns the Document with the given "_id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. More...
 
IDocument FindById (byte[] id, long timeout, params string[] fieldPaths)
 Returns the Document with the given "_id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. Request has limited timeout in miliseconds. More...
 
IDocument FindById (string id, IQueryCondition condition)
 Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. More...
 
IDocument FindById (string id, IQueryCondition condition, long timeout)
 Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. Request has limited timeout in miliseconds. More...
 
IDocument FindById (byte[] id, IQueryCondition condition)
 Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. More...
 
IDocument FindById (byte[] id, IQueryCondition condition, long timeout)
 Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. Request has limited timeout in miliseconds. More...
 
IDocument FindById (string id, IQueryCondition condition, params string[] fieldPaths)
 Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. More...
 
IDocument FindById (string id, IQueryCondition condition, long timeout, params string[] fieldPaths)
 Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. Request has limited timeout in miliseconds. More...
 
IDocument FindById (byte[] id, IQueryCondition condition, params string[] fieldPaths)
 Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. More...
 
IDocument FindById (byte[] id, IQueryCondition condition, long timeout, params string[] fieldPaths)
 Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. Request has limited timeout in miliseconds. More...
 
IQueryResult Find (IQuery query)
 Executes the specified query on the DocumentStore and returns a QueryResult. The returned QueryResult must be closed after retrieving the documents. More...
 
IQueryResult Find (IQuery query, QueryOptions options)
 Executes the specified query on the DocumentStore and returns a QueryResult. The returned QueryResult must be closed after retrieving the documents. Request has limited timeout in miliseconds. More...
 
IDocumentAsyncStream Find ()
 Executes a query to return all Documents in the DocumentStore. The returned DocumentStream must be closed after retrieving the documents. More...
 
IDocumentAsyncStream Find (QueryOptions options)
 Executes a query to return all Documents in the DocumentStore. The returned DocumentStream must be closed after retrieving the documents. Request has limited timeout in miliseconds. More...
 
IDocumentAsyncStream FindQuery (IQuery query)
 Executes the specified query on the DocumentStore and returns a DocumentStream of the result. The returned DocumentStream must be closed after retrieving the documents. More...
 
IDocumentAsyncStream FindQuery (IQuery query, QueryOptions options)
 Executes the specified query on the DocumentStore and returns a DocumentStream of the result. The returned DocumentStream must be closed after retrieving the documents. Request has limited timeout in miliseconds. More...
 
IDocumentAsyncStream FindQuery (string queryJson)
 Executes the specified query on the DocumentStore and returns a DocumentStream of the result. The returned DocumentStream must be closed after retrieving the documents. More...
 
IDocumentAsyncStream FindQuery (string queryJson, QueryOptions options)
 Executes the specified query on the DocumentStore and returns a DocumentStream of the result. The returned DocumentStream must be closed after retrieving the documents. More...
 
IDocumentAsyncStream Find (params string[] fieldPaths)
 Executes a query to return all Documents in the DocumentStore. Each Document will contain only those field paths that are specified in the argument. If no fields are specified then it returns a full document. More...
 
IDocumentAsyncStream Find (QueryOptions options, params string[] fieldPaths)
 Executes a query to return all Documents in the DocumentStore. Each Document will contain only those field paths that are specified in the argument. If no fields are specified then it returns a full document. More...
 
IDocumentAsyncStream Find (IQueryCondition condition)
 Returns a DocumentStream with all the documents in the DocumentStore that satisfies the QueryCondition. More...
 
IDocumentAsyncStream Find (IQueryCondition condition, QueryOptions options)
 Returns a DocumentStream with all the documents in the DocumentStore that satisfies the QueryCondition. Request has limited timeout in miliseconds. More...
 
IDocumentAsyncStream Find (IQueryCondition condition, params string[] fieldPaths)
 Executes a query on the DocumentStore and return a DocumentStream of the Document matching the specified QueryCondition. Each Document will contain only those field paths that are specified in the argument. If no fields are specified then it returns a full document. More...
 
IDocumentAsyncStream Find (IQueryCondition condition, QueryOptions options, params string[] fieldPaths)
 Executes a query on the DocumentStore and return a DocumentStream of the Document matching the specified QueryCondition. Each Document will contain only those field paths that are specified in the argument. If no fields are specified then it returns a full document. Request has limited timeout in miliseconds. More...
 
void InsertOrReplace (IDocument document)
 Inserts or replaces a new document in this DocumentStore. The specified Document must contain an "_id" field or the operation will fail. If the document with the given id exists in the DocumentStore then that document will be replaced by the specified document. More...
 
void InsertOrReplace (string id, IDocument document)
 Inserts or replaces a new document in this DocumentStore with the given "id". The specified document should either not contain an "id" field or its value should be same as the specified "id" or the operation will fail. If the document with the given id exists in the DocumentStore then that document will be replaced by the specified document. More...
 
void InsertOrReplace (byte[] id, IDocument document)
 Inserts or replaces a new document in this DocumentStore with the given "id". The specified document should either not contain an "_id" field or its value should be same as the specified "id" or the operation will fail. If the document with the given id exists in the DocumentStore then that document will be replaced by the specified document. More...
 
void InsertOrReplace (IDocument document, string fieldAsKey)
 
void InsertOrReplace (IDocumentStream stream)
 Inserts all documents from the specified DocumentStream into this DocumentStore. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error has occurred while storing the documents. Each document read from the DocumentStream must have a field "_id"; otherwise, the operation will fail. More...
 
void InsertOrReplace (IDocumentStream stream, string fieldAsKey)
 
void Update (string id, IDocumentMutation mutation)
 Applies a mutation on the document identified by the document id. All updates specified by the mutation object should be applied atomically, and consistently meaning either all of the updates in mutation are applied or none of them is applied and a partial update should not be visible to an observer. More...
 
void Update (byte[] id, IDocumentMutation mutation)
 Applies a mutation on the document identified by the document id. All updates specified by the mutation object should be applied atomically, and consistently meaning either all of the updates in mutation are applied or none of them is applied and a partial update should not be visible to an observer. More...
 
void Delete (string id)
 Deletes a document with the given "id". This operation is successful even when the document with the given "id" doesn't exist. More...
 
void Delete (byte[] id)
 Deletes a document with the given "id". This operation is successful even when the document with the given "id" doesn't exist. More...
 
void Delete (IDocument document)
 Deletes a document. More...
 
void Delete (IDocument doc, string fieldAsKey)
 
void Delete (IDocumentStream stream)
 Deletes a set of documents from the DocumentStore represented by the DocumentStream. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise the operation will fail. More...
 
void Delete (IDocumentStream stream, string fieldAsKey)
 
void Insert (string id, IDocument document)
 Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist. More...
 
void Insert (byte[] id, IDocument document)
 Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist. More...
 
void Insert (IDocument document)
 Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist. More...
 
void Insert (IDocument doc, string fieldAsKey)
 
void Insert (IDocumentStream stream)
 Inserts a set of documents represented by the DocumentStream into the DocumentStore. This is a synchronous API that won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise, the operation will fail or it will be of the Document type. More...
 
void Insert (IDocumentStream stream, string fieldAsKey)
 
void Replace (string id, IDocument document)
 Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail. More...
 
void Replace (byte[] id, IDocument document)
 Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail. More...
 
void Replace (IDocument document)
 Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail. More...
 
void Replace (IDocument doc, string fieldAsKey)
 
void Replace (IDocumentStream stream)
 Replaces a set of documents represented by the DocumentStream into the DocumentStore. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise, the operation will fail or it will be of Document type. More...
 
void Replace (IDocumentStream stream, string fieldAsKey)
 
void Increment (string id, string fieldPath)
 Atomically applies an increment to a given field (in dot separated notation) of the given document id. If the field doesn't exist on the server then it will be created with the type of the incremental value. The increment operation can be applied on any of the numeric types, such as byte, short, int, long, float, double, or decimal, of a field. The operation will fail if the increment is applied to a field that is of a non-numeric type. More...
 
void Increment (string id, string fieldPath, byte increment)
 
void Increment (string id, string fieldPath, short increment)
 
void Increment (string id, string fieldPath, int increment)
 
void Increment (string id, string fieldPath, long increment)
 
void Increment (string id, string fieldPath, float increment)
 
void Increment (string id, string fieldPath, double increment)
 
void Increment (string id, string fieldPath, decimal increment)
 
void Decrement (string id, string fieldPath)
 
void Decrement (string id, string fieldPath, byte decrement)
 
void Decrement (string id, string fieldPath, short decrement)
 
void Decrement (string id, string fieldPath, int decrement)
 
void Decrement (string id, string fieldPath, long decrement)
 
void Decrement (string id, string fieldPath, float decrement)
 
void Decrement (string id, string fieldPath, double decrement)
 
void Decrement (string id, string fieldPath, decimal decrement)
 
void Increment (byte[] id, string fieldPath)
 
void Increment (byte[] id, string fieldPath, byte increment)
 
void Increment (byte[] id, string fieldPath, short increment)
 
void Increment (byte[] id, string fieldPath, int increment)
 
void Increment (byte[] id, string fieldPath, long increment)
 
void Increment (byte[] id, string fieldPath, float increment)
 
void Increment (byte[] id, string fieldPath, double increment)
 
void Increment (byte[] id, string fieldPath, decimal increment)
 
void Decrement (byte[] id, string fieldPath)
 
void Decrement (byte[] id, string fieldPath, byte decrement)
 
void Decrement (byte[] id, string fieldPath, short decrement)
 
void Decrement (byte[] id, string fieldPath, int decrement)
 
void Decrement (byte[] id, string fieldPath, long decrement)
 
void Decrement (byte[] id, string fieldPath, float decrement)
 
void Decrement (byte[] id, string fieldPath, double decrement)
 
void Decrement (byte[] id, string fieldPath, decimal decrement)
 
bool CheckAndUpdate (string id, IQueryCondition condition, IDocumentMutation mutation)
 Atomically evaluates the condition on a given document and if the condition holds true for the document then a mutation is applied on the document. More...
 
bool CheckAndUpdate (byte[] id, IQueryCondition condition, IDocumentMutation mutation)
 Atomically evaluates the condition on a given document and if the condition holds true for the document then a mutation is applied on the document. More...
 
bool CheckAndDelete (string id, IQueryCondition condition)
 Atomically evaluates the condition on given document and if the condition holds true for the document then it is atomically deleted. More...
 
bool CheckAndDelete (byte[] id, IQueryCondition condition)
 Atomically evaluates the condition on given document and if the condition holds true for the document then it is atomically deleted. More...
 
bool CheckAndReplace (string id, IQueryCondition condition, IDocument document)
 Atomically evaluates the condition on the given document and if the condition holds true for the document then it atomically replaces the document with the given document. More...
 
bool CheckAndReplace (byte[] id, IQueryCondition condition, IDocument document)
 Atomically evaluates the condition on the given document and if the condition holds true for the document then it atomically replaces the document with the given document. More...
 

Private Member Functions

async Task< IDocumentFindByIdAsync (IDocument document, IQueryCondition queryCondition, string[] fieldPath, long? timeout)
 
async Task InsertOrReplaceAsync (IDocument document, InsertMode insertMode)
 
async Task UpdateAsync (IDocument document, IDocumentMutation mutation)
 
IDocument FindById (IDocument document, IQueryCondition queryCondition, string[] fieldPath, long? timeout)
 
void InsertOrReplace (IDocument document, InsertMode insertMode)
 
void Update (IDocument document, IDocumentMutation mutation)
 
IQueryResult Find (string query, QueryOptions options)
 
bool CheckDocumentIdForInsertOrReplace (string id, IDocument document)
 Check Document Id for insert or replace operation. More...
 
bool CheckDocumentIdForInsertOrReplace (byte[] id, IDocument document)
 Check Document Id for insert or replace operation. More...
 

Private Attributes

MapRDBClient _client
 
string _storePath
 

Member Function Documentation

◆ CheckAndDelete() [1/2]

bool MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndDelete ( string  id,
IQueryCondition  condition 
)

Atomically evaluates the condition on given document and if the condition holds true for the document then it is atomically deleted.

◆ CheckAndDelete() [2/2]

bool MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndDelete ( byte []  id,
IQueryCondition  condition 
)

Atomically evaluates the condition on given document and if the condition holds true for the document then it is atomically deleted.

◆ CheckAndDeleteAsync() [1/2]

async Task<bool> MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndDeleteAsync ( string  id,
IQueryCondition  condition 
)

Atomically evaluates the condition on given document and if the condition holds true for the document then it is atomically deleted.

◆ CheckAndDeleteAsync() [2/2]

async Task<bool> MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndDeleteAsync ( byte []  id,
IQueryCondition  condition 
)

Atomically evaluates the condition on given document and if the condition holds true for the document then it is atomically deleted.

◆ CheckAndReplace() [1/2]

bool MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndReplace ( string  id,
IQueryCondition  condition,
IDocument  document 
)

Atomically evaluates the condition on the given document and if the condition holds true for the document then it atomically replaces the document with the given document.

◆ CheckAndReplace() [2/2]

bool MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndReplace ( byte []  id,
IQueryCondition  condition,
IDocument  document 
)

Atomically evaluates the condition on the given document and if the condition holds true for the document then it atomically replaces the document with the given document.

◆ CheckAndReplaceAsync() [1/2]

async Task<bool> MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndReplaceAsync ( string  id,
IQueryCondition  condition,
IDocument  document 
)

Atomically evaluates the condition on the given document and if the condition holds true for the document then it atomically replaces the document with the given document.

◆ CheckAndReplaceAsync() [2/2]

async Task<bool> MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndReplaceAsync ( byte []  id,
IQueryCondition  condition,
IDocument  document 
)

Atomically evaluates the condition on the given document and if the condition holds true for the document then it atomically replaces the document with the given document.

◆ CheckAndUpdate() [1/2]

bool MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndUpdate ( string  id,
IQueryCondition  condition,
IDocumentMutation  mutation 
)

Atomically evaluates the condition on a given document and if the condition holds true for the document then a mutation is applied on the document.

◆ CheckAndUpdate() [2/2]

bool MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndUpdate ( byte []  id,
IQueryCondition  condition,
IDocumentMutation  mutation 
)

Atomically evaluates the condition on a given document and if the condition holds true for the document then a mutation is applied on the document.

◆ CheckAndUpdateAsync() [1/2]

async Task<bool> MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndUpdateAsync ( string  id,
IQueryCondition  condition,
IDocumentMutation  mutation 
)

Atomically evaluates the condition on a given document and if the condition holds true for the document then a mutation is applied on the document.

◆ CheckAndUpdateAsync() [2/2]

async Task<bool> MapRDB.Driver.Ojai.OjaiDocumentStore.CheckAndUpdateAsync ( byte []  id,
IQueryCondition  condition,
IDocumentMutation  mutation 
)

Atomically evaluates the condition on a given document and if the condition holds true for the document then a mutation is applied on the document.

◆ CheckDocumentIdForInsertOrReplace() [1/2]

bool MapRDB.Driver.Ojai.OjaiDocumentStore.CheckDocumentIdForInsertOrReplace ( string  id,
IDocument  document 
)
private

Check Document Id for insert or replace operation.

◆ CheckDocumentIdForInsertOrReplace() [2/2]

bool MapRDB.Driver.Ojai.OjaiDocumentStore.CheckDocumentIdForInsertOrReplace ( byte []  id,
IDocument  document 
)
private

Check Document Id for insert or replace operation.

◆ Delete() [1/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Delete ( string  id)

Deletes a document with the given "id". This operation is successful even when the document with the given "id" doesn't exist.

◆ Delete() [2/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Delete ( byte []  id)

Deletes a document with the given "id". This operation is successful even when the document with the given "id" doesn't exist.

◆ Delete() [3/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Delete ( IDocument  document)

Deletes a document.

◆ Delete() [4/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Delete ( IDocumentStream  stream)

Deletes a set of documents from the DocumentStore represented by the DocumentStream. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise the operation will fail.

◆ DeleteAsync() [1/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.DeleteAsync ( string  id)

Deletes a document with the given "id". This operation is successful even when the document with the given "id" doesn't exist.

◆ DeleteAsync() [2/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.DeleteAsync ( byte []  id)

Deletes a document with the given "id". This operation is successful even when the document with the given "id" doesn't exist.

◆ DeleteAsync() [3/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.DeleteAsync ( IDocument  document)

Deletes a document.

◆ DeleteAsync() [4/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.DeleteAsync ( IDocumentStream  stream)

Deletes a set of documents from the DocumentStore represented by the DocumentStream. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise the operation will fail.

◆ Find() [1/10]

IQueryResult MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( IQuery  query)

Executes the specified query on the DocumentStore and returns a QueryResult. The returned QueryResult must be closed after retrieving the documents.

◆ Find() [2/10]

IQueryResult MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( IQuery  query,
QueryOptions  options 
)

Executes the specified query on the DocumentStore and returns a QueryResult. The returned QueryResult must be closed after retrieving the documents. Request has limited timeout in miliseconds.

◆ Find() [3/10]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( )

Executes a query to return all Documents in the DocumentStore. The returned DocumentStream must be closed after retrieving the documents.

◆ Find() [4/10]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( QueryOptions  options)

Executes a query to return all Documents in the DocumentStore. The returned DocumentStream must be closed after retrieving the documents. Request has limited timeout in miliseconds.

◆ Find() [5/10]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( params string []  fieldPaths)

Executes a query to return all Documents in the DocumentStore. Each Document will contain only those field paths that are specified in the argument. If no fields are specified then it returns a full document.

◆ Find() [6/10]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( QueryOptions  options,
params string []  fieldPaths 
)

Executes a query to return all Documents in the DocumentStore. Each Document will contain only those field paths that are specified in the argument. If no fields are specified then it returns a full document.

◆ Find() [7/10]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( IQueryCondition  condition)

Returns a DocumentStream with all the documents in the DocumentStore that satisfies the QueryCondition.

◆ Find() [8/10]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( IQueryCondition  condition,
QueryOptions  options 
)

Returns a DocumentStream with all the documents in the DocumentStore that satisfies the QueryCondition. Request has limited timeout in miliseconds.

◆ Find() [9/10]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( IQueryCondition  condition,
params string []  fieldPaths 
)

Executes a query on the DocumentStore and return a DocumentStream of the Document matching the specified QueryCondition. Each Document will contain only those field paths that are specified in the argument. If no fields are specified then it returns a full document.

◆ Find() [10/10]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.Find ( IQueryCondition  condition,
QueryOptions  options,
params string []  fieldPaths 
)

Executes a query on the DocumentStore and return a DocumentStream of the Document matching the specified QueryCondition. Each Document will contain only those field paths that are specified in the argument. If no fields are specified then it returns a full document. Request has limited timeout in miliseconds.

◆ FindById() [1/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( string  id,
params string []  fieldPaths 
)

Returns the Document with the given "_id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields.

◆ FindById() [2/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( string  id,
long  timeout,
params string []  fieldPaths 
)

Returns the Document with the given "_id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. Request has limited timeout in miliseconds.

◆ FindById() [3/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( byte []  id,
params string []  fieldPaths 
)

Returns the Document with the given "_id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields.

◆ FindById() [4/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( byte []  id,
long  timeout,
params string []  fieldPaths 
)

Returns the Document with the given "_id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. Request has limited timeout in miliseconds.

◆ FindById() [5/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( string  id,
IQueryCondition  condition 
)

Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned.

◆ FindById() [6/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( string  id,
IQueryCondition  condition,
long  timeout 
)

Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. Request has limited timeout in miliseconds.

◆ FindById() [7/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( byte []  id,
IQueryCondition  condition 
)

Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned.

◆ FindById() [8/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( byte []  id,
IQueryCondition  condition,
long  timeout 
)

Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. Request has limited timeout in miliseconds.

◆ FindById() [9/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( string  id,
IQueryCondition  condition,
params string []  fieldPaths 
)

Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields.

◆ FindById() [10/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( string  id,
IQueryCondition  condition,
long  timeout,
params string []  fieldPaths 
)

Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. Request has limited timeout in miliseconds.

◆ FindById() [11/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( byte []  id,
IQueryCondition  condition,
params string []  fieldPaths 
)

Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields.

◆ FindById() [12/12]

IDocument MapRDB.Driver.Ojai.OjaiDocumentStore.FindById ( byte []  id,
IQueryCondition  condition,
long  timeout,
params string []  fieldPaths 
)

Returns the Document with the given "_id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. Request has limited timeout in miliseconds.

◆ FindByIdAsync() [1/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( string  id,
params string []  fieldPaths 
)

Returns the Document with the given "id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields.

◆ FindByIdAsync() [2/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( string  id,
long  timeout,
params string []  fieldPaths 
)

Returns the Document with the given "id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. Request has limited timeout in miliseconds.

◆ FindByIdAsync() [3/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( byte []  id,
params string []  fieldPaths 
)

Returns the Document with the given "id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields.

◆ FindByIdAsync() [4/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( byte []  id,
long  timeout,
params string []  fieldPaths 
)

Returns the Document with the given "id" or null if the document with that "id" doesn't exist in this DocumentStore. The returned Document will include only the specified fields. Request has limited timeout in miliseconds.

◆ FindByIdAsync() [5/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( string  id,
IQueryCondition  condition 
)

Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned.

◆ FindByIdAsync() [6/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( string  id,
IQueryCondition  condition,
long  timeout 
)

Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. Request has limited timeout in miliseconds.

◆ FindByIdAsync() [7/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( byte []  id,
IQueryCondition  condition 
)

Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned.

◆ FindByIdAsync() [8/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( byte []  id,
IQueryCondition  condition,
long  timeout 
)

Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. Request has limited timeout in miliseconds.

◆ FindByIdAsync() [9/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( string  id,
IQueryCondition  condition,
params string []  fieldPaths 
)

Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields.

◆ FindByIdAsync() [10/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( string  id,
IQueryCondition  condition,
long  timeout,
params string []  fieldPaths 
)

Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. Request has limited timeout in miliseconds.

◆ FindByIdAsync() [11/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( byte []  id,
IQueryCondition  condition,
params string []  fieldPaths 
)

Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields.

◆ FindByIdAsync() [12/12]

async Task<IDocument> MapRDB.Driver.Ojai.OjaiDocumentStore.FindByIdAsync ( byte []  id,
IQueryCondition  condition,
long  timeout,
params string []  fieldPaths 
)

Returns the Document with the given "id" if it matches the specified condition. If a Document with the specified "id" does not exist in this DocumentStore or does not satisfy the specified condition, null is returned. The returned Document will include only the specified fields. Request has limited timeout in miliseconds.

◆ FindQuery() [1/4]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.FindQuery ( IQuery  query)

Executes the specified query on the DocumentStore and returns a DocumentStream of the result. The returned DocumentStream must be closed after retrieving the documents.

◆ FindQuery() [2/4]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.FindQuery ( IQuery  query,
QueryOptions  options 
)

Executes the specified query on the DocumentStore and returns a DocumentStream of the result. The returned DocumentStream must be closed after retrieving the documents. Request has limited timeout in miliseconds.

◆ FindQuery() [3/4]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.FindQuery ( string  queryJson)

Executes the specified query on the DocumentStore and returns a DocumentStream of the result. The returned DocumentStream must be closed after retrieving the documents.

◆ FindQuery() [4/4]

IDocumentAsyncStream MapRDB.Driver.Ojai.OjaiDocumentStore.FindQuery ( string  queryJson,
QueryOptions  options 
)

Executes the specified query on the DocumentStore and returns a DocumentStream of the result. The returned DocumentStream must be closed after retrieving the documents.

◆ Increment()

void MapRDB.Driver.Ojai.OjaiDocumentStore.Increment ( string  id,
string  fieldPath 
)

Atomically applies an increment to a given field (in dot separated notation) of the given document id. If the field doesn't exist on the server then it will be created with the type of the incremental value. The increment operation can be applied on any of the numeric types, such as byte, short, int, long, float, double, or decimal, of a field. The operation will fail if the increment is applied to a field that is of a non-numeric type.

If an id doesn't exist, it gets created (similar to the insertOrReplace behavior). And it is created, with the value of 'inc' parameter. The same logic applies to intermittent paths in the path: they get created top to bottom.

If the type is different than the field in the operation, it fails.

The increment operation won't change the type of existing value stored in the given field for the document. The resultant value of the field will be truncated based on the original type of the field.

For example, if a field 'score' is of type int and contains 60 and an increment of double '5.675' is applied, then the resultant value of the field will be 65 (65.675 will be truncated to 65).

If the type to which the increment is applied is a byte, short, or int, then it needs to use long as the operation.

◆ IncrementAsync()

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.IncrementAsync ( string  id,
string  fieldPath 
)

Atomically applies an increment to a given field (in dot separated notation) of the given document id. If the field doesn't exist on the server then it will be created with the type of the incremental value. The increment operation can be applied on any of the numeric types, such as byte, short, int, long, float, double, or decimal, of a field. The operation will fail if the increment is applied to a field that is of a non-numeric type.

If an id doesn't exist, it gets created (similar to the insertOrReplace behavior). And it is created, with the value of 'inc' parameter. The same logic applies to intermittent paths in the path: they get created top to bottom.

If the type is different than the field in the operation, it fails.

The increment operation won't change the type of existing value stored in the given field for the document. The resultant value of the field will be truncated based on the original type of the field.

For example, if a field 'score' is of type int and contains 60 and an increment of double '5.675' is applied, then the resultant value of the field will be 65 (65.675 will be truncated to 65).

If the type to which the increment is applied is a byte, short, or int, then it needs to use long as the operation.

◆ Insert() [1/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Insert ( string  id,
IDocument  document 
)

Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist.

Note that an insertOrReplace() operation would be more efficient than an insert() call.

◆ Insert() [2/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Insert ( byte []  id,
IDocument  document 
)

Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist.

Note that an insertOrReplace() operation would be more efficient than an insert() call.

◆ Insert() [3/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Insert ( IDocument  document)

Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist.

Note that an insertOrReplace() operation would be more efficient than an insert() call.

◆ Insert() [4/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Insert ( IDocumentStream  stream)

Inserts a set of documents represented by the DocumentStream into the DocumentStore. This is a synchronous API that won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise, the operation will fail or it will be of the Document type.

If a document with the given key exists on the server then it throws a document exists exception, similar to the non-DocumentStream based insert() API.

If there is an error in reading from the stream or in writing to the DocumentStore then a MultiOpException will be thrown that contains a list of documents that failed to write to the DocumentStore. Reading from a stream stops on the first read error. If only write errors occur, the iterator will stop and the current list of failed document is returned in a multi op exception. The untouched documents will remain in the DocumentStream.

◆ InsertAsync() [1/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.InsertAsync ( string  id,
IDocument  document 
)

Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist.

Note that an insertOrReplace() operation would be more efficient than an insert() call.

◆ InsertAsync() [2/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.InsertAsync ( byte []  id,
IDocument  document 
)

Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist.

Note that an insertOrReplace() operation would be more efficient than an insert() call.

◆ InsertAsync() [3/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.InsertAsync ( IDocument  document)

Inserts a document with the given "id". This operation is successful only when the document with the given "id" doesn't exist.

Note that an insertOrReplace() operation would be more efficient than an insert() call.

◆ InsertAsync() [4/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.InsertAsync ( IDocumentStream  stream)

Inserts a set of documents represented by the DocumentStream into the DocumentStore. This is a synchronous API that won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise, the operation will fail or it will be of the Document type.

If a document with the given key exists on the server then it throws a document exists exception, similar to the non-DocumentStream based insert() API.

If there is an error in reading from the stream or in writing to the DocumentStore then a MultiOpException will be thrown that contains a list of documents that failed to write to the DocumentStore. Reading from a stream stops on the first read error. If only write errors occur, the iterator will stop and the current list of failed document is returned in a multi op exception. The untouched documents will remain in the DocumentStream.

◆ InsertOrReplace() [1/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.InsertOrReplace ( IDocument  document)

Inserts or replaces a new document in this DocumentStore. The specified Document must contain an "_id" field or the operation will fail. If the document with the given id exists in the DocumentStore then that document will be replaced by the specified document.

◆ InsertOrReplace() [2/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.InsertOrReplace ( string  id,
IDocument  document 
)

Inserts or replaces a new document in this DocumentStore with the given "id". The specified document should either not contain an "id" field or its value should be same as the specified "id" or the operation will fail. If the document with the given id exists in the DocumentStore then that document will be replaced by the specified document.

◆ InsertOrReplace() [3/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.InsertOrReplace ( byte []  id,
IDocument  document 
)

Inserts or replaces a new document in this DocumentStore with the given "id". The specified document should either not contain an "_id" field or its value should be same as the specified "id" or the operation will fail. If the document with the given id exists in the DocumentStore then that document will be replaced by the specified document.

◆ InsertOrReplace() [4/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.InsertOrReplace ( IDocumentStream  stream)

Inserts all documents from the specified DocumentStream into this DocumentStore. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error has occurred while storing the documents. Each document read from the DocumentStream must have a field "_id"; otherwise, the operation will fail.

◆ InsertOrReplaceAsync() [1/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.InsertOrReplaceAsync ( IDocument  document)

Inserts or replaces a new document in this DocumentStore. The specified Document must contain an "id" field or the operation will fail. If the document with the given id exists in the DocumentStore then that document will be replaced by the specified document.

◆ InsertOrReplaceAsync() [2/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.InsertOrReplaceAsync ( string  id,
IDocument  document 
)

Inserts or replaces a new document in this DocumentStore with the given "id" asynchronously. The specified document should either not contain an "id" field or its value should be same as the specified "id" or the operation will fail. If the document with the given "id" exists in the DocumentStore then that document will be replaced by the specified document.

◆ InsertOrReplaceAsync() [3/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.InsertOrReplaceAsync ( byte []  id,
IDocument  document 
)

Inserts or replaces a new document in this DocumentStore with the given "id" asynchronously. The specified document should either not contain an "id" field or its value should be same as the specified "id" or the operation will fail. If the document with the given "id" exists in the DocumentStore then that document will be replaced by the specified document.

◆ InsertOrReplaceAsync() [4/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.InsertOrReplaceAsync ( IDocumentStream  stream)

Inserts all documents from the specified DocumentStream into this DocumentStore asynchronously. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error has occurred while storing the documents. Each document read from the DocumentStream must have a field "id"; otherwise, the operation will fail.

◆ Replace() [1/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Replace ( string  id,
IDocument  document 
)

Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail.

If the document with the given key does not exist on the server then it will throw DocumentNotFoundException.

Note that an insertOrReplace() operation would be more efficient than an replace() call.

◆ Replace() [2/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Replace ( byte []  id,
IDocument  document 
)

Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail.

If the document with the given key does not exist on the server then it will throw DocumentNotFoundException.

Note that an insertOrReplace() operation would be more efficient than an replace() call.

◆ Replace() [3/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Replace ( IDocument  document)

Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail.

If the document with the given key does not exist on the server then it will throw DocumentNotFoundException.

Note that an insertOrReplace() operation would be more efficient than an replace() call.

◆ Replace() [4/4]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Replace ( IDocumentStream  stream)

Replaces a set of documents represented by the DocumentStream into the DocumentStore. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise, the operation will fail or it will be of Document type.

If the document with the given key does not exist on the server then it throws, a document not exists exception, similar to the non-DocumentStream based replace() API.

If there is an error in reading from the stream or in writing to the DocumentStore then a MultiOpException will be thrown that contains a list of documents that failed to write to the DocumentStore. Reading from a stream stops on the first read error. If only write errors occur, the iterator will stop and the current list of failed document is returned in a multi op exception. The untouched documents will remain in the DocumentStream.

◆ ReplaceAsync() [1/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.ReplaceAsync ( string  id,
IDocument  document 
)

Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail.

If the document with the given key does not exist on the server then it will throw DocumentNotFoundException.

Note that an insertOrReplace() operation would be more efficient than an replace() call.

◆ ReplaceAsync() [2/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.ReplaceAsync ( byte []  id,
IDocument  document 
)

Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail.

If the document with the given key does not exist on the server then it will throw DocumentNotFoundException.

Note that an insertOrReplace() operation would be more efficient than an replace() call.

◆ ReplaceAsync() [3/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.ReplaceAsync ( IDocument  document)

Replaces a document in the DocumentStore. The document id is either explicitly specified as parameter "id" or it is implicitly specified as the field "id" in the passed document. If the document id is explicitly passed then the document should not contain "id" field or its value should be the same as the explicitly specified id; otherwise, the operation will fail.

If the document with the given key does not exist on the server then it will throw DocumentNotFoundException.

Note that an insertOrReplace() operation would be more efficient than an replace() call.

◆ ReplaceAsync() [4/4]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.ReplaceAsync ( IDocumentStream  stream)

Replaces a set of documents represented by the DocumentStream into the DocumentStore. This is a synchronous API and it won't return until all the documents in the DocumentStream are written to the DocumentStore or some error occurs while writing the documents. Each document read from the DocumentStream must have a field "id" of type BINARY or UTF8-string; otherwise, the operation will fail or it will be of Document type.

If the document with the given key does not exist on the server then it throws, a document not exists exception, similar to the non-DocumentStream based replace() API.

If there is an error in reading from the stream or in writing to the DocumentStore then a MultiOpException will be thrown that contains a list of documents that failed to write to the DocumentStore. Reading from a stream stops on the first read error. If only write errors occur, the iterator will stop and the current list of failed document is returned in a multi op exception. The untouched documents will remain in the DocumentStream.

◆ Update() [1/2]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Update ( string  id,
IDocumentMutation  mutation 
)

Applies a mutation on the document identified by the document id. All updates specified by the mutation object should be applied atomically, and consistently meaning either all of the updates in mutation are applied or none of them is applied and a partial update should not be visible to an observer.

◆ Update() [2/2]

void MapRDB.Driver.Ojai.OjaiDocumentStore.Update ( byte []  id,
IDocumentMutation  mutation 
)

Applies a mutation on the document identified by the document id. All updates specified by the mutation object should be applied atomically, and consistently meaning either all of the updates in mutation are applied or none of them is applied and a partial update should not be visible to an observer.

◆ UpdateAsync() [1/2]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.UpdateAsync ( string  id,
IDocumentMutation  mutation 
)

Applies a mutation on the document identified by the document id. All updates specified by the mutation object should be applied atomically, and consistently meaning either all of the updates in mutation are applied or none of them is applied and a partial update should not be visible to an observer.

◆ UpdateAsync() [2/2]

async Task MapRDB.Driver.Ojai.OjaiDocumentStore.UpdateAsync ( byte []  id,
IDocumentMutation  mutation 
)

Applies a mutation on the document identified by the document id. All updates specified by the mutation object should be applied atomically, and consistently meaning either all of the updates in mutation are applied or none of them is applied and a partial update should not be visible to an observer.