Skip to content

Commit

Permalink
feat: [networkconnectivity] add PolicyBasedRouting APIs (#9825)
Browse files Browse the repository at this point in the history
* feat: add PolicyBasedRouting APIs

PiperOrigin-RevId: 564481387

Source-Link: googleapis/googleapis@fd39f20

Source-Link: https://github.com/googleapis/googleapis-gen/commit/3ca3ed0cec66660bdfcd96e48570761360a44af1
Copy-Tag: eyJwIjoiamF2YS1uZXR3b3JrY29ubmVjdGl2aXR5Ly5Pd2xCb3QueWFtbCIsImgiOiIzY2EzZWQwY2VjNjY2NjBiZGZjZDk2ZTQ4NTcwNzYxMzYwYTQ0YWYxIn0=

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

---------

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
  • Loading branch information
gcf-owl-bot[bot] and gcf-owl-bot[bot] authored Sep 21, 2023
1 parent 6ab58e6 commit 26c3ef4
Show file tree
Hide file tree
Showing 51 changed files with 22,243 additions and 0 deletions.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,271 @@
/*
* Copyright 2023 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package com.google.cloud.networkconnectivity.v1;

import static com.google.cloud.networkconnectivity.v1.PolicyBasedRoutingServiceClient.ListPolicyBasedRoutesPagedResponse;

import com.google.api.core.ApiFunction;
import com.google.api.core.BetaApi;
import com.google.api.gax.core.GoogleCredentialsProvider;
import com.google.api.gax.core.InstantiatingExecutorProvider;
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
import com.google.api.gax.rpc.ApiClientHeaderProvider;
import com.google.api.gax.rpc.ClientContext;
import com.google.api.gax.rpc.ClientSettings;
import com.google.api.gax.rpc.OperationCallSettings;
import com.google.api.gax.rpc.PagedCallSettings;
import com.google.api.gax.rpc.TransportChannelProvider;
import com.google.api.gax.rpc.UnaryCallSettings;
import com.google.cloud.networkconnectivity.v1.stub.PolicyBasedRoutingServiceStubSettings;
import com.google.longrunning.Operation;
import com.google.protobuf.Empty;
import java.io.IOException;
import java.util.List;
import javax.annotation.Generated;

// AUTO-GENERATED DOCUMENTATION AND CLASS.
/**
* Settings class to configure an instance of {@link PolicyBasedRoutingServiceClient}.
*
* <p>The default instance has everything set to sensible defaults:
*
* <ul>
* <li>The default service address (networkconnectivity.googleapis.com) and default port (443) are
* used.
* <li>Credentials are acquired automatically through Application Default Credentials.
* <li>Retries are configured for idempotent methods but not for non-idempotent methods.
* </ul>
*
* <p>The builder of this class is recursive, so contained classes are themselves builders. When
* build() is called, the tree of builders is called to create the complete settings object.
*
* <p>For example, to set the total timeout of getPolicyBasedRoute to 30 seconds:
*
* <pre>{@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
* PolicyBasedRoutingServiceSettings.Builder policyBasedRoutingServiceSettingsBuilder =
* PolicyBasedRoutingServiceSettings.newBuilder();
* policyBasedRoutingServiceSettingsBuilder
* .getPolicyBasedRouteSettings()
* .setRetrySettings(
* policyBasedRoutingServiceSettingsBuilder
* .getPolicyBasedRouteSettings()
* .getRetrySettings()
* .toBuilder()
* .setTotalTimeout(Duration.ofSeconds(30))
* .build());
* PolicyBasedRoutingServiceSettings policyBasedRoutingServiceSettings =
* policyBasedRoutingServiceSettingsBuilder.build();
* }</pre>
*/
@Generated("by gapic-generator-java")
public class PolicyBasedRoutingServiceSettings
extends ClientSettings<PolicyBasedRoutingServiceSettings> {

/** Returns the object with the settings used for calls to listPolicyBasedRoutes. */
public PagedCallSettings<
ListPolicyBasedRoutesRequest,
ListPolicyBasedRoutesResponse,
ListPolicyBasedRoutesPagedResponse>
listPolicyBasedRoutesSettings() {
return ((PolicyBasedRoutingServiceStubSettings) getStubSettings())
.listPolicyBasedRoutesSettings();
}

/** Returns the object with the settings used for calls to getPolicyBasedRoute. */
public UnaryCallSettings<GetPolicyBasedRouteRequest, PolicyBasedRoute>
getPolicyBasedRouteSettings() {
return ((PolicyBasedRoutingServiceStubSettings) getStubSettings())
.getPolicyBasedRouteSettings();
}

/** Returns the object with the settings used for calls to createPolicyBasedRoute. */
public UnaryCallSettings<CreatePolicyBasedRouteRequest, Operation>
createPolicyBasedRouteSettings() {
return ((PolicyBasedRoutingServiceStubSettings) getStubSettings())
.createPolicyBasedRouteSettings();
}

/** Returns the object with the settings used for calls to createPolicyBasedRoute. */
public OperationCallSettings<CreatePolicyBasedRouteRequest, PolicyBasedRoute, OperationMetadata>
createPolicyBasedRouteOperationSettings() {
return ((PolicyBasedRoutingServiceStubSettings) getStubSettings())
.createPolicyBasedRouteOperationSettings();
}

/** Returns the object with the settings used for calls to deletePolicyBasedRoute. */
public UnaryCallSettings<DeletePolicyBasedRouteRequest, Operation>
deletePolicyBasedRouteSettings() {
return ((PolicyBasedRoutingServiceStubSettings) getStubSettings())
.deletePolicyBasedRouteSettings();
}

/** Returns the object with the settings used for calls to deletePolicyBasedRoute. */
public OperationCallSettings<DeletePolicyBasedRouteRequest, Empty, OperationMetadata>
deletePolicyBasedRouteOperationSettings() {
return ((PolicyBasedRoutingServiceStubSettings) getStubSettings())
.deletePolicyBasedRouteOperationSettings();
}

public static final PolicyBasedRoutingServiceSettings create(
PolicyBasedRoutingServiceStubSettings stub) throws IOException {
return new PolicyBasedRoutingServiceSettings.Builder(stub.toBuilder()).build();
}

/** Returns a builder for the default ExecutorProvider for this service. */
public static InstantiatingExecutorProvider.Builder defaultExecutorProviderBuilder() {
return PolicyBasedRoutingServiceStubSettings.defaultExecutorProviderBuilder();
}

/** Returns the default service endpoint. */
public static String getDefaultEndpoint() {
return PolicyBasedRoutingServiceStubSettings.getDefaultEndpoint();
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return PolicyBasedRoutingServiceStubSettings.getDefaultServiceScopes();
}

/** Returns a builder for the default credentials for this service. */
public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilder() {
return PolicyBasedRoutingServiceStubSettings.defaultCredentialsProviderBuilder();
}

/** Returns a builder for the default ChannelProvider for this service. */
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
return PolicyBasedRoutingServiceStubSettings.defaultGrpcTransportProviderBuilder();
}

public static TransportChannelProvider defaultTransportChannelProvider() {
return PolicyBasedRoutingServiceStubSettings.defaultTransportChannelProvider();
}

@BetaApi("The surface for customizing headers is not stable yet and may change in the future.")
public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() {
return PolicyBasedRoutingServiceStubSettings.defaultApiClientHeaderProviderBuilder();
}

/** Returns a new builder for this class. */
public static Builder newBuilder() {
return Builder.createDefault();
}

/** Returns a new builder for this class. */
public static Builder newBuilder(ClientContext clientContext) {
return new Builder(clientContext);
}

/** Returns a builder containing all the values of this settings class. */
public Builder toBuilder() {
return new Builder(this);
}

protected PolicyBasedRoutingServiceSettings(Builder settingsBuilder) throws IOException {
super(settingsBuilder);
}

/** Builder for PolicyBasedRoutingServiceSettings. */
public static class Builder
extends ClientSettings.Builder<PolicyBasedRoutingServiceSettings, Builder> {

protected Builder() throws IOException {
this(((ClientContext) null));
}

protected Builder(ClientContext clientContext) {
super(PolicyBasedRoutingServiceStubSettings.newBuilder(clientContext));
}

protected Builder(PolicyBasedRoutingServiceSettings settings) {
super(settings.getStubSettings().toBuilder());
}

protected Builder(PolicyBasedRoutingServiceStubSettings.Builder stubSettings) {
super(stubSettings);
}

private static Builder createDefault() {
return new Builder(PolicyBasedRoutingServiceStubSettings.newBuilder());
}

public PolicyBasedRoutingServiceStubSettings.Builder getStubSettingsBuilder() {
return ((PolicyBasedRoutingServiceStubSettings.Builder) getStubSettings());
}

/**
* Applies the given settings updater function to all of the unary API methods in this service.
*
* <p>Note: This method does not support applying settings to streaming methods.
*/
public Builder applyToAllUnaryMethods(
ApiFunction<UnaryCallSettings.Builder<?, ?>, Void> settingsUpdater) {
super.applyToAllUnaryMethods(
getStubSettingsBuilder().unaryMethodSettingsBuilders(), settingsUpdater);
return this;
}

/** Returns the builder for the settings used for calls to listPolicyBasedRoutes. */
public PagedCallSettings.Builder<
ListPolicyBasedRoutesRequest,
ListPolicyBasedRoutesResponse,
ListPolicyBasedRoutesPagedResponse>
listPolicyBasedRoutesSettings() {
return getStubSettingsBuilder().listPolicyBasedRoutesSettings();
}

/** Returns the builder for the settings used for calls to getPolicyBasedRoute. */
public UnaryCallSettings.Builder<GetPolicyBasedRouteRequest, PolicyBasedRoute>
getPolicyBasedRouteSettings() {
return getStubSettingsBuilder().getPolicyBasedRouteSettings();
}

/** Returns the builder for the settings used for calls to createPolicyBasedRoute. */
public UnaryCallSettings.Builder<CreatePolicyBasedRouteRequest, Operation>
createPolicyBasedRouteSettings() {
return getStubSettingsBuilder().createPolicyBasedRouteSettings();
}

/** Returns the builder for the settings used for calls to createPolicyBasedRoute. */
public OperationCallSettings.Builder<
CreatePolicyBasedRouteRequest, PolicyBasedRoute, OperationMetadata>
createPolicyBasedRouteOperationSettings() {
return getStubSettingsBuilder().createPolicyBasedRouteOperationSettings();
}

/** Returns the builder for the settings used for calls to deletePolicyBasedRoute. */
public UnaryCallSettings.Builder<DeletePolicyBasedRouteRequest, Operation>
deletePolicyBasedRouteSettings() {
return getStubSettingsBuilder().deletePolicyBasedRouteSettings();
}

/** Returns the builder for the settings used for calls to deletePolicyBasedRoute. */
public OperationCallSettings.Builder<DeletePolicyBasedRouteRequest, Empty, OperationMetadata>
deletePolicyBasedRouteOperationSettings() {
return getStubSettingsBuilder().deletePolicyBasedRouteOperationSettings();
}

@Override
public PolicyBasedRoutingServiceSettings build() throws IOException {
return new PolicyBasedRoutingServiceSettings(this);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,27 @@
}
}
}
},
"PolicyBasedRoutingService": {
"clients": {
"grpc": {
"libraryClient": "PolicyBasedRoutingServiceClient",
"rpcs": {
"CreatePolicyBasedRoute": {
"methods": ["createPolicyBasedRouteAsync", "createPolicyBasedRouteAsync", "createPolicyBasedRouteAsync", "createPolicyBasedRouteOperationCallable", "createPolicyBasedRouteCallable"]
},
"DeletePolicyBasedRoute": {
"methods": ["deletePolicyBasedRouteAsync", "deletePolicyBasedRouteAsync", "deletePolicyBasedRouteAsync", "deletePolicyBasedRouteOperationCallable", "deletePolicyBasedRouteCallable"]
},
"GetPolicyBasedRoute": {
"methods": ["getPolicyBasedRoute", "getPolicyBasedRoute", "getPolicyBasedRoute", "getPolicyBasedRouteCallable"]
},
"ListPolicyBasedRoutes": {
"methods": ["listPolicyBasedRoutes", "listPolicyBasedRoutes", "listPolicyBasedRoutes", "listPolicyBasedRoutesPagedCallable", "listPolicyBasedRoutesCallable"]
}
}
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,26 @@
* Hub response = hubServiceClient.getHub(name);
* }
* }</pre>
*
* <p>======================= PolicyBasedRoutingServiceClient =======================
*
* <p>Service Description: Policy-Based Routing allows GCP customers to specify flexibile routing
* policies for Layer 4 traffic traversing through the connected service.
*
* <p>Sample for PolicyBasedRoutingServiceClient:
*
* <pre>{@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 (PolicyBasedRoutingServiceClient policyBasedRoutingServiceClient =
* PolicyBasedRoutingServiceClient.create()) {
* PolicyBasedRouteName name = PolicyBasedRouteName.of("[PROJECT]", "[POLICY_BASED_ROUTE]");
* PolicyBasedRoute response = policyBasedRoutingServiceClient.getPolicyBasedRoute(name);
* }
* }</pre>
*/
@Generated("by gapic-generator-java")
package com.google.cloud.networkconnectivity.v1;
Expand Down
Loading

0 comments on commit 26c3ef4

Please sign in to comment.