def list_distributions(
self,
*,
config_overrides: Optional[CloudFrontClientConfig] = None,
marker: Optional["capo_cloudfront.types.string.string"] = None,
max_items: Optional["capo_cloudfront.types.integer.integer"] = None,
) -> "capo_cloudfront.types.list_distributions_result.ListDistributionsResult":
"""<p>List CloudFront distributions.</p>
Args:
marker: <p>Use this when paginating results to indicate where to begin in your list of distributions. The results include distributions in the list that occur after the marker. To get the next page of results, set the <code>Marker</code> to the value of the <code>NextMarker</code> from the current page's response (which is also the ID of the last distribution on that page).</p>
max_items: <p>The maximum number of distributions you want in the response body.</p>
Raises:
capo_cloudfront.errors.invalid_argument.InvalidArgument: <p>An argument is invalid.</p>
capo_cloudfront.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
def _handler(
req: "OperationRequest[capo_cloudfront.types.list_distributions_request.ListDistributionsRequest]",
) -> OperationResponse[
"capo_cloudfront.types.list_distributions_result.ListDistributionsResult"
]:
import capo_cloudfront._operations.cloudfront2020_05_31.list_distributions
output, http_response = (
capo_cloudfront._operations.cloudfront2020_05_31.list_distributions.list_distributions(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
def _redact_output(
output: "capo_cloudfront.types.list_distributions_result.ListDistributionsResult",
) -> dict[str, Any]:
import capo_cloudfront.types.list_distributions_result
return capo_cloudfront.types.list_distributions_result.redact_sensitive(
output
)
interceptors_, options_ = self.operation_options(
config_overrides,
OperationLogging("ListDistributions", redact_output=_redact_output),
)
input_: capo_cloudfront.types.list_distributions_request.ListDistributionsRequest = {}
if marker is not None:
input_["marker"] = marker
if max_items is not None:
input_["max_items"] = max_items
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output