@SdkInternalApi
    final ListDistributionsByResponseHeadersPolicyIdResult executeListDistributionsByResponseHeadersPolicyId(
            ListDistributionsByResponseHeadersPolicyIdRequest listDistributionsByResponseHeadersPolicyIdRequest) {

        ExecutionContext executionContext = createExecutionContext(listDistributionsByResponseHeadersPolicyIdRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(Field.ClientExecuteTime);
        Request<ListDistributionsByResponseHeadersPolicyIdRequest> request = null;
        Response<ListDistributionsByResponseHeadersPolicyIdResult> response = null;

        try {
            awsRequestMetrics.startEvent(Field.RequestMarshallTime);
            try {
                request = new ListDistributionsByResponseHeadersPolicyIdRequestMarshaller().marshall(super
                        .beforeMarshalling(listDistributionsByResponseHeadersPolicyIdRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
                request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint);
                request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden());
                request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion());
                request.addHandlerContext(HandlerContextKey.SERVICE_ID, "CloudFront");
                request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListDistributionsByResponseHeadersPolicyId");
                request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig);

            } finally {
                awsRequestMetrics.endEvent(Field.RequestMarshallTime);
            }

            StaxResponseHandler<ListDistributionsByResponseHeadersPolicyIdResult> responseHandler = new StaxResponseHandler<ListDistributionsByResponseHeadersPolicyIdResult>(
                    new ListDistributionsByResponseHeadersPolicyIdResultStaxUnmarshaller());

            response = invoke(request, responseHandler, executionContext);

            return response.getAwsResponse();

        } finally {

            endClientExecution(awsRequestMetrics, request, response);
        }
    }
<p>
Gets a list of distribution IDs for distributions that have a cache behavior that's associated with the specified
response headers policy.
</p>
<p>
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 <code>NextMarker</code> value from the current
response as the <code>Marker</code> value in the subsequent request.
</p>

@param listDistributionsByResponseHeadersPolicyIdRequest
@return Result of the ListDistributionsByResponseHeadersPolicyId operation returned by the service.
@throws NoSuchResponseHeadersPolicyException
        The response headers policy does not exist.
@throws InvalidArgumentException
        An argument is invalid.
@throws AccessDeniedException
        Access denied.
@sample AmazonCloudFront.ListDistributionsByResponseHeadersPolicyId
@see <a
     href="http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByResponseHeadersPolicyId"
     target="_top">AWS API Documentation</a>
aws-java-sdk-cloudfront/src/main/java/com/amazonaws/services/cloudfront/AmazonCloudFrontClient.java