createConfiguredTable method
Creates a new configured table resource.
May throw AccessDeniedException.
May throw ConflictException.
May throw InternalServerException.
May throw ResourceNotFoundException.
May throw ServiceQuotaExceededException.
May throw ThrottlingException.
May throw ValidationException.
Parameter allowedColumns :
The columns of the underlying table that can be used by collaborations or
analysis rules.
Parameter analysisMethod :
The analysis method allowed for the configured tables.
DIRECT_QUERY allows SQL queries to be run directly on this
table.
DIRECT_JOB allows PySpark jobs to be run directly on this
table.
MULTIPLE allows both SQL queries and PySpark jobs to be run
directly on this table.
Parameter name :
The name of the configured table.
Parameter tableReference :
A reference to the table being configured.
Parameter description :
A description for the configured table.
Parameter selectedAnalysisMethods :
The analysis methods to enable for the configured table. When configured,
you must specify at least two analysis methods.
Parameter tags :
An optional label that you can assign to a resource when you create it.
Each tag consists of a key and an optional value, both of which you
define. When you use tagging, you can also use tag-based access control in
IAM policies to control access to this resource.
Implementation
Future<CreateConfiguredTableOutput> createConfiguredTable({
required List<String> allowedColumns,
required AnalysisMethod analysisMethod,
required String name,
required TableReference tableReference,
String? description,
List<SelectedAnalysisMethod>? selectedAnalysisMethods,
Map<String, String>? tags,
}) async {
final $payload = <String, dynamic>{
'allowedColumns': allowedColumns,
'analysisMethod': analysisMethod.value,
'name': name,
'tableReference': tableReference,
if (description != null) 'description': description,
if (selectedAnalysisMethods != null)
'selectedAnalysisMethods':
selectedAnalysisMethods.map((e) => e.value).toList(),
if (tags != null) 'tags': tags,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri: '/configuredTables',
exceptionFnMap: _exceptionFns,
);
return CreateConfiguredTableOutput.fromJson(response);
}