Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -696,16 +696,76 @@ public final UnaryCallable<DeleteDocumentRequest, Operation> deleteDocumentCalla
*
* <pre><code>
* try (DocumentsClient documentsClient = DocumentsClient.create()) {
* UpdateDocumentRequest request = UpdateDocumentRequest.newBuilder().build();
* Operation response = documentsClient.updateDocument(request);
* Document document = Document.newBuilder().build();
* Document response = documentsClient.updateDocumentAsync(document).get();
* }
* </code></pre>
*
* @param document Required. The document to update.
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
@BetaApi(
"The surface for long-running operations is not stable yet and may change in the future.")
public final OperationFuture<Document, KnowledgeOperationMetadata> updateDocumentAsync(
Document document) {

UpdateDocumentRequest request =
UpdateDocumentRequest.newBuilder().setDocument(document).build();
return updateDocumentAsync(request);
}

// AUTO-GENERATED DOCUMENTATION AND METHOD
/**
* Updates the specified document. Operation &lt;response:
* [Document][google.cloud.dialogflow.v2beta1.Document], metadata:
* [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]&gt;
*
* <p>Sample code:
*
* <pre><code>
* try (DocumentsClient documentsClient = DocumentsClient.create()) {
* Document document = Document.newBuilder().build();
* UpdateDocumentRequest request = UpdateDocumentRequest.newBuilder()
* .setDocument(document)
* .build();
* Document response = documentsClient.updateDocumentAsync(request).get();
* }
* </code></pre>
*
* @param request The request object containing all of the parameters for the API call.
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
public final Operation updateDocument(UpdateDocumentRequest request) {
return updateDocumentCallable().call(request);
@BetaApi(
"The surface for long-running operations is not stable yet and may change in the future.")
public final OperationFuture<Document, KnowledgeOperationMetadata> updateDocumentAsync(
UpdateDocumentRequest request) {
return updateDocumentOperationCallable().futureCall(request);
}

// AUTO-GENERATED DOCUMENTATION AND METHOD
/**
* Updates the specified document. Operation &lt;response:
* [Document][google.cloud.dialogflow.v2beta1.Document], metadata:
* [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]&gt;
*
* <p>Sample code:
*
* <pre><code>
* try (DocumentsClient documentsClient = DocumentsClient.create()) {
* Document document = Document.newBuilder().build();
* UpdateDocumentRequest request = UpdateDocumentRequest.newBuilder()
* .setDocument(document)
* .build();
* OperationFuture&lt;Document, KnowledgeOperationMetadata&gt; future = documentsClient.updateDocumentOperationCallable().futureCall(request);
* // Do something
* Document response = future.get();
* }
* </code></pre>
*/
@BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
public final OperationCallable<UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationCallable() {
return stub.updateDocumentOperationCallable();
}

// AUTO-GENERATED DOCUMENTATION AND METHOD
Expand All @@ -718,7 +778,10 @@ public final Operation updateDocument(UpdateDocumentRequest request) {
*
* <pre><code>
* try (DocumentsClient documentsClient = DocumentsClient.create()) {
* UpdateDocumentRequest request = UpdateDocumentRequest.newBuilder().build();
* Document document = Document.newBuilder().build();
* UpdateDocumentRequest request = UpdateDocumentRequest.newBuilder()
* .setDocument(document)
* .build();
* ApiFuture&lt;Operation&gt; future = documentsClient.updateDocumentCallable().futureCall(request);
* // Do something
* Operation response = future.get();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,14 @@ public UnaryCallSettings<UpdateDocumentRequest, Operation> updateDocumentSetting
return ((DocumentsStubSettings) getStubSettings()).updateDocumentSettings();
}

/** Returns the object with the settings used for calls to updateDocument. */
@BetaApi(
"The surface for long-running operations is not stable yet and may change in the future.")
public OperationCallSettings<UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationSettings() {
return ((DocumentsStubSettings) getStubSettings()).updateDocumentOperationSettings();
}

/** Returns the object with the settings used for calls to reloadDocument. */
public UnaryCallSettings<ReloadDocumentRequest, Operation> reloadDocumentSettings() {
return ((DocumentsStubSettings) getStubSettings()).reloadDocumentSettings();
Expand Down Expand Up @@ -252,6 +260,15 @@ public UnaryCallSettings.Builder<UpdateDocumentRequest, Operation> updateDocumen
return getStubSettingsBuilder().updateDocumentSettings();
}

/** Returns the builder for the settings used for calls to updateDocument. */
@BetaApi(
"The surface for long-running operations is not stable yet and may change in the future.")
public OperationCallSettings.Builder<
UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationSettings() {
return getStubSettingsBuilder().updateDocumentOperationSettings();
}

/** Returns the builder for the settings used for calls to reloadDocument. */
public UnaryCallSettings.Builder<ReloadDocumentRequest, Operation> reloadDocumentSettings() {
return getStubSettingsBuilder().reloadDocumentSettings();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -594,7 +594,33 @@ public final UnaryCallable<DeleteKnowledgeBaseRequest, Empty> deleteKnowledgeBas
*
* <pre><code>
* try (KnowledgeBasesClient knowledgeBasesClient = KnowledgeBasesClient.create()) {
* UpdateKnowledgeBaseRequest request = UpdateKnowledgeBaseRequest.newBuilder().build();
* KnowledgeBase knowledgeBase = KnowledgeBase.newBuilder().build();
* KnowledgeBase response = knowledgeBasesClient.updateKnowledgeBase(knowledgeBase);
* }
* </code></pre>
*
* @param knowledgeBase Required. The knowledge base to update.
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
public final KnowledgeBase updateKnowledgeBase(KnowledgeBase knowledgeBase) {

UpdateKnowledgeBaseRequest request =
UpdateKnowledgeBaseRequest.newBuilder().setKnowledgeBase(knowledgeBase).build();
return updateKnowledgeBase(request);
}

// AUTO-GENERATED DOCUMENTATION AND METHOD
/**
* Updates the specified knowledge base.
*
* <p>Sample code:
*
* <pre><code>
* try (KnowledgeBasesClient knowledgeBasesClient = KnowledgeBasesClient.create()) {
* KnowledgeBase knowledgeBase = KnowledgeBase.newBuilder().build();
* UpdateKnowledgeBaseRequest request = UpdateKnowledgeBaseRequest.newBuilder()
* .setKnowledgeBase(knowledgeBase)
* .build();
* KnowledgeBase response = knowledgeBasesClient.updateKnowledgeBase(request);
* }
* </code></pre>
Expand All @@ -614,7 +640,10 @@ public final KnowledgeBase updateKnowledgeBase(UpdateKnowledgeBaseRequest reques
*
* <pre><code>
* try (KnowledgeBasesClient knowledgeBasesClient = KnowledgeBasesClient.create()) {
* UpdateKnowledgeBaseRequest request = UpdateKnowledgeBaseRequest.newBuilder().build();
* KnowledgeBase knowledgeBase = KnowledgeBase.newBuilder().build();
* UpdateKnowledgeBaseRequest request = UpdateKnowledgeBaseRequest.newBuilder()
* .setKnowledgeBase(knowledgeBase)
* .build();
* ApiFuture&lt;KnowledgeBase&gt; future = knowledgeBasesClient.updateKnowledgeBaseCallable().futureCall(request);
* // Do something
* KnowledgeBase response = future.get();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,12 @@ public UnaryCallable<DeleteDocumentRequest, Operation> deleteDocumentCallable()
throw new UnsupportedOperationException("Not implemented: deleteDocumentCallable()");
}

@BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
public OperationCallable<UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationCallable() {
throw new UnsupportedOperationException("Not implemented: updateDocumentOperationCallable()");
}

public UnaryCallable<UpdateDocumentRequest, Operation> updateDocumentCallable() {
throw new UnsupportedOperationException("Not implemented: updateDocumentCallable()");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,8 @@ public class DocumentsStubSettings extends StubSettings<DocumentsStubSettings> {
private final OperationCallSettings<DeleteDocumentRequest, Empty, KnowledgeOperationMetadata>
deleteDocumentOperationSettings;
private final UnaryCallSettings<UpdateDocumentRequest, Operation> updateDocumentSettings;
private final OperationCallSettings<UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationSettings;
private final UnaryCallSettings<ReloadDocumentRequest, Operation> reloadDocumentSettings;

/** Returns the object with the settings used for calls to listDocuments. */
Expand Down Expand Up @@ -152,6 +154,13 @@ public UnaryCallSettings<UpdateDocumentRequest, Operation> updateDocumentSetting
return updateDocumentSettings;
}

/** Returns the object with the settings used for calls to updateDocument. */
@BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
public OperationCallSettings<UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationSettings() {
return updateDocumentOperationSettings;
}

/** Returns the object with the settings used for calls to reloadDocument. */
public UnaryCallSettings<ReloadDocumentRequest, Operation> reloadDocumentSettings() {
return reloadDocumentSettings;
Expand Down Expand Up @@ -231,6 +240,7 @@ protected DocumentsStubSettings(Builder settingsBuilder) throws IOException {
deleteDocumentSettings = settingsBuilder.deleteDocumentSettings().build();
deleteDocumentOperationSettings = settingsBuilder.deleteDocumentOperationSettings().build();
updateDocumentSettings = settingsBuilder.updateDocumentSettings().build();
updateDocumentOperationSettings = settingsBuilder.updateDocumentOperationSettings().build();
reloadDocumentSettings = settingsBuilder.reloadDocumentSettings().build();
}

Expand Down Expand Up @@ -307,6 +317,9 @@ public static class Builder extends StubSettings.Builder<DocumentsStubSettings,
deleteDocumentOperationSettings;
private final UnaryCallSettings.Builder<UpdateDocumentRequest, Operation>
updateDocumentSettings;
private final OperationCallSettings.Builder<
UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationSettings;
private final UnaryCallSettings.Builder<ReloadDocumentRequest, Operation>
reloadDocumentSettings;

Expand Down Expand Up @@ -365,6 +378,8 @@ protected Builder(ClientContext clientContext) {

updateDocumentSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();

updateDocumentOperationSettings = OperationCallSettings.newBuilder();

reloadDocumentSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();

unaryMethodSettingsBuilders =
Expand Down Expand Up @@ -467,6 +482,30 @@ private static Builder initDefaults(Builder builder) {
.setMaxRpcTimeout(Duration.ZERO) // ignored
.setTotalTimeout(Duration.ofMillis(300000L))
.build()));
builder
.updateDocumentOperationSettings()
.setInitialCallSettings(
UnaryCallSettings
.<UpdateDocumentRequest, OperationSnapshot>newUnaryCallSettingsBuilder()
.setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
.setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"))
.build())
.setResponseTransformer(
ProtoOperationTransformers.ResponseTransformer.create(Document.class))
.setMetadataTransformer(
ProtoOperationTransformers.MetadataTransformer.create(
KnowledgeOperationMetadata.class))
.setPollingAlgorithm(
OperationTimedPollAlgorithm.create(
RetrySettings.newBuilder()
.setInitialRetryDelay(Duration.ofMillis(500L))
.setRetryDelayMultiplier(1.5)
.setMaxRetryDelay(Duration.ofMillis(5000L))
.setInitialRpcTimeout(Duration.ZERO) // ignored
.setRpcTimeoutMultiplier(1.0) // ignored
.setMaxRpcTimeout(Duration.ZERO) // ignored
.setTotalTimeout(Duration.ofMillis(300000L))
.build()));

return builder;
}
Expand All @@ -481,6 +520,7 @@ protected Builder(DocumentsStubSettings settings) {
deleteDocumentSettings = settings.deleteDocumentSettings.toBuilder();
deleteDocumentOperationSettings = settings.deleteDocumentOperationSettings.toBuilder();
updateDocumentSettings = settings.updateDocumentSettings.toBuilder();
updateDocumentOperationSettings = settings.updateDocumentOperationSettings.toBuilder();
reloadDocumentSettings = settings.reloadDocumentSettings.toBuilder();

unaryMethodSettingsBuilders =
Expand Down Expand Up @@ -553,6 +593,15 @@ public UnaryCallSettings.Builder<UpdateDocumentRequest, Operation> updateDocumen
return updateDocumentSettings;
}

/** Returns the builder for the settings used for calls to updateDocument. */
@BetaApi(
"The surface for use by generated code is not stable yet and may change in the future.")
public OperationCallSettings.Builder<
UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationSettings() {
return updateDocumentOperationSettings;
}

/** Returns the builder for the settings used for calls to reloadDocument. */
public UnaryCallSettings.Builder<ReloadDocumentRequest, Operation> reloadDocumentSettings() {
return reloadDocumentSettings;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,8 @@ public class GrpcDocumentsStub extends DocumentsStub {
private final OperationCallable<DeleteDocumentRequest, Empty, KnowledgeOperationMetadata>
deleteDocumentOperationCallable;
private final UnaryCallable<UpdateDocumentRequest, Operation> updateDocumentCallable;
private final OperationCallable<UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationCallable;
private final UnaryCallable<ReloadDocumentRequest, Operation> reloadDocumentCallable;

private final GrpcStubCallableFactory callableFactory;
Expand Down Expand Up @@ -274,6 +276,12 @@ public Map<String, String> extract(ReloadDocumentRequest request) {
this.updateDocumentCallable =
callableFactory.createUnaryCallable(
updateDocumentTransportSettings, settings.updateDocumentSettings(), clientContext);
this.updateDocumentOperationCallable =
callableFactory.createOperationCallable(
updateDocumentTransportSettings,
settings.updateDocumentOperationSettings(),
clientContext,
this.operationsStub);
this.reloadDocumentCallable =
callableFactory.createUnaryCallable(
reloadDocumentTransportSettings, settings.reloadDocumentSettings(), clientContext);
Expand Down Expand Up @@ -319,6 +327,12 @@ public UnaryCallable<DeleteDocumentRequest, Operation> deleteDocumentCallable()
return deleteDocumentCallable;
}

@BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
public OperationCallable<UpdateDocumentRequest, Document, KnowledgeOperationMetadata>
updateDocumentOperationCallable() {
return updateDocumentOperationCallable;
}

public UnaryCallable<UpdateDocumentRequest, Operation> updateDocumentCallable() {
return updateDocumentCallable;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -304,4 +304,60 @@ public void deleteDocumentExceptionTest() throws Exception {
Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode());
}
}

@Test
@SuppressWarnings("all")
public void updateDocumentTest() throws Exception {
DocumentName name = DocumentName.of("[PROJECT]", "[KNOWLEDGE_BASE]", "[DOCUMENT]");
String displayName = "displayName1615086568";
String mimeType = "mimeType-196041627";
String contentUri = "contentUri-388807514";
Document expectedResponse =
Document.newBuilder()
.setName(name.toString())
.setDisplayName(displayName)
.setMimeType(mimeType)
.setContentUri(contentUri)
.build();
Operation resultOperation =
Operation.newBuilder()
.setName("updateDocumentTest")
.setDone(true)
.setResponse(Any.pack(expectedResponse))
.build();
mockDocuments.addResponse(resultOperation);

Document document = Document.newBuilder().build();

Document actualResponse = client.updateDocumentAsync(document).get();
Assert.assertEquals(expectedResponse, actualResponse);

List<AbstractMessage> actualRequests = mockDocuments.getRequests();
Assert.assertEquals(1, actualRequests.size());
UpdateDocumentRequest actualRequest = (UpdateDocumentRequest) actualRequests.get(0);

Assert.assertEquals(document, actualRequest.getDocument());
Assert.assertTrue(
channelProvider.isHeaderSent(
ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}

@Test
@SuppressWarnings("all")
public void updateDocumentExceptionTest() throws Exception {
StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
mockDocuments.addException(exception);

try {
Document document = Document.newBuilder().build();

client.updateDocumentAsync(document).get();
Assert.fail("No exception raised");
} catch (ExecutionException e) {
Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass());
InvalidArgumentException apiException = (InvalidArgumentException) e.getCause();
Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode());
}
}
}
Loading