Skip to content

/AWS1/CL_EC2=>GETROUTESERVERROUTINGDATAB00()

About GetRouteServerRoutingDatabase

Gets the routing database for the specified route server. The Routing Information Base (RIB) serves as a database that stores all the routing information and network topology data collected by a router or routing system, such as routes learned from BGP peers. The RIB is constantly updated as new routing information is received or existing routes change. This ensures that the route server always has the most current view of the network topology and can make optimal routing decisions.

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, VPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

Route server supports the follow route table types:

  • VPC route tables not associated with subnets

  • Subnet route tables

  • Internet gateway route tables

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

Method Signature

IMPORTING

Required arguments:

iv_routeserverid TYPE /AWS1/EC2ROUTESERVERID /AWS1/EC2ROUTESERVERID

The ID of the route server for which to get the routing database.

Optional arguments:

iv_nexttoken TYPE /AWS1/EC2STRING /AWS1/EC2STRING

The token for the next page of results.

iv_maxresults TYPE /AWS1/EC2ROUTESERVERMAXRESULTS /AWS1/EC2ROUTESERVERMAXRESULTS

The maximum number of routing database entries to return in a single response.

iv_dryrun TYPE /AWS1/EC2BOOLEAN /AWS1/EC2BOOLEAN

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

it_filters TYPE /AWS1/CL_EC2FILTER=>TT_FILTERLIST TT_FILTERLIST

Filters to apply to the routing database query.

RETURNING

oo_output TYPE REF TO /aws1/cl_ec2getrouteserverro01 /AWS1/CL_EC2GETROUTESERVERRO01

Domain /AWS1/RT_ACCOUNT_ID
Primitive Type NUMC

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->/aws1/if_ec2~getrouteserverroutingdatab00(
  it_filters = VALUE /aws1/cl_ec2filter=>tt_filterlist(
    (
      new /aws1/cl_ec2filter(
        it_values = VALUE /aws1/cl_ec2valuestringlist_w=>tt_valuestringlist(
          ( new /aws1/cl_ec2valuestringlist_w( |string| ) )
        )
        iv_name = |string|
      )
    )
  )
  iv_dryrun = ABAP_TRUE
  iv_maxresults = 123
  iv_nexttoken = |string|
  iv_routeserverid = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_boolean = lo_result->get_areroutespersisted( ).
  LOOP AT lo_result->get_routes( ) into lo_row.
    lo_row_1 = lo_row.
    IF lo_row_1 IS NOT INITIAL.
      lv_routeserverendpointid = lo_row_1->get_routeserverendpointid( ).
      lv_routeserverpeerid = lo_row_1->get_routeserverpeerid( ).
      LOOP AT lo_row_1->get_routeinstallationdetails( ) into lo_row_2.
        lo_row_3 = lo_row_2.
        IF lo_row_3 IS NOT INITIAL.
          lv_routetableid = lo_row_3->get_routetableid( ).
          lv_routeserverrouteinstall = lo_row_3->get_routeinstallationstatus( ).
          lv_string = lo_row_3->get_routeinstallationstatrsn( ).
        ENDIF.
      ENDLOOP.
      lv_routeserverroutestatus = lo_row_1->get_routestatus( ).
      lv_string = lo_row_1->get_prefix( ).
      LOOP AT lo_row_1->get_aspaths( ) into lo_row_4.
        lo_row_5 = lo_row_4.
        IF lo_row_5 IS NOT INITIAL.
          lv_string = lo_row_5->get_value( ).
        ENDIF.
      ENDLOOP.
      lv_integer = lo_row_1->get_med( ).
      lv_string = lo_row_1->get_nexthopip( ).
    ENDIF.
  ENDLOOP.
  lv_string = lo_result->get_nexttoken( ).
ENDIF.