// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`UpdateDirectQueryDataSource`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`data_source_name(impl Into<String>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::data_source_name) / [`set_data_source_name(Option<String>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::set_data_source_name):<br>required: **true**<br><p>A unique, user-defined label to identify the data source within your OpenSearch Service environment.</p><br>
/// - [`data_source_type(DirectQueryDataSourceType)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::data_source_type) / [`set_data_source_type(Option<DirectQueryDataSourceType>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::set_data_source_type):<br>required: **true**<br><p>The supported Amazon Web Services service that you want to use as the source for direct queries in OpenSearch Service.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::set_description):<br>required: **false**<br><p>An optional text field for providing additional context and details about the data source.</p><br>
/// - [`open_search_arns(impl Into<String>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::open_search_arns) / [`set_open_search_arns(Option<Vec::<String>>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::set_open_search_arns):<br>required: **false**<br><p>An optional list of Amazon Resource Names (ARNs) for the OpenSearch collections that are associated with the direct query data source. This field is required for CloudWatchLogs and SecurityLake datasource types.</p><br>
/// - [`data_source_access_policy(impl Into<String>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::data_source_access_policy) / [`set_data_source_access_policy(Option<String>)`](crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::set_data_source_access_policy):<br>required: **false**<br><p>An optional IAM access policy document that defines the updated permissions for accessing the direct query data source. The policy document must be in valid JSON format and follow IAM policy syntax. If not specified, the existing access policy if present remains unchanged.</p><br>
/// - On success, responds with [`UpdateDirectQueryDataSourceOutput`](crate::operation::update_direct_query_data_source::UpdateDirectQueryDataSourceOutput) with field(s):
/// - [`data_source_arn(Option<String>)`](crate::operation::update_direct_query_data_source::UpdateDirectQueryDataSourceOutput::data_source_arn): <p>The unique, system-generated identifier that represents the data source.</p>
/// - On failure, responds with [`SdkError<UpdateDirectQueryDataSourceError>`](crate::operation::update_direct_query_data_source::UpdateDirectQueryDataSourceError)
pub fn update_direct_query_data_source(
&self,
) -> crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder {
crate::operation::update_direct_query_data_source::builders::UpdateDirectQueryDataSourceFluentBuilder::new(self.handle.clone())
}
}