listFunctions method

Future<ListFunctionsResult> listFunctions({
  1. String? marker,
  2. int? maxItems,
  3. FunctionStage? stage,
})

Gets a list of all CloudFront functions in your Amazon Web Services account.

You can optionally apply a filter to return only the functions that are in the specified stage, either DEVELOPMENT or LIVE.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

May throw InvalidArgument. May throw UnsupportedOperation.

Parameter marker : Use this field when paginating results to indicate where to begin in your list of functions. The response includes functions in the list that occur after the marker. To get the next page of the list, set this field's value to the value of NextMarker from the current page's response.

Parameter maxItems : The maximum number of functions that you want in the response.

Parameter stage : An optional filter to return only the functions that are in the specified stage, either DEVELOPMENT or LIVE.

Implementation

Future<ListFunctionsResult> listFunctions({
  String? marker,
  int? maxItems,
  FunctionStage? stage,
}) async {
  final $query = <String, List<String>>{
    if (marker != null) 'Marker': [marker],
    if (maxItems != null) 'MaxItems': [maxItems.toString()],
    if (stage != null) 'Stage': [stage.value],
  };
  final $result = await _protocol.sendRaw(
    method: 'GET',
    requestUri: '/2020-05-31/function',
    queryParams: $query,
    exceptionFnMap: _exceptionFns,
  );
  final $elem = await _s.xmlFromResponse($result);
  return ListFunctionsResult(
    functionList: FunctionList.fromXml($elem),
  );
}