lib/oci/core/virtual_network_client.rb
# Lists the NAT gateways in the specified compartment. You may optionally specify a VCN OCID
# to filter the results by VCN.
#
# @param [String] compartment_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment.
# @param [Hash] opts the optional parameters
# @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
#   retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
# @option opts [String] :vcn_id The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VCN.
# @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a paginated
#   \"List\" call. For important details about how pagination works, see
#   [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
#
#   Example: `50`
#
# @option opts [String] :page For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
#   call. For important details about how pagination works, see
#   [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine).
#
# @option opts [String] :display_name A filter to return only resources that match the given display name exactly.
#
# @option opts [String] :sort_by The field to sort by. You can provide one sort order (`sortOrder`). Default order for
#   TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME
#   sort order is case sensitive.
#
#   **Note:** In general, some \"List\" operations (for example, `ListInstances`) let you
#   optionally filter by availability domain if the scope of the resource type is within a
#   single availability domain. If you call one of these \"List\" operations without specifying
#   an availability domain, the resources are grouped by availability domain, then sorted.
#
#   Allowed values are: TIMECREATED, DISPLAYNAME
# @option opts [String] :sort_order The sort order to use, either ascending (`ASC`) or descending (`DESC`). The DISPLAYNAME sort order
#   is case sensitive.
#
#   Allowed values are: ASC, DESC
# @option opts [String] :lifecycle_state A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
#
# @return [Response] A Response object with data of type Array<{OCI::Core::Models::NatGateway NatGateway}>
Lists the NAT gateways in the specified compartment. You may optionally specify a VCN OCID
to filter the results by VCN.
Lists the NAT gateways in the specified compartment . You may optionally specify a VCN OCID to filter the results by VCN .
def list_nat_gateways(compartment_id, opts = {})
      logger.debug 'Calling operation VirtualNetworkClient#list_nat_gateways.' if logger
      raise "Missing the required parameter 'compartment_id' when calling list_nat_gateways." if compartment_id.nil?
      if opts[:sort_by] && !%w[TIMECREATED DISPLAYNAME].include?(opts[:sort_by])
        raise 'Invalid value for "sort_by", must be one of TIMECREATED, DISPLAYNAME.'
      end
      if opts[:sort_order] && !%w[ASC DESC].include?(opts[:sort_order])
        raise 'Invalid value for "sort_order", must be one of ASC, DESC.'
      end
      if opts[:lifecycle_state] && !OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
        raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.'
      end
      path = '/natGateways'
      operation_signing_strategy = :standard
      query_params = {}
      query_params[:compartmentId] = compartment_id
      query_params[:vcnId] = opts[:vcn_id] if opts[:vcn_id]
      query_params[:limit] = opts[:limit] if opts[:limit]
      query_params[:page] = opts[:page] if opts[:page]
      query_params[:displayName] = opts[:display_name] if opts[:display_name]
      query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
      query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
      query_params[:lifecycleState] = opts[:lifecycle_state] if opts[:lifecycle_state]
      header_params = {}
      header_params[:accept] = 'application/json'
      header_params[:'content-type'] = 'application/json'
      post_body = nil
      OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'VirtualNetworkClient#list_nat_gateways') do
        @api_client.call_api(
          :GET,
          path,
          endpoint,
          header_params: header_params,
          query_params: query_params,
          operation_signing_strategy: operation_signing_strategy,
          body: post_body,
          return_type: 'Array<OCI::Core::Models::NatGateway>'
        )
      end
    end
def list_nat_gateways ( compartment_id , opts = { } ) logger . debug 'Calling operation VirtualNetworkClient#list_nat_gateways.' if logger raise "Missing the required parameter 'compartment_id' when calling list_nat_gateways." if compartment_id . nil? if opts [ :sort_by ] && ! %w[ TIMECREATED DISPLAYNAME ] . include? ( opts [ :sort_by ] ) raise 'Invalid value for "sort_by", must be one of TIMECREATED, DISPLAYNAME.' end if opts [ :sort_order ] && ! %w[ ASC DESC ] . include? ( opts [ :sort_order ] ) raise 'Invalid value for "sort_order", must be one of ASC, DESC.' end if opts [ :lifecycle_state ] && ! OCI :: Core :: Models :: NatGateway :: LIFECYCLE_STATE_ENUM . include? ( opts [ :lifecycle_state ] ) raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::Core::Models::NatGateway::LIFECYCLE_STATE_ENUM.' end path = '/natGateways' operation_signing_strategy = :standard query_params = { } query_params [ :compartmentId ] = compartment_id query_params [ :vcnId ] = opts [ :vcn_id ] if opts [ :vcn_id ] query_params [ :limit ] = opts [ :limit ] if opts [ :limit ] query_params [ :page ] = opts [ :page ] if opts [ :page ] query_params [ :displayName ] = opts [ :display_name ] if opts [ :display_name ] query_params [ :sortBy ] = opts [ :sort_by ] if opts [ :sort_by ] query_params [ :sortOrder ] = opts [ :sort_order ] if opts [ :sort_order ] query_params [ :lifecycleState ] = opts [ :lifecycle_state ] if opts [ :lifecycle_state ] header_params = { } header_params [ :accept ] = 'application/json' header_params [ :' content-type ' ] = 'application/json' post_body = nil OCI :: Retry . make_retrying_call ( applicable_retry_config ( opts ) , call_name : 'VirtualNetworkClient#list_nat_gateways' ) do @api_client . call_api ( :GET , path , endpoint , header_params : header_params , query_params : query_params , operation_signing_strategy : operation_signing_strategy , body : post_body , return_type : 'Array<OCI::Core::Models::NatGateway>' ) end end
Lists the NAT gateways in the specified compartment.
Lists the NAT gateways in the specified compartment .
# rubocop:disable Style/NegatedIf # Query Params # Header Params # rubocop:enable Style/NegatedIf # rubocop:disable Metrics/BlockLength # rubocop:enable Metrics/BlockLength
A Response object with data of type Array<{OCI::Core::Models::NatGateway NatGateway}>
A Response object with data of type Array< { OCI :: Core :: Models :: NatGateway NatGateway } >
Response
compartment_id
<not_specific>
opts
:lifecycle_state A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
: lifecycle_state A filter to return only resources that match the specified lifecycle state . The value is case insensitive .
<not_specific>
opts the optional parameters
opts the optional parameters