@SdkInternalApi
    final DescribePredictorResult executeDescribePredictor(DescribePredictorRequest describePredictorRequest) {

        ExecutionContext executionContext = createExecutionContext(describePredictorRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(Field.ClientExecuteTime);
        Request<DescribePredictorRequest> request = null;
        Response<DescribePredictorResult> response = null;

        try {
            awsRequestMetrics.startEvent(Field.RequestMarshallTime);
            try {
                request = new DescribePredictorRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(describePredictorRequest));
                // 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, "forecast");
                request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DescribePredictor");
                request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig);

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

            HttpResponseHandler<AmazonWebServiceResponse<DescribePredictorResult>> responseHandler = protocolFactory.createResponseHandler(
                    new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DescribePredictorResultJsonUnmarshaller());
            response = invoke(request, responseHandler, executionContext);

            return response.getAwsResponse();

        } finally {

            endClientExecution(awsRequestMetrics, request, response);
        }
    }
<note>
<p>
This operation is only valid for legacy predictors created with CreatePredictor. If you are not using a legacy
predictor, use <a>DescribeAutoPredictor</a>.
</p>
</note>
<p>
Describes a predictor created using the <a>CreatePredictor</a> operation.
</p>
<p>
In addition to listing the properties provided in the <code>CreatePredictor</code> request, this operation lists
the following properties:
</p>
<ul>
<li>
<p>
<code>DatasetImportJobArns</code> - The dataset import jobs used to import training data.
</p>
</li>
<li>
<p>
<code>AutoMLAlgorithmArns</code> - If AutoML is performed, the algorithms that were evaluated.
</p>
</li>
<li>
<p>
<code>CreationTime</code>
</p>
</li>
<li>
<p>
<code>LastModificationTime</code>
</p>
</li>
<li>
<p>
<code>Status</code>
</p>
</li>
<li>
<p>
<code>Message</code> - If an error occurred, information about the error.
</p>
</li>
</ul>

@param describePredictorRequest
@return Result of the DescribePredictor operation returned by the service.
@throws InvalidInputException
        We can't process the request because it includes an invalid value or a value that exceeds the valid
        range.
@throws ResourceNotFoundException
        We can't find a resource with that Amazon Resource Name (ARN). Check the ARN and try again.
@sample AmazonForecast.DescribePredictor
@see <a href="http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribePredictor" target="_top">AWS API
     Documentation</a>
aws-java-sdk-forecast/src/main/java/com/amazonaws/services/forecast/AmazonForecastClient.java