code: @Override
      public AddApplicationReferenceDataSourceResult addApplicationReferenceDataSource(AddApplicationReferenceDataSourceRequest request) {
          request = beforeClientExecution(request);
          return executeAddApplicationReferenceDataSource(request);
      }
docs: <p>
  Adds a reference data source to an existing SQL-based Amazon Kinesis Data Analytics application.
  </p>
  <p>
  Kinesis Data Analytics reads reference data (that is, an Amazon S3 object) and creates an in-application table
  within your application. In the request, you provide the source (S3 bucket name and object key name), name of the
  in-application table to create, and the necessary mapping information that describes how data in an Amazon S3
  object maps to columns in the resulting in-application table.
  </p>
  
  @param addApplicationReferenceDataSourceRequest
  @return Result of the AddApplicationReferenceDataSource operation returned by the service.
  @throws ResourceNotFoundException
  Specified application can't be found.
  @throws ResourceInUseException
  The application is not available for this operation.
  @throws InvalidArgumentException
  The specified input parameter value is not valid.
  @throws ConcurrentModificationException
  Exception thrown as a result of concurrent modifications to an application. This error can be the result
  of attempting to modify an application without using the current application ID.
  @throws InvalidRequestException
  The request JSON is not valid for the operation.
  @sample AmazonKinesisAnalyticsV2.AddApplicationReferenceDataSource
  @see <a
  href="http://docs.aws.amazon.com/goto/WebAPI/kinesisanalyticsv2-2018-05-23/AddApplicationReferenceDataSource"
  target="_top">AWS API Documentation</a>