public static CommitRequest commit(@Nullable ByteString transactionId, Write... writes) { CommitRequest.Builder commitRequest = CommitRequest.newBuilder(); commitRequest.setDatabase(DATABASE_NAME); commitRequest.addAllWrites(Arrays.asList(writes)); if (transactionId != null) { commitRequest.setTransaction(transactionId); } return commitRequest.build(); }
firestore.sendRequest(request.build(), firestore.getClient().commitCallable());
/** * * * <pre> * expected rquest * </pre> * * <code>.google.firestore.v1beta1.CommitRequest request = 5;</code> */ public Builder setRequest( com.google.firestore.v1beta1.CommitRequest.Builder builderForValue) { if (requestBuilder_ == null) { request_ = builderForValue.build(); onChanged(); } else { requestBuilder_.setMessage(builderForValue.build()); } return this; } /**
firestore.sendRequest(request.build(), firestore.getClient().commitCallable());
/** * Commits a transaction, while optionally updating documents. * * <p>Sample code: * * <pre><code> * try (FirestoreClient firestoreClient = FirestoreClient.create()) { * String formattedDatabase = FirestoreClient.formatDatabaseRootName("[PROJECT]", "[DATABASE]"); * List<Write> writes = new ArrayList<>(); * CommitResponse response = firestoreClient.commit(formattedDatabase, writes); * } * </code></pre> * * @param database The database name. In the format: * `projects/{project_id}/databases/{database_id}`. * @param writes The writes to apply. * <p>Always executed atomically and in order. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final CommitResponse commit(String database, List<Write> writes) { DATABASE_ROOT_PATH_TEMPLATE.validate(database, "commit"); CommitRequest request = CommitRequest.newBuilder().setDatabase(database).addAllWrites(writes).build(); return commit(request); }
/** * Commits a transaction, while optionally updating documents. * * <p>Sample code: * * <pre><code> * try (FirestoreClient firestoreClient = FirestoreClient.create()) { * String formattedDatabase = FirestoreClient.formatDatabaseRootName("[PROJECT]", "[DATABASE]"); * List<Write> writes = new ArrayList<>(); * CommitResponse response = firestoreClient.commit(formattedDatabase, writes); * } * </code></pre> * * @param database The database name. In the format: * `projects/{project_id}/databases/{database_id}`. * @param writes The writes to apply. * <p>Always executed atomically and in order. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final CommitResponse commit(String database, List<Write> writes) { DATABASE_ROOT_PATH_TEMPLATE.validate(database, "commit"); CommitRequest request = CommitRequest.newBuilder().setDatabase(database).addAllWrites(writes).build(); return commit(request); }
private static CommitRequest sortCommit(CommitRequest commit) { CommitRequest.Builder builder = commit.toBuilder(); for (Write.Builder writes : builder.getWritesBuilderList()) { if (writes.hasUpdateMask()) { ArrayList<String> updateMask = new ArrayList<>(writes.getUpdateMask().getFieldPathsList()); Collections.sort(updateMask); writes.setUpdateMask(DocumentMask.newBuilder().addAllFieldPaths(updateMask)); } if (writes.getTransform().getFieldTransformsCount() > 0) { ArrayList<FieldTransform> transformList = new ArrayList<>(writes.getTransform().getFieldTransformsList()); Collections.sort( transformList, new Comparator<FieldTransform>() { @Override public int compare(FieldTransform t1, FieldTransform t2) { return t1.getFieldPath().compareTo(t2.getFieldPath()); } }); writes.setTransform(DocumentTransform.newBuilder().addAllFieldTransforms(transformList)); } } return builder.build(); }
/** * * * <pre> * expected rquest * </pre> * * <code>.google.firestore.v1beta1.CommitRequest request = 3;</code> */ public Builder setRequest( com.google.firestore.v1beta1.CommitRequest.Builder builderForValue) { if (requestBuilder_ == null) { request_ = builderForValue.build(); onChanged(); } else { requestBuilder_.setMessage(builderForValue.build()); } return this; } /**
/** * * * <pre> * expected request * </pre> * * <code>.google.firestore.v1beta1.CommitRequest request = 4;</code> */ public Builder setRequest( com.google.firestore.v1beta1.CommitRequest.Builder builderForValue) { if (requestBuilder_ == null) { request_ = builderForValue.build(); onChanged(); } else { requestBuilder_.setMessage(builderForValue.build()); } return this; } /**
/** * * * <pre> * expected request * </pre> * * <code>.google.firestore.v1beta1.CommitRequest request = 4;</code> */ public Builder setRequest( com.google.firestore.v1beta1.CommitRequest.Builder builderForValue) { if (requestBuilder_ == null) { request_ = builderForValue.build(); onChanged(); } else { requestBuilder_.setMessage(builderForValue.build()); } return this; } /**
/** * * * <pre> * The request that the call should generate. * </pre> * * <code>.google.firestore.v1beta1.CommitRequest request = 3;</code> */ public Builder setRequest( com.google.firestore.v1beta1.CommitRequest.Builder builderForValue) { if (requestBuilder_ == null) { request_ = builderForValue.build(); onChanged(); } else { requestBuilder_.setMessage(builderForValue.build()); } return this; } /**
public boolean matchesIgnoresName(CommitRequest o) { CommitRequest.Builder actual = o.toBuilder(); actual.getWritesBuilder(0).getUpdateBuilder().clearName().build(); CommitRequest.Builder expected = LocalFirestoreHelper.SINGLE_CREATE_COMMIT_REQUEST.toBuilder(); expected.getWritesBuilder(0).getUpdateBuilder().clearName().build(); return actual.build().equals(expected.build()); }