Skip to content

delete_application_reference_data_source

delete_application_reference_data_source(
    application_name: ApplicationName,
    current_application_version_id: ApplicationVersionId,
    reference_id: Id,
    *,
    config_overrides: Optional[KinesisAnalyticsClientConfig] = None,
) -> DeleteApplicationReferenceDataSourceResponse

This documentation is for version 1 of the Amazon Kinesis Data Analytics API, which only supports SQL applications. Version 2 of the API supports SQL and Java applications. For more information about version 2, see Amazon Kinesis Data Analytics API V2 Documentation.

Deletes a reference data source configuration from the specified application configuration.

If the application is running, Amazon Kinesis Analytics immediately removes the in-application table that you created using the AddApplicationReferenceDataSource operation.

This operation requires permissions to perform the kinesisanalytics.DeleteApplicationReferenceDataSource action.

Parameters:

  • application_name (ApplicationName) –

    Name of an existing application.

  • current_application_version_id (ApplicationVersionId) –

    Version of the application. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.

  • reference_id (Id) –

    ID of the reference data source. When you add a reference data source to your application using the AddApplicationReferenceDataSource, Amazon Kinesis Analytics assigns an ID. You can use the DescribeApplication operation to get the reference ID.

Raises:

Source code in docs_src/capo_kinesis_analytics/_services/kinesis_analytics.py
def delete_application_reference_data_source(
    self,
    application_name: "capo_kinesis_analytics.types.application_name.ApplicationName",
    current_application_version_id: "capo_kinesis_analytics.types.application_version_id.ApplicationVersionId",
    reference_id: "capo_kinesis_analytics.types.id.Id",
    *,
    config_overrides: Optional[KinesisAnalyticsClientConfig] = None,
) -> "capo_kinesis_analytics.types.delete_application_reference_data_source_response.DeleteApplicationReferenceDataSourceResponse":
    """<note> <p>This documentation is for version 1 of the Amazon Kinesis Data Analytics API, which only supports SQL applications. Version 2 of the API supports SQL and Java applications. For more information about version 2, see <a href="/kinesisanalytics/latest/apiv2/Welcome.html">Amazon Kinesis Data Analytics API V2 Documentation</a>.</p> </note> <p>Deletes a reference data source configuration from the specified application configuration.</p> <p>If the application is running, Amazon Kinesis Analytics immediately removes the in-application table that you created using the <a href="https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_AddApplicationReferenceDataSource.html">AddApplicationReferenceDataSource</a> operation. </p> <p>This operation requires permissions to perform the <code>kinesisanalytics.DeleteApplicationReferenceDataSource</code> action.</p>

    Args:
        application_name: <p>Name of an existing application.</p>
        current_application_version_id: <p>Version of the application. You can use the <a href="https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_DescribeApplication.html">DescribeApplication</a> operation to get the current application version. If the version specified is not the current version, the <code>ConcurrentModificationException</code> is returned.</p>
        reference_id: <p>ID of the reference data source. When you add a reference data source to your application using the <a href="https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_AddApplicationReferenceDataSource.html">AddApplicationReferenceDataSource</a>, Amazon Kinesis Analytics assigns an ID. You can use the <a href="https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_DescribeApplication.html">DescribeApplication</a> operation to get the reference ID. </p>

    Raises:
        capo_kinesis_analytics.errors.concurrent_modification_exception.ConcurrentModificationException: <p>Exception thrown as a result of concurrent modification to an application. For example, two individuals attempting to edit the same application at the same time.</p>
        capo_kinesis_analytics.errors.invalid_argument_exception.InvalidArgumentException: <p>Specified input parameter value is invalid.</p>
        capo_kinesis_analytics.errors.resource_in_use_exception.ResourceInUseException: <p>Application is not available for this operation.</p>
        capo_kinesis_analytics.errors.resource_not_found_exception.ResourceNotFoundException: <p>Specified application can't be found.</p>
        capo_kinesis_analytics.errors.unsupported_operation_exception.UnsupportedOperationException: <p>The request was rejected because a specified parameter is not supported or a specified resource is not valid for this operation. </p>
        capo_kinesis_analytics.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_kinesis_analytics.types.delete_application_reference_data_source_request.DeleteApplicationReferenceDataSourceRequest]",
    ) -> OperationResponse[
        "capo_kinesis_analytics.types.delete_application_reference_data_source_response.DeleteApplicationReferenceDataSourceResponse"
    ]:
        import capo_kinesis_analytics._operations.kinesis_analytics_20150814.delete_application_reference_data_source

        output, http_response = (
            capo_kinesis_analytics._operations.kinesis_analytics_20150814.delete_application_reference_data_source.delete_application_reference_data_source(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DeleteApplicationReferenceDataSource")
    )
    input_: capo_kinesis_analytics.types.delete_application_reference_data_source_request.DeleteApplicationReferenceDataSourceRequest = {
        "application_name": application_name,
        "current_application_version_id": current_application_version_id,
        "reference_id": reference_id,
    }

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output