@Generated(value="by gapic-generator-java") public class FirestoreClient extends Object implements com.google.api.gax.core.BackgroundResource
Cloud Firestore is a fast, fully managed, serverless, cloud-native NoSQL document database that simplifies storing, syncing, and querying data for your mobile, web, and IoT apps at global scale. Its client libraries provide live synchronization and offline support, while its security features and integrations with Firebase and Google Cloud Platform accelerate building truly serverless apps.
This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
GetDocumentRequest request =
GetDocumentRequest.newBuilder()
.setName("name3373707")
.setMask(DocumentMask.newBuilder().build())
.build();
Document response = firestoreClient.getDocument(request);
}
Note: close() needs to be called on the FirestoreClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().
The surface of this class includes several types of Java methods for each of the API's methods:
See the individual methods for example code.
Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.
This class can be customized by passing in a custom instance of FirestoreSettings to create(). For example:
To customize credentials:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
FirestoreSettings firestoreSettings =
FirestoreSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
.build();
FirestoreClient firestoreClient = FirestoreClient.create(firestoreSettings);
To customize the endpoint:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
FirestoreSettings firestoreSettings =
FirestoreSettings.newBuilder().setEndpoint(myEndpoint).build();
FirestoreClient firestoreClient = FirestoreClient.create(firestoreSettings);
To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
FirestoreSettings firestoreSettings = FirestoreSettings.newHttpJsonBuilder().build();
FirestoreClient firestoreClient = FirestoreClient.create(firestoreSettings);
Please refer to the GitHub repository's samples for more quickstart code snippets.
Modifier and Type | Class and Description |
---|---|
static class |
FirestoreClient.ListCollectionIdsFixedSizeCollection |
static class |
FirestoreClient.ListCollectionIdsPage |
static class |
FirestoreClient.ListCollectionIdsPagedResponse |
static class |
FirestoreClient.ListDocumentsFixedSizeCollection |
static class |
FirestoreClient.ListDocumentsPage |
static class |
FirestoreClient.ListDocumentsPagedResponse |
static class |
FirestoreClient.PartitionQueryFixedSizeCollection |
static class |
FirestoreClient.PartitionQueryPage |
static class |
FirestoreClient.PartitionQueryPagedResponse |
Modifier | Constructor and Description |
---|---|
protected |
FirestoreClient(FirestoreSettings settings)
Constructs an instance of FirestoreClient, using the given settings.
|
protected |
FirestoreClient(FirestoreStub stub) |
Modifier and Type | Method and Description |
---|---|
boolean |
awaitTermination(long duration,
TimeUnit unit) |
com.google.api.gax.rpc.ServerStreamingCallable<BatchGetDocumentsRequest,BatchGetDocumentsResponse> |
batchGetDocumentsCallable()
Gets multiple documents.
|
BatchWriteResponse |
batchWrite(BatchWriteRequest request)
Applies a batch of write operations.
|
com.google.api.gax.rpc.UnaryCallable<BatchWriteRequest,BatchWriteResponse> |
batchWriteCallable()
Applies a batch of write operations.
|
BeginTransactionResponse |
beginTransaction(BeginTransactionRequest request)
Starts a new transaction.
|
BeginTransactionResponse |
beginTransaction(String database)
Starts a new transaction.
|
com.google.api.gax.rpc.UnaryCallable<BeginTransactionRequest,BeginTransactionResponse> |
beginTransactionCallable()
Starts a new transaction.
|
void |
close() |
CommitResponse |
commit(CommitRequest request)
Commits a transaction, while optionally updating documents.
|
CommitResponse |
commit(String database,
List<Write> writes)
Commits a transaction, while optionally updating documents.
|
com.google.api.gax.rpc.UnaryCallable<CommitRequest,CommitResponse> |
commitCallable()
Commits a transaction, while optionally updating documents.
|
static FirestoreClient |
create()
Constructs an instance of FirestoreClient with default settings.
|
static FirestoreClient |
create(FirestoreSettings settings)
Constructs an instance of FirestoreClient, using the given settings.
|
static FirestoreClient |
create(FirestoreStub stub)
Constructs an instance of FirestoreClient, using the given stub for making calls.
|
Document |
createDocument(CreateDocumentRequest request)
Creates a new document.
|
com.google.api.gax.rpc.UnaryCallable<CreateDocumentRequest,Document> |
createDocumentCallable()
Creates a new document.
|
void |
deleteDocument(DeleteDocumentRequest request)
Deletes a document.
|
void |
deleteDocument(String name)
Deletes a document.
|
com.google.api.gax.rpc.UnaryCallable<DeleteDocumentRequest,com.google.protobuf.Empty> |
deleteDocumentCallable()
Deletes a document.
|
Document |
getDocument(GetDocumentRequest request)
Gets a single document.
|
com.google.api.gax.rpc.UnaryCallable<GetDocumentRequest,Document> |
getDocumentCallable()
Gets a single document.
|
FirestoreSettings |
getSettings() |
FirestoreStub |
getStub() |
boolean |
isShutdown() |
boolean |
isTerminated() |
FirestoreClient.ListCollectionIdsPagedResponse |
listCollectionIds(ListCollectionIdsRequest request)
Lists all the collection IDs underneath a document.
|
FirestoreClient.ListCollectionIdsPagedResponse |
listCollectionIds(String parent)
Lists all the collection IDs underneath a document.
|
com.google.api.gax.rpc.UnaryCallable<ListCollectionIdsRequest,ListCollectionIdsResponse> |
listCollectionIdsCallable()
Lists all the collection IDs underneath a document.
|
com.google.api.gax.rpc.UnaryCallable<ListCollectionIdsRequest,FirestoreClient.ListCollectionIdsPagedResponse> |
listCollectionIdsPagedCallable()
Lists all the collection IDs underneath a document.
|
FirestoreClient.ListDocumentsPagedResponse |
listDocuments(ListDocumentsRequest request)
Lists documents.
|
com.google.api.gax.rpc.UnaryCallable<ListDocumentsRequest,ListDocumentsResponse> |
listDocumentsCallable()
Lists documents.
|
com.google.api.gax.rpc.UnaryCallable<ListDocumentsRequest,FirestoreClient.ListDocumentsPagedResponse> |
listDocumentsPagedCallable()
Lists documents.
|
com.google.api.gax.rpc.BidiStreamingCallable<ListenRequest,ListenResponse> |
listenCallable()
Listens to changes.
|
FirestoreClient.PartitionQueryPagedResponse |
partitionQuery(PartitionQueryRequest request)
Partitions a query by returning partition cursors that can be used to run the query in
parallel.
|
com.google.api.gax.rpc.UnaryCallable<PartitionQueryRequest,PartitionQueryResponse> |
partitionQueryCallable()
Partitions a query by returning partition cursors that can be used to run the query in
parallel.
|
com.google.api.gax.rpc.UnaryCallable<PartitionQueryRequest,FirestoreClient.PartitionQueryPagedResponse> |
partitionQueryPagedCallable()
Partitions a query by returning partition cursors that can be used to run the query in
parallel.
|
void |
rollback(RollbackRequest request)
Rolls back a transaction.
|
void |
rollback(String database,
com.google.protobuf.ByteString transaction)
Rolls back a transaction.
|
com.google.api.gax.rpc.UnaryCallable<RollbackRequest,com.google.protobuf.Empty> |
rollbackCallable()
Rolls back a transaction.
|
com.google.api.gax.rpc.ServerStreamingCallable<RunAggregationQueryRequest,RunAggregationQueryResponse> |
runAggregationQueryCallable()
Runs an aggregation query.
|
com.google.api.gax.rpc.ServerStreamingCallable<RunQueryRequest,RunQueryResponse> |
runQueryCallable()
Runs a query.
|
void |
shutdown() |
void |
shutdownNow() |
Document |
updateDocument(Document document,
DocumentMask updateMask)
Updates or inserts a document.
|
Document |
updateDocument(UpdateDocumentRequest request)
Updates or inserts a document.
|
com.google.api.gax.rpc.UnaryCallable<UpdateDocumentRequest,Document> |
updateDocumentCallable()
Updates or inserts a document.
|
com.google.api.gax.rpc.BidiStreamingCallable<WriteRequest,WriteResponse> |
writeCallable()
Streams batches of document updates and deletes, in order.
|
protected FirestoreClient(FirestoreSettings settings) throws IOException
IOException
protected FirestoreClient(FirestoreStub stub)
public static final FirestoreClient create() throws IOException
IOException
public static final FirestoreClient create(FirestoreSettings settings) throws IOException
IOException
public static final FirestoreClient create(FirestoreStub stub)
public final FirestoreSettings getSettings()
public FirestoreStub getStub()
public final Document getDocument(GetDocumentRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
GetDocumentRequest request =
GetDocumentRequest.newBuilder()
.setName("name3373707")
.setMask(DocumentMask.newBuilder().build())
.build();
Document response = firestoreClient.getDocument(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<GetDocumentRequest,Document> getDocumentCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
GetDocumentRequest request =
GetDocumentRequest.newBuilder()
.setName("name3373707")
.setMask(DocumentMask.newBuilder().build())
.build();
ApiFuture<Document> future = firestoreClient.getDocumentCallable().futureCall(request);
// Do something.
Document response = future.get();
}
public final FirestoreClient.ListDocumentsPagedResponse listDocuments(ListDocumentsRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
ListDocumentsRequest request =
ListDocumentsRequest.newBuilder()
.setParent("parent-995424086")
.setCollectionId("collectionId1636075609")
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.setOrderBy("orderBy-1207110587")
.setMask(DocumentMask.newBuilder().build())
.setShowMissing(true)
.build();
for (Document element : firestoreClient.listDocuments(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<ListDocumentsRequest,FirestoreClient.ListDocumentsPagedResponse> listDocumentsPagedCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
ListDocumentsRequest request =
ListDocumentsRequest.newBuilder()
.setParent("parent-995424086")
.setCollectionId("collectionId1636075609")
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.setOrderBy("orderBy-1207110587")
.setMask(DocumentMask.newBuilder().build())
.setShowMissing(true)
.build();
ApiFuture<Document> future = firestoreClient.listDocumentsPagedCallable().futureCall(request);
// Do something.
for (Document element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final com.google.api.gax.rpc.UnaryCallable<ListDocumentsRequest,ListDocumentsResponse> listDocumentsCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
ListDocumentsRequest request =
ListDocumentsRequest.newBuilder()
.setParent("parent-995424086")
.setCollectionId("collectionId1636075609")
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.setOrderBy("orderBy-1207110587")
.setMask(DocumentMask.newBuilder().build())
.setShowMissing(true)
.build();
while (true) {
ListDocumentsResponse response = firestoreClient.listDocumentsCallable().call(request);
for (Document element : response.getDocumentsList()) {
// doThingsWith(element);
}
String nextPageToken = response.getNextPageToken();
if (!Strings.isNullOrEmpty(nextPageToken)) {
request = request.toBuilder().setPageToken(nextPageToken).build();
} else {
break;
}
}
}
public final Document updateDocument(Document document, DocumentMask updateMask)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
Document document = Document.newBuilder().build();
DocumentMask updateMask = DocumentMask.newBuilder().build();
Document response = firestoreClient.updateDocument(document, updateMask);
}
document
- Required. The updated document. Creates the document if it does not already
exist.updateMask
- The fields to update. None of the field paths in the mask may contain a
reserved name.
If the document exists on the server and has fields not referenced in the mask, they are left unchanged. Fields referenced in the mask, but not present in the input document, are deleted from the document on the server.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Document updateDocument(UpdateDocumentRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
UpdateDocumentRequest request =
UpdateDocumentRequest.newBuilder()
.setDocument(Document.newBuilder().build())
.setUpdateMask(DocumentMask.newBuilder().build())
.setMask(DocumentMask.newBuilder().build())
.setCurrentDocument(Precondition.newBuilder().build())
.build();
Document response = firestoreClient.updateDocument(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<UpdateDocumentRequest,Document> updateDocumentCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
UpdateDocumentRequest request =
UpdateDocumentRequest.newBuilder()
.setDocument(Document.newBuilder().build())
.setUpdateMask(DocumentMask.newBuilder().build())
.setMask(DocumentMask.newBuilder().build())
.setCurrentDocument(Precondition.newBuilder().build())
.build();
ApiFuture<Document> future = firestoreClient.updateDocumentCallable().futureCall(request);
// Do something.
Document response = future.get();
}
public final void deleteDocument(String name)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
String name = "name3373707";
firestoreClient.deleteDocument(name);
}
name
- Required. The resource name of the Document to delete. In the format:
`projects/{project_id}/databases/{database_id}/documents/{document_path}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void deleteDocument(DeleteDocumentRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
DeleteDocumentRequest request =
DeleteDocumentRequest.newBuilder()
.setName("name3373707")
.setCurrentDocument(Precondition.newBuilder().build())
.build();
firestoreClient.deleteDocument(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<DeleteDocumentRequest,com.google.protobuf.Empty> deleteDocumentCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
DeleteDocumentRequest request =
DeleteDocumentRequest.newBuilder()
.setName("name3373707")
.setCurrentDocument(Precondition.newBuilder().build())
.build();
ApiFuture<Empty> future = firestoreClient.deleteDocumentCallable().futureCall(request);
// Do something.
future.get();
}
public final com.google.api.gax.rpc.ServerStreamingCallable<BatchGetDocumentsRequest,BatchGetDocumentsResponse> batchGetDocumentsCallable()
Documents returned by this method are not guaranteed to be returned in the same order that they were requested.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
BatchGetDocumentsRequest request =
BatchGetDocumentsRequest.newBuilder()
.setDatabase("database1789464955")
.addAllDocuments(new ArrayList<String>())
.setMask(DocumentMask.newBuilder().build())
.build();
ServerStream<BatchGetDocumentsResponse> stream =
firestoreClient.batchGetDocumentsCallable().call(request);
for (BatchGetDocumentsResponse response : stream) {
// Do something when a response is received.
}
}
public final BeginTransactionResponse beginTransaction(String database)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
String database = "database1789464955";
BeginTransactionResponse response = firestoreClient.beginTransaction(database);
}
database
- Required. The database name. In the format:
`projects/{project_id}/databases/{database_id}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final BeginTransactionResponse beginTransaction(BeginTransactionRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
BeginTransactionRequest request =
BeginTransactionRequest.newBuilder()
.setDatabase("database1789464955")
.setOptions(TransactionOptions.newBuilder().build())
.build();
BeginTransactionResponse response = firestoreClient.beginTransaction(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<BeginTransactionRequest,BeginTransactionResponse> beginTransactionCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
BeginTransactionRequest request =
BeginTransactionRequest.newBuilder()
.setDatabase("database1789464955")
.setOptions(TransactionOptions.newBuilder().build())
.build();
ApiFuture<BeginTransactionResponse> future =
firestoreClient.beginTransactionCallable().futureCall(request);
// Do something.
BeginTransactionResponse response = future.get();
}
public final CommitResponse commit(String database, List<Write> writes)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
String database = "database1789464955";
List<Write> writes = new ArrayList<>();
CommitResponse response = firestoreClient.commit(database, writes);
}
database
- Required. The database name. In the format:
`projects/{project_id}/databases/{database_id}`.writes
- The writes to apply.
Always executed atomically and in order.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final CommitResponse commit(CommitRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
CommitRequest request =
CommitRequest.newBuilder()
.setDatabase("database1789464955")
.addAllWrites(new ArrayList<Write>())
.setTransaction(ByteString.EMPTY)
.build();
CommitResponse response = firestoreClient.commit(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<CommitRequest,CommitResponse> commitCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
CommitRequest request =
CommitRequest.newBuilder()
.setDatabase("database1789464955")
.addAllWrites(new ArrayList<Write>())
.setTransaction(ByteString.EMPTY)
.build();
ApiFuture<CommitResponse> future = firestoreClient.commitCallable().futureCall(request);
// Do something.
CommitResponse response = future.get();
}
public final void rollback(String database, com.google.protobuf.ByteString transaction)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
String database = "database1789464955";
ByteString transaction = ByteString.EMPTY;
firestoreClient.rollback(database, transaction);
}
database
- Required. The database name. In the format:
`projects/{project_id}/databases/{database_id}`.transaction
- Required. The transaction to roll back.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void rollback(RollbackRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
RollbackRequest request =
RollbackRequest.newBuilder()
.setDatabase("database1789464955")
.setTransaction(ByteString.EMPTY)
.build();
firestoreClient.rollback(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<RollbackRequest,com.google.protobuf.Empty> rollbackCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
RollbackRequest request =
RollbackRequest.newBuilder()
.setDatabase("database1789464955")
.setTransaction(ByteString.EMPTY)
.build();
ApiFuture<Empty> future = firestoreClient.rollbackCallable().futureCall(request);
// Do something.
future.get();
}
public final com.google.api.gax.rpc.ServerStreamingCallable<RunQueryRequest,RunQueryResponse> runQueryCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
RunQueryRequest request = RunQueryRequest.newBuilder().setParent("parent-995424086").build();
ServerStream<RunQueryResponse> stream = firestoreClient.runQueryCallable().call(request);
for (RunQueryResponse response : stream) {
// Do something when a response is received.
}
}
public final com.google.api.gax.rpc.ServerStreamingCallable<RunAggregationQueryRequest,RunAggregationQueryResponse> runAggregationQueryCallable()
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 ); ```
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
RunAggregationQueryRequest request =
RunAggregationQueryRequest.newBuilder().setParent("parent-995424086").build();
ServerStream<RunAggregationQueryResponse> stream =
firestoreClient.runAggregationQueryCallable().call(request);
for (RunAggregationQueryResponse response : stream) {
// Do something when a response is received.
}
}
public final FirestoreClient.PartitionQueryPagedResponse partitionQuery(PartitionQueryRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
PartitionQueryRequest request =
PartitionQueryRequest.newBuilder()
.setParent("parent-995424086")
.setPartitionCount(-1738969222)
.setPageToken("pageToken873572522")
.setPageSize(883849137)
.build();
for (Cursor element : firestoreClient.partitionQuery(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<PartitionQueryRequest,FirestoreClient.PartitionQueryPagedResponse> partitionQueryPagedCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
PartitionQueryRequest request =
PartitionQueryRequest.newBuilder()
.setParent("parent-995424086")
.setPartitionCount(-1738969222)
.setPageToken("pageToken873572522")
.setPageSize(883849137)
.build();
ApiFuture<Cursor> future = firestoreClient.partitionQueryPagedCallable().futureCall(request);
// Do something.
for (Cursor element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final com.google.api.gax.rpc.UnaryCallable<PartitionQueryRequest,PartitionQueryResponse> partitionQueryCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
PartitionQueryRequest request =
PartitionQueryRequest.newBuilder()
.setParent("parent-995424086")
.setPartitionCount(-1738969222)
.setPageToken("pageToken873572522")
.setPageSize(883849137)
.build();
while (true) {
PartitionQueryResponse response = firestoreClient.partitionQueryCallable().call(request);
for (Cursor element : response.getPartitionsList()) {
// doThingsWith(element);
}
String nextPageToken = response.getNextPageToken();
if (!Strings.isNullOrEmpty(nextPageToken)) {
request = request.toBuilder().setPageToken(nextPageToken).build();
} else {
break;
}
}
}
public final com.google.api.gax.rpc.BidiStreamingCallable<WriteRequest,WriteResponse> writeCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
BidiStream<WriteRequest, WriteResponse> bidiStream = firestoreClient.writeCallable().call();
WriteRequest request =
WriteRequest.newBuilder()
.setDatabase("database1789464955")
.setStreamId("streamId1790933179")
.addAllWrites(new ArrayList<Write>())
.setStreamToken(ByteString.EMPTY)
.putAllLabels(new HashMap<String, String>())
.build();
bidiStream.send(request);
for (WriteResponse response : bidiStream) {
// Do something when a response is received.
}
}
public final com.google.api.gax.rpc.BidiStreamingCallable<ListenRequest,ListenResponse> listenCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
BidiStream<ListenRequest, ListenResponse> bidiStream =
firestoreClient.listenCallable().call();
ListenRequest request =
ListenRequest.newBuilder()
.setDatabase("database1789464955")
.putAllLabels(new HashMap<String, String>())
.build();
bidiStream.send(request);
for (ListenResponse response : bidiStream) {
// Do something when a response is received.
}
}
public final FirestoreClient.ListCollectionIdsPagedResponse listCollectionIds(String parent)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
String parent = "parent-995424086";
for (String element : firestoreClient.listCollectionIds(parent).iterateAll()) {
// doThingsWith(element);
}
}
parent
- Required. The parent document. In the format:
`projects/{project_id}/databases/{database_id}/documents/{document_path}`. For example:
`projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`com.google.api.gax.rpc.ApiException
- if the remote call failspublic final FirestoreClient.ListCollectionIdsPagedResponse listCollectionIds(ListCollectionIdsRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
ListCollectionIdsRequest request =
ListCollectionIdsRequest.newBuilder()
.setParent("parent-995424086")
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
for (String element : firestoreClient.listCollectionIds(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<ListCollectionIdsRequest,FirestoreClient.ListCollectionIdsPagedResponse> listCollectionIdsPagedCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
ListCollectionIdsRequest request =
ListCollectionIdsRequest.newBuilder()
.setParent("parent-995424086")
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
ApiFuture<String> future =
firestoreClient.listCollectionIdsPagedCallable().futureCall(request);
// Do something.
for (String element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final com.google.api.gax.rpc.UnaryCallable<ListCollectionIdsRequest,ListCollectionIdsResponse> listCollectionIdsCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
ListCollectionIdsRequest request =
ListCollectionIdsRequest.newBuilder()
.setParent("parent-995424086")
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
while (true) {
ListCollectionIdsResponse response =
firestoreClient.listCollectionIdsCallable().call(request);
for (String element : response.getCollectionIdsList()) {
// doThingsWith(element);
}
String nextPageToken = response.getNextPageToken();
if (!Strings.isNullOrEmpty(nextPageToken)) {
request = request.toBuilder().setPageToken(nextPageToken).build();
} else {
break;
}
}
}
public final BatchWriteResponse batchWrite(BatchWriteRequest request)
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.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
BatchWriteRequest request =
BatchWriteRequest.newBuilder()
.setDatabase("database1789464955")
.addAllWrites(new ArrayList<Write>())
.putAllLabels(new HashMap<String, String>())
.build();
BatchWriteResponse response = firestoreClient.batchWrite(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<BatchWriteRequest,BatchWriteResponse> batchWriteCallable()
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.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
BatchWriteRequest request =
BatchWriteRequest.newBuilder()
.setDatabase("database1789464955")
.addAllWrites(new ArrayList<Write>())
.putAllLabels(new HashMap<String, String>())
.build();
ApiFuture<BatchWriteResponse> future =
firestoreClient.batchWriteCallable().futureCall(request);
// Do something.
BatchWriteResponse response = future.get();
}
public final Document createDocument(CreateDocumentRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
CreateDocumentRequest request =
CreateDocumentRequest.newBuilder()
.setParent("parent-995424086")
.setCollectionId("collectionId1636075609")
.setDocumentId("documentId-814940266")
.setDocument(Document.newBuilder().build())
.setMask(DocumentMask.newBuilder().build())
.build();
Document response = firestoreClient.createDocument(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<CreateDocumentRequest,Document> createDocumentCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (FirestoreClient firestoreClient = FirestoreClient.create()) {
CreateDocumentRequest request =
CreateDocumentRequest.newBuilder()
.setParent("parent-995424086")
.setCollectionId("collectionId1636075609")
.setDocumentId("documentId-814940266")
.setDocument(Document.newBuilder().build())
.setMask(DocumentMask.newBuilder().build())
.build();
ApiFuture<Document> future = firestoreClient.createDocumentCallable().futureCall(request);
// Do something.
Document response = future.get();
}
public final void close()
close
in interface AutoCloseable
public void shutdown()
shutdown
in interface com.google.api.gax.core.BackgroundResource
public boolean isShutdown()
isShutdown
in interface com.google.api.gax.core.BackgroundResource
public boolean isTerminated()
isTerminated
in interface com.google.api.gax.core.BackgroundResource
public void shutdownNow()
shutdownNow
in interface com.google.api.gax.core.BackgroundResource
public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException
awaitTermination
in interface com.google.api.gax.core.BackgroundResource
InterruptedException
Copyright © 2023 Google LLC. All rights reserved.