code: @Override
      public ListElasticsearchVersionsResult listElasticsearchVersions(ListElasticsearchVersionsRequest request) {
          request = beforeClientExecution(request);
          return executeListElasticsearchVersions(request);
      }
docs: <p>
  List all supported Elasticsearch versions
  </p>
  
  @param listElasticsearchVersionsRequest
  Container for the parameters to the <code> <a>ListElasticsearchVersions</a> </code> operation.
  <p>
  Use <code> <a>MaxResults</a> </code> to control the maximum number of results to retrieve in a single
  call.
  </p>
  <p>
  Use <code> <a>NextToken</a> </code> in response to retrieve more results. If the received response does
  not contain a NextToken, then there are no more results to retrieve.
  </p>
  @return Result of the ListElasticsearchVersions operation returned by the service.
  @throws BaseException
  An error occurred while processing the request.
  @throws InternalException
  The request processing has failed because of an unknown error, exception or failure (the failure is
  internal to the service) . Gives http status code of 500.
  @throws ResourceNotFoundException
  An exception for accessing or deleting a resource that does not exist. Gives http status code of 400.
  @throws ValidationException
  An exception for missing / invalid input fields. Gives http status code of 400.
  @sample AWSElasticsearch.ListElasticsearchVersions