[BindServiceMethod(typeof(Firestore), "BindService")]
public abstract class Firestore.FirestoreBaseReference documentation and code samples for the Firestore v1 API class Firestore.FirestoreBase.
Base class for server-side implementations of Firestore
Namespace
Google.Cloud.Firestore.V1Assembly
Google.Cloud.Firestore.V1.dll
Methods
BatchGetDocuments(BatchGetDocumentsRequest, IServerStreamWriter<BatchGetDocumentsResponse>, ServerCallContext)
public virtual Task BatchGetDocuments(BatchGetDocumentsRequest request, IServerStreamWriter<BatchGetDocumentsResponse> responseStream, ServerCallContext context)Gets multiple documents.
Documents returned by this method are not guaranteed to be returned in the same order that they were requested.
| Parameters | |
|---|---|
| Name | Description |
request |
BatchGetDocumentsRequestThe request received from the client. |
responseStream |
IServerStreamWriterBatchGetDocumentsResponseUsed for sending responses back to the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
Task |
A task indicating completion of the handler. |
BatchWrite(BatchWriteRequest, ServerCallContext)
public virtual Task<BatchWriteResponse> BatchWrite(BatchWriteRequest request, ServerCallContext context)Applies a batch of write operations.
The BatchWrite method does not apply the write operations atomically and can apply them out of order. Method does not allow more than one write per document. Each write succeeds or fails independently. See the [BatchWriteResponse][google.firestore.v1.BatchWriteResponse] for the success status of each write.
If you require an atomically applied set of writes, use [Commit][google.firestore.v1.Firestore.Commit] instead.
| Parameters | |
|---|---|
| Name | Description |
request |
BatchWriteRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskBatchWriteResponse |
The response to send back to the client (wrapped by a task). |
BeginTransaction(BeginTransactionRequest, ServerCallContext)
public virtual Task<BeginTransactionResponse> BeginTransaction(BeginTransactionRequest request, ServerCallContext context)Starts a new transaction.
| Parameters | |
|---|---|
| Name | Description |
request |
BeginTransactionRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskBeginTransactionResponse |
The response to send back to the client (wrapped by a task). |
Commit(CommitRequest, ServerCallContext)
public virtual Task<CommitResponse> Commit(CommitRequest request, ServerCallContext context)Commits a transaction, while optionally updating documents.
| Parameters | |
|---|---|
| Name | Description |
request |
CommitRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskCommitResponse |
The response to send back to the client (wrapped by a task). |
CreateDocument(CreateDocumentRequest, ServerCallContext)
public virtual Task<Document> CreateDocument(CreateDocumentRequest request, ServerCallContext context)Creates a new document.
| Parameters | |
|---|---|
| Name | Description |
request |
CreateDocumentRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskDocument |
The response to send back to the client (wrapped by a task). |
DeleteDocument(DeleteDocumentRequest, ServerCallContext)
public virtual Task<Empty> DeleteDocument(DeleteDocumentRequest request, ServerCallContext context)Deletes a document.
| Parameters | |
|---|---|
| Name | Description |
request |
DeleteDocumentRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskEmpty |
The response to send back to the client (wrapped by a task). |
GetDocument(GetDocumentRequest, ServerCallContext)
public virtual Task<Document> GetDocument(GetDocumentRequest request, ServerCallContext context)Gets a single document.
| Parameters | |
|---|---|
| Name | Description |
request |
GetDocumentRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskDocument |
The response to send back to the client (wrapped by a task). |
ListCollectionIds(ListCollectionIdsRequest, ServerCallContext)
public virtual Task<ListCollectionIdsResponse> ListCollectionIds(ListCollectionIdsRequest request, ServerCallContext context)Lists all the collection IDs underneath a document.
| Parameters | |
|---|---|
| Name | Description |
request |
ListCollectionIdsRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskListCollectionIdsResponse |
The response to send back to the client (wrapped by a task). |
ListDocuments(ListDocumentsRequest, ServerCallContext)
public virtual Task<ListDocumentsResponse> ListDocuments(ListDocumentsRequest request, ServerCallContext context)Lists documents.
| Parameters | |
|---|---|
| Name | Description |
request |
ListDocumentsRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskListDocumentsResponse |
The response to send back to the client (wrapped by a task). |
Listen(IAsyncStreamReader<ListenRequest>, IServerStreamWriter<ListenResponse>, ServerCallContext)
public virtual Task Listen(IAsyncStreamReader<ListenRequest> requestStream, IServerStreamWriter<ListenResponse> responseStream, ServerCallContext context)Listens to changes. This method is only available via gRPC or WebChannel (not REST).
| Parameters | |
|---|---|
| Name | Description |
requestStream |
IAsyncStreamReaderListenRequestUsed for reading requests from the client. |
responseStream |
IServerStreamWriterListenResponseUsed for sending responses back to the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
Task |
A task indicating completion of the handler. |
PartitionQuery(PartitionQueryRequest, ServerCallContext)
public virtual Task<PartitionQueryResponse> PartitionQuery(PartitionQueryRequest request, ServerCallContext context)Partitions a query by returning partition cursors that can be used to run the query in parallel. The returned partition cursors are split points that can be used by RunQuery as starting/end points for the query results.
| Parameters | |
|---|---|
| Name | Description |
request |
PartitionQueryRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskPartitionQueryResponse |
The response to send back to the client (wrapped by a task). |
Rollback(RollbackRequest, ServerCallContext)
public virtual Task<Empty> Rollback(RollbackRequest request, ServerCallContext context)Rolls back a transaction.
| Parameters | |
|---|---|
| Name | Description |
request |
RollbackRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskEmpty |
The response to send back to the client (wrapped by a task). |
RunAggregationQuery(RunAggregationQueryRequest, IServerStreamWriter<RunAggregationQueryResponse>, ServerCallContext)
public virtual Task RunAggregationQuery(RunAggregationQueryRequest request, IServerStreamWriter<RunAggregationQueryResponse> responseStream, ServerCallContext context)Runs an aggregation query.
Rather than producing [Document][google.firestore.v1.Document] results like [Firestore.RunQuery][google.firestore.v1.Firestore.RunQuery], this API allows running an aggregation to produce a series of [AggregationResult][google.firestore.v1.AggregationResult] server-side.
High-Level Example:
-- Return the number of documents in table given a filter.
SELECT COUNT(*) FROM ( SELECT * FROM k where a = true );
| Parameters | |
|---|---|
| Name | Description |
request |
RunAggregationQueryRequestThe request received from the client. |
responseStream |
IServerStreamWriterRunAggregationQueryResponseUsed for sending responses back to the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
Task |
A task indicating completion of the handler. |
RunQuery(RunQueryRequest, IServerStreamWriter<RunQueryResponse>, ServerCallContext)
public virtual Task RunQuery(RunQueryRequest request, IServerStreamWriter<RunQueryResponse> responseStream, ServerCallContext context)Runs a query.
| Parameters | |
|---|---|
| Name | Description |
request |
RunQueryRequestThe request received from the client. |
responseStream |
IServerStreamWriterRunQueryResponseUsed for sending responses back to the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
Task |
A task indicating completion of the handler. |
UpdateDocument(UpdateDocumentRequest, ServerCallContext)
public virtual Task<Document> UpdateDocument(UpdateDocumentRequest request, ServerCallContext context)Updates or inserts a document.
| Parameters | |
|---|---|
| Name | Description |
request |
UpdateDocumentRequestThe request received from the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
TaskDocument |
The response to send back to the client (wrapped by a task). |
Write(IAsyncStreamReader<WriteRequest>, IServerStreamWriter<WriteResponse>, ServerCallContext)
public virtual Task Write(IAsyncStreamReader<WriteRequest> requestStream, IServerStreamWriter<WriteResponse> responseStream, ServerCallContext context)Streams batches of document updates and deletes, in order. This method is only available via gRPC or WebChannel (not REST).
| Parameters | |
|---|---|
| Name | Description |
requestStream |
IAsyncStreamReaderWriteRequestUsed for reading requests from the client. |
responseStream |
IServerStreamWriterWriteResponseUsed for sending responses back to the client. |
context |
ServerCallContextThe context of the server-side call handler being invoked. |
| Returns | |
|---|---|
| Type | Description |
Task |
A task indicating completion of the handler. |