deleteApplicationOutput method
Deletes the output destination configuration from your SQL-based Kinesis Data Analytics application's configuration. Kinesis Data Analytics will no longer write data from the corresponding in-application stream to the external output destination.
May throw ResourceNotFoundException. May throw ResourceInUseException. May throw InvalidArgumentException. May throw ConcurrentModificationException. May throw InvalidRequestException.
Parameter applicationName
:
The application name.
Parameter currentApplicationVersionId
:
The application version. 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.
Parameter outputId
:
The ID of the configuration to delete. Each output configuration that is
added to the application (either when the application is created or later)
using the AddApplicationOutput operation has a unique ID. You need
to provide the ID to uniquely identify the output configuration that you
want to delete from the application configuration. You can use the
DescribeApplication operation to get the specific
OutputId
.
Implementation
Future<DeleteApplicationOutputResponse> deleteApplicationOutput({
required String applicationName,
required int currentApplicationVersionId,
required String outputId,
}) async {
ArgumentError.checkNotNull(applicationName, 'applicationName');
_s.validateStringLength(
'applicationName',
applicationName,
1,
128,
isRequired: true,
);
ArgumentError.checkNotNull(
currentApplicationVersionId, 'currentApplicationVersionId');
_s.validateNumRange(
'currentApplicationVersionId',
currentApplicationVersionId,
1,
999999999,
isRequired: true,
);
ArgumentError.checkNotNull(outputId, 'outputId');
_s.validateStringLength(
'outputId',
outputId,
1,
50,
isRequired: true,
);
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'KinesisAnalytics_20180523.DeleteApplicationOutput'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'ApplicationName': applicationName,
'CurrentApplicationVersionId': currentApplicationVersionId,
'OutputId': outputId,
},
);
return DeleteApplicationOutputResponse.fromJson(jsonResponse.body);
}