Class RoutersClient (1.88.0)

GitHub RepositoryProduct Reference

Service Description: The Routers API.

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 (RoutersClient routersClient = RoutersClient.create()) {
   String project = "project-309310695";
   String region = "region-934795532";
   String router = "router-925132983";
   Router response = routersClient.get(project, region, router);
 }
 

Note: close() needs to be called on the RoutersClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

Methods
Method Description Method Variants

AggregatedList

Retrieves an aggregated list of routers. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to true.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • aggregatedList(AggregatedListRoutersRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • aggregatedList(String project)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • aggregatedListPagedCallable()

  • aggregatedListCallable()

Delete

Deletes the specified Router resource.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • deleteAsync(DeleteRouterRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • deleteAsync(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • deleteOperationCallable()

  • deleteCallable()

DeleteRoutePolicy

Deletes Route Policy

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • deleteRoutePolicyAsync(DeleteRoutePolicyRouterRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • deleteRoutePolicyAsync(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • deleteRoutePolicyOperationCallable()

  • deleteRoutePolicyCallable()

Get

Returns the specified Router resource.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • get(GetRouterRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • get(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getCallable()

GetNatIpInfo

Retrieves runtime NAT IP information.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getNatIpInfo(GetNatIpInfoRouterRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • getNatIpInfo(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getNatIpInfoCallable()

GetNatMappingInfo

Retrieves runtime Nat mapping information of VM endpoints.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getNatMappingInfo(GetNatMappingInfoRoutersRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • getNatMappingInfo(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getNatMappingInfoPagedCallable()

  • getNatMappingInfoCallable()

GetRoutePolicy

Returns specified Route Policy

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getRoutePolicy(GetRoutePolicyRouterRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • getRoutePolicy(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getRoutePolicyCallable()

GetRouterStatus

Retrieves runtime information of the specified router.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getRouterStatus(GetRouterStatusRouterRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • getRouterStatus(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getRouterStatusCallable()

Insert

Creates a Router resource in the specified project and region using the data included in the request.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • insertAsync(InsertRouterRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • insertAsync(String project, String region, Router routerResource)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • insertOperationCallable()

  • insertCallable()

List

Retrieves a list of Router resources available to the specified project.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • list(ListRoutersRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • list(String project, String region)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • listPagedCallable()

  • listCallable()

ListBgpRoutes

Retrieves a list of router bgp routes available to the specified project.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • listBgpRoutes(ListBgpRoutesRoutersRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • listBgpRoutes(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • listBgpRoutesPagedCallable()

  • listBgpRoutesCallable()

ListRoutePolicies

Retrieves a list of router route policy subresources available to the specified project.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • listRoutePolicies(ListRoutePoliciesRoutersRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • listRoutePolicies(String project, String region, String router)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • listRoutePoliciesPagedCallable()

  • listRoutePoliciesCallable()

Patch

Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • patchAsync(PatchRouterRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • patchAsync(String project, String region, String router, Router routerResource)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • patchOperationCallable()

  • patchCallable()

PatchRoutePolicy

Patches Route Policy

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • patchRoutePolicyAsync(PatchRoutePolicyRouterRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • patchRoutePolicyAsync(String project, String region, String router, RoutePolicy routePolicyResource)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • patchRoutePolicyOperationCallable()

  • patchRoutePolicyCallable()

Preview

Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • preview(PreviewRouterRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • preview(String project, String region, String router, Router routerResource)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • previewCallable()

Update

Updates the specified Router resource with the data included in the request. This method conforms to PUT semantics, which requests that the state of the target resource be created or replaced with the state defined by the representation enclosed in the request message payload.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • updateAsync(UpdateRouterRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • updateAsync(String project, String region, String router, Router routerResource)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • updateOperationCallable()

  • updateCallable()

UpdateRoutePolicy

Updates or creates new Route Policy

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • updateRoutePolicyAsync(UpdateRoutePolicyRouterRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • updateRoutePolicyAsync(String project, String region, String router, RoutePolicy routePolicyResource)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • updateRoutePolicyOperationCallable()

  • updateRoutePolicyCallable()

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 RoutersSettings 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
 RoutersSettings routersSettings =
     RoutersSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 RoutersClient routersClient = RoutersClient.create(routersSettings);
 

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
 RoutersSettings routersSettings = RoutersSettings.newBuilder().setEndpoint(myEndpoint).build();
 RoutersClient routersClient = RoutersClient.create(routersSettings);
 

Please refer to the GitHub repository's samples for more quickstart code snippets.

Inheritance

java.lang.Object > RoutersClient

Static Methods

create()

public static final RoutersClient create()

Constructs an instance of RoutersClient with default settings.

Returns
Type Description
RoutersClient
Exceptions
Type Description
IOException

create(RoutersSettings settings)

public static final RoutersClient create(RoutersSettings settings)

Constructs an instance of RoutersClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.

Parameter
Name Description
settings RoutersSettings
Returns
Type Description
RoutersClient
Exceptions
Type Description
IOException

create(RoutersStub stub)

public static final RoutersClient create(RoutersStub stub)

Constructs an instance of RoutersClient, using the given stub for making calls. This is for advanced usage - prefer using create(RoutersSettings).

Parameter
Name Description
stub RoutersStub
Returns
Type Description
RoutersClient

Constructors

RoutersClient(RoutersSettings settings)

protected RoutersClient(RoutersSettings settings)

Constructs an instance of RoutersClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.

Parameter
Name Description
settings RoutersSettings

RoutersClient(RoutersStub stub)

protected RoutersClient(RoutersStub stub)
Parameter
Name Description
stub RoutersStub

Methods

aggregatedList(AggregatedListRoutersRequest request)

public final RoutersClient.AggregatedListPagedResponse aggregatedList(AggregatedListRoutersRequest request)

Retrieves an aggregated list of routers. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to 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 (RoutersClient routersClient = RoutersClient.create()) {
   AggregatedListRoutersRequest request =
       AggregatedListRoutersRequest.newBuilder()
           .setFilter("filter-1274492040")
           .setIncludeAllScopes(true)
           .setMaxResults(1128457243)
           .setOrderBy("orderBy-1207110587")
           .setPageToken("pageToken873572522")
           .setProject("project-309310695")
           .setReturnPartialSuccess(true)
           .setServiceProjectNumber(-1293855239)
           .build();
   for (Map.Entry<String, RoutersScopedList> element :
       routersClient.aggregatedList(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
Name Description
request AggregatedListRoutersRequest

The request object containing all of the parameters for the API call.

Returns
Type Description
RoutersClient.AggregatedListPagedResponse

aggregatedList(String project)

public final RoutersClient.AggregatedListPagedResponse aggregatedList(String project)

Retrieves an aggregated list of routers. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to 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 (RoutersClient routersClient = RoutersClient.create()) {
   String project = "project-309310695";
   for (Map.Entry<String, RoutersScopedList> element :
       routersClient.aggregatedList(project).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
Name Description
project String

Project ID for this request.

Returns
Type Description
RoutersClient.AggregatedListPagedResponse

aggregatedListCallable()

public final UnaryCallable<AggregatedListRoutersRequest,RouterAggregatedList> aggregatedListCallable()

Retrieves an aggregated list of routers. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to 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 (RoutersClient routersClient = RoutersClient.create()) {
   AggregatedListRoutersRequest request =
       AggregatedListRoutersRequest.newBuilder()
           .setFilter("filter-1274492040")
           .setIncludeAllScopes(true)
           .setMaxResults(1128457243)
           .setOrderBy("orderBy-1207110587")
           .setPageToken("pageToken873572522")
           .setProject("project-309310695")
           .setReturnPartialSuccess(true)
           .setServiceProjectNumber(-1293855239)
           .build();
   while (true) {
     RouterAggregatedList response = routersClient.aggregatedListCallable().call(request);
     for (Map.Entry<String, RoutersScopedList> element : response.getItemsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
Type Description
UnaryCallable<AggregatedListRoutersRequest,RouterAggregatedList>

aggregatedListPagedCallable()

public final UnaryCallable<AggregatedListRoutersRequest,RoutersClient.AggregatedListPagedResponse> aggregatedListPagedCallable()

Retrieves an aggregated list of routers. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to 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 (RoutersClient routersClient = RoutersClient.create()) {
   AggregatedListRoutersRequest request =
       AggregatedListRoutersRequest.newBuilder()
           .setFilter("filter-1274492040")
           .setIncludeAllScopes(true)
           .setMaxResults(1128457243)
           .setOrderBy("orderBy-1207110587")
           .setPageToken("pageToken873572522")
           .setProject("project-309310695")
           .setReturnPartialSuccess(true)
           .setServiceProjectNumber(-1293855239)
           .build();
   ApiFuture<Map.Entry<String, RoutersScopedList>> future =
       routersClient.aggregatedListPagedCallable().futureCall(request);
   // Do something.
   for (Map.Entry<String, RoutersScopedList> element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
Type Description
UnaryCallable<AggregatedListRoutersRequest,AggregatedListPagedResponse>

awaitTermination(long duration, TimeUnit unit)

public boolean awaitTermination(long duration, TimeUnit unit)
Parameters
Name Description
duration long
unit TimeUnit
Returns
Type Description
boolean
Exceptions
Type Description
InterruptedException

close()

public final void close()

deleteAsync(DeleteRouterRequest request)

public final OperationFuture<Operation,Operation> deleteAsync(DeleteRouterRequest request)

Deletes the specified Router resource.

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 (RoutersClient routersClient = RoutersClient.create()) {
   DeleteRouterRequest request =
       DeleteRouterRequest.newBuilder()
           .setProject("project-309310695")
           .setRegion("region-934795532")
           .setRequestId("requestId693933066")
           .setRouter("router-925132983")
           .build();
   Operation response = routersClient.deleteAsync(request).get();
 }
 
Parameter
Name Description
request DeleteRouterRequest

The request object containing all of the parameters for the API call.

Returns
Type Description
Operation