// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package athena import ( "time" "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/internal/awsutil" ) var _ aws.Config var _ = awsutil.Prettify // Contains metadata for a column in a table. type Column struct { _ struct{} `type:"structure"` // Optional information about the column. Comment *string `type:"string"` // The name of the column. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The data type of the column. Type *string `type:"string"` } // String returns the string representation func (s Column) String() string { return awsutil.Prettify(s) } // Information about the columns in a query execution result. type ColumnInfo struct { _ struct{} `type:"structure"` // Indicates whether values in the column are case-sensitive. CaseSensitive *bool `type:"boolean"` // The catalog to which the query results belong. CatalogName *string `type:"string"` // A column label. Label *string `type:"string"` // The name of the column. // // Name is a required field Name *string `type:"string" required:"true"` // Indicates the column's nullable status. Nullable ColumnNullable `type:"string" enum:"true"` // For DECIMAL data types, specifies the total number of digits, up to 38. For // performance reasons, we recommend up to 18 digits. Precision *int64 `type:"integer"` // For DECIMAL data types, specifies the total number of digits in the fractional // part of the value. Defaults to 0. Scale *int64 `type:"integer"` // The schema name (database name) to which the query results belong. SchemaName *string `type:"string"` // The table name for the query results. TableName *string `type:"string"` // The data type of the column. // // Type is a required field Type *string `type:"string" required:"true"` } // String returns the string representation func (s ColumnInfo) String() string { return awsutil.Prettify(s) } // Contains information about a data catalog in an AWS account. type DataCatalog struct { _ struct{} `type:"structure"` // An optional description of the data catalog. Description *string `min:"1" type:"string"` // The name of the data catalog. The catalog name must be unique for the AWS // account and can use a maximum of 128 alphanumeric, underscore, at sign, or // hyphen characters. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // Specifies the Lambda function or functions to use for the data catalog. This // is a mapping whose values depend on the catalog type. // // * For the HIVE data catalog type, use the following syntax. The metadata-function // parameter is required. The sdk-version parameter is optional and defaults // to the currently supported version. metadata-function=lambda_arn, sdk-version=version_number // // * For the LAMBDA data catalog type, use one of the following sets of required // parameters, but not both. If you have one Lambda function that processes // metadata and another for reading the actual data, use the following syntax. // Both parameters are required. metadata-function=lambda_arn, record-function=lambda_arn // If you have a composite Lambda function that processes both metadata and // data, use the following syntax to specify your Lambda function. function=lambda_arn // // * The GLUE type has no parameters. Parameters map[string]string `type:"map"` // The type of data catalog: LAMBDA for a federated catalog, GLUE for AWS Glue // Catalog, or HIVE for an external hive metastore. // // Type is a required field Type DataCatalogType `type:"string" required:"true" enum:"true"` } // String returns the string representation func (s DataCatalog) String() string { return awsutil.Prettify(s) } // The summary information for the data catalog, which includes its name and // type. type DataCatalogSummary struct { _ struct{} `type:"structure"` // The name of the data catalog. CatalogName *string `min:"1" type:"string"` // The data catalog type. Type DataCatalogType `type:"string" enum:"true"` } // String returns the string representation func (s DataCatalogSummary) String() string { return awsutil.Prettify(s) } // Contains metadata information for a database in a data catalog. type Database struct { _ struct{} `type:"structure"` // An optional description of the database. Description *string `min:"1" type:"string"` // The name of the database. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A set of custom key/value pairs. Parameters map[string]string `type:"map"` } // String returns the string representation func (s Database) String() string { return awsutil.Prettify(s) } // A piece of data (a field in the table). type Datum struct { _ struct{} `type:"structure"` // The value of the datum. VarCharValue *string `type:"string"` } // String returns the string representation func (s Datum) String() string { return awsutil.Prettify(s) } // If query results are encrypted in Amazon S3, indicates the encryption option // used (for example, SSE-KMS or CSE-KMS) and key information. type EncryptionConfiguration struct { _ struct{} `type:"structure"` // Indicates whether Amazon S3 server-side encryption with Amazon S3-managed // keys (SSE-S3), server-side encryption with KMS-managed keys (SSE-KMS), or // client-side encryption with KMS-managed keys (CSE-KMS) is used. // // If a query runs in a workgroup and the workgroup overrides client-side settings, // then the workgroup's setting for encryption is used. It specifies whether // query results must be encrypted, for all queries that run in this workgroup. // // EncryptionOption is a required field EncryptionOption EncryptionOption `type:"string" required:"true" enum:"true"` // For SSE-KMS and CSE-KMS, this is the KMS key ARN or ID. KmsKey *string `type:"string"` } // String returns the string representation func (s EncryptionConfiguration) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *EncryptionConfiguration) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "EncryptionConfiguration"} if len(s.EncryptionOption) == 0 { invalidParams.Add(aws.NewErrParamRequired("EncryptionOption")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A query, where QueryString is the list of SQL query statements that comprise // the query. type NamedQuery struct { _ struct{} `type:"structure"` // The database to which the query belongs. // // Database is a required field Database *string `min:"1" type:"string" required:"true"` // The query description. Description *string `min:"1" type:"string"` // The query name. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The unique identifier of the query. NamedQueryId *string `type:"string"` // The SQL query statements that comprise the query. // // QueryString is a required field QueryString *string `min:"1" type:"string" required:"true"` // The name of the workgroup that contains the named query. WorkGroup *string `type:"string"` } // String returns the string representation func (s NamedQuery) String() string { return awsutil.Prettify(s) } // Information about a single instance of a query execution. type QueryExecution struct { _ struct{} `type:"structure"` // The SQL query statements which the query execution ran. Query *string `min:"1" type:"string"` // The database in which the query execution occurred. QueryExecutionContext *QueryExecutionContext `type:"structure"` // The unique identifier for each query execution. QueryExecutionId *string `type:"string"` // The location in Amazon S3 where query results were stored and the encryption // option, if any, used for query results. These are known as "client-side settings". // If workgroup settings override client-side settings, then the query uses // the location for the query results and the encryption configuration that // are specified for the workgroup. ResultConfiguration *ResultConfiguration `type:"structure"` // The type of query statement that was run. DDL indicates DDL query statements. // DML indicates DML (Data Manipulation Language) query statements, such as // CREATE TABLE AS SELECT. UTILITY indicates query statements other than DDL // and DML, such as SHOW CREATE TABLE, or DESCRIBE . StatementType StatementType `type:"string" enum:"true"` // Query execution statistics, such as the amount of data scanned, the amount // of time that the query took to process, and the type of statement that was // run. Statistics *QueryExecutionStatistics `type:"structure"` // The completion date, current state, submission time, and state change reason // (if applicable) for the query execution. Status *QueryExecutionStatus `type:"structure"` // The name of the workgroup in which the query ran. WorkGroup *string `type:"string"` } // String returns the string representation func (s QueryExecution) String() string { return awsutil.Prettify(s) } // The database and data catalog context in which the query execution occurs. type QueryExecutionContext struct { _ struct{} `type:"structure"` // The name of the data catalog used in the query execution. Catalog *string `min:"1" type:"string"` // The name of the database used in the query execution. Database *string `min:"1" type:"string"` } // String returns the string representation func (s QueryExecutionContext) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *QueryExecutionContext) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "QueryExecutionContext"} if s.Catalog != nil && len(*s.Catalog) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Catalog", 1)) } if s.Database != nil && len(*s.Database) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Database", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The amount of data scanned during the query execution and the amount of time // that it took to execute, and the type of statement that was run. type QueryExecutionStatistics struct { _ struct{} `type:"structure"` // The location and file name of a data manifest file. The manifest file is // saved to the Athena query results location in Amazon S3. The manifest file // tracks files that the query wrote to Amazon S3. If the query fails, the manifest // file also tracks files that the query intended to write. The manifest is // useful for identifying orphaned files resulting from a failed query. For // more information, see Working with Query Results, Output Files, and Query // History (https://docs.aws.amazon.com/athena/latest/ug/querying.html) in the // Amazon Athena User Guide. DataManifestLocation *string `type:"string"` // The number of bytes in the data that was queried. DataScannedInBytes *int64 `type:"long"` // The number of milliseconds that the query took to execute. EngineExecutionTimeInMillis *int64 `type:"long"` // The number of milliseconds that Athena took to plan the query processing // flow. This includes the time spent retrieving table partitions from the data // source. Note that because the query engine performs the query planning, query // planning time is a subset of engine processing time. QueryPlanningTimeInMillis *int64 `type:"long"` // The number of milliseconds that the query was in your query queue waiting // for resources. Note that if transient errors occur, Athena might automatically // add the query back to the queue. QueryQueueTimeInMillis *int64 `type:"long"` // The number of milliseconds that Athena took to finalize and publish the query // results after the query engine finished running the query. ServiceProcessingTimeInMillis *int64 `type:"long"` // The number of milliseconds that Athena took to run the query. TotalExecutionTimeInMillis *int64 `type:"long"` } // String returns the string representation func (s QueryExecutionStatistics) String() string { return awsutil.Prettify(s) } // The completion date, current state, submission time, and state change reason // (if applicable) for the query execution. type QueryExecutionStatus struct { _ struct{} `type:"structure"` // The date and time that the query completed. CompletionDateTime *time.Time `type:"timestamp"` // The state of query execution. QUEUED indicates that the query has been submitted // to the service, and Athena will execute the query as soon as resources are // available. RUNNING indicates that the query is in execution phase. SUCCEEDED // indicates that the query completed without errors. FAILED indicates that // the query experienced an error and did not complete processing. CANCELLED // indicates that a user input interrupted query execution. // // Athena automatically retries your queries in cases of certain transient errors. // As a result, you may see the query state transition from RUNNING or FAILED // to QUEUED. State QueryExecutionState `type:"string" enum:"true"` // Further detail about the status of the query. StateChangeReason *string `type:"string"` // The date and time that the query was submitted. SubmissionDateTime *time.Time `type:"timestamp"` } // String returns the string representation func (s QueryExecutionStatus) String() string { return awsutil.Prettify(s) } // The location in Amazon S3 where query results are stored and the encryption // option, if any, used for query results. These are known as "client-side settings". // If workgroup settings override client-side settings, then the query uses // the workgroup settings. type ResultConfiguration struct { _ struct{} `type:"structure"` // If query results are encrypted in Amazon S3, indicates the encryption option // used (for example, SSE-KMS or CSE-KMS) and key information. This is a client-side // setting. If workgroup settings override client-side settings, then the query // uses the encryption configuration that is specified for the workgroup, and // also uses the location for storing query results specified in the workgroup. // See WorkGroupConfiguration$EnforceWorkGroupConfiguration and Workgroup Settings // Override Client-Side Settings (https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html). EncryptionConfiguration *EncryptionConfiguration `type:"structure"` // The location in Amazon S3 where your query results are stored, such as s3://path/to/query/bucket/. // To run the query, you must specify the query results location using one of // the ways: either for individual queries using either this setting (client-side), // or in the workgroup, using WorkGroupConfiguration. If none of them is set, // Athena issues an error that no output location is provided. For more information, // see Query Results (https://docs.aws.amazon.com/athena/latest/ug/querying.html). // If workgroup settings override client-side settings, then the query uses // the settings specified for the workgroup. See WorkGroupConfiguration$EnforceWorkGroupConfiguration. OutputLocation *string `type:"string"` } // String returns the string representation func (s ResultConfiguration) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *ResultConfiguration) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "ResultConfiguration"} if s.EncryptionConfiguration != nil { if err := s.EncryptionConfiguration.Validate(); err != nil { invalidParams.AddNested("EncryptionConfiguration", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The information about the updates in the query results, such as output location // and encryption configuration for the query results. type ResultConfigurationUpdates struct { _ struct{} `type:"structure"` // The encryption configuration for the query results. EncryptionConfiguration *EncryptionConfiguration `type:"structure"` // The location in Amazon S3 where your query results are stored, such as s3://path/to/query/bucket/. // For more information, see Query Results (https://docs.aws.amazon.com/athena/latest/ug/querying.html) // If workgroup settings override client-side settings, then the query uses // the location for the query results and the encryption configuration that // are specified for the workgroup. The "workgroup settings override" is specified // in EnforceWorkGroupConfiguration (true/false) in the WorkGroupConfiguration. // See WorkGroupConfiguration$EnforceWorkGroupConfiguration. OutputLocation *string `type:"string"` // If set to "true", indicates that the previously-specified encryption configuration // (also known as the client-side setting) for queries in this workgroup should // be ignored and set to null. If set to "false" or not set, and a value is // present in the EncryptionConfiguration in ResultConfigurationUpdates (the // client-side setting), the EncryptionConfiguration in the workgroup's ResultConfiguration // will be updated with the new value. For more information, see Workgroup Settings // Override Client-Side Settings (https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html). RemoveEncryptionConfiguration *bool `type:"boolean"` // If set to "true", indicates that the previously-specified query results location // (also known as a client-side setting) for queries in this workgroup should // be ignored and set to null. If set to "false" or not set, and a value is // present in the OutputLocation in ResultConfigurationUpdates (the client-side // setting), the OutputLocation in the workgroup's ResultConfiguration will // be updated with the new value. For more information, see Workgroup Settings // Override Client-Side Settings (https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html). RemoveOutputLocation *bool `type:"boolean"` } // String returns the string representation func (s ResultConfigurationUpdates) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *ResultConfigurationUpdates) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "ResultConfigurationUpdates"} if s.EncryptionConfiguration != nil { if err := s.EncryptionConfiguration.Validate(); err != nil { invalidParams.AddNested("EncryptionConfiguration", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The metadata and rows that comprise a query result set. The metadata describes // the column structure and data types. To return a ResultSet object, use GetQueryResults. type ResultSet struct { _ struct{} `type:"structure"` // The metadata that describes the column structure and data types of a table // of query results. ResultSetMetadata *ResultSetMetadata `type:"structure"` // The rows in the table. Rows []Row `type:"list"` } // String returns the string representation func (s ResultSet) String() string { return awsutil.Prettify(s) } // The metadata that describes the column structure and data types of a table // of query results. To return a ResultSetMetadata object, use GetQueryResults. type ResultSetMetadata struct { _ struct{} `type:"structure"` // Information about the columns returned in a query result metadata. ColumnInfo []ColumnInfo `type:"list"` } // String returns the string representation func (s ResultSetMetadata) String() string { return awsutil.Prettify(s) } // The rows that comprise a query result table. type Row struct { _ struct{} `type:"structure"` // The data that populates a row in a query result table. Data []Datum `type:"list"` } // String returns the string representation func (s Row) String() string { return awsutil.Prettify(s) } // Contains metadata for a table. type TableMetadata struct { _ struct{} `type:"structure"` // A list of the columns in the table. Columns []Column `type:"list"` // The time that the table was created. CreateTime *time.Time `type:"timestamp"` // The last time the table was accessed. LastAccessTime *time.Time `type:"timestamp"` // The name of the table. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A set of custom key/value pairs for table properties. Parameters map[string]string `type:"map"` // A list of the partition keys in the table. PartitionKeys []Column `type:"list"` // The type of table. In Athena, only EXTERNAL_TABLE is supported. TableType *string `type:"string"` } // String returns the string representation func (s TableMetadata) String() string { return awsutil.Prettify(s) } // A label that you assign to a resource. In Athena, a resource can be a workgroup // or data catalog. Each tag consists of a key and an optional value, both of // which you define. For example, you can use tags to categorize Athena workgroups // or data catalogs by purpose, owner, or environment. Use a consistent set // of tag keys to make it easier to search and filter workgroups or data catalogs // in your account. For best practices, see Tagging Best Practices (https://aws.amazon.com/answers/account-management/aws-tagging-strategies/). // Tag keys can be from 1 to 128 UTF-8 Unicode characters, and tag values can // be from 0 to 256 UTF-8 Unicode characters. Tags can use letters and numbers // representable in UTF-8, and the following characters: + - = . _ : / @. Tag // keys and values are case-sensitive. Tag keys must be unique per resource. // If you specify more than one tag, separate them by commas. type Tag struct { _ struct{} `type:"structure"` // A tag key. The tag key length is from 1 to 128 Unicode characters in UTF-8. // You can use letters and numbers representable in UTF-8, and the following // characters: + - = . _ : / @. Tag keys are case-sensitive and must be unique // per resource. Key *string `min:"1" type:"string"` // A tag value. The tag value length is from 0 to 256 Unicode characters in // UTF-8. You can use letters and numbers representable in UTF-8, and the following // characters: + - = . _ : / @. Tag values are case-sensitive. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "Tag"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about a named query ID that could not be processed. type UnprocessedNamedQueryId struct { _ struct{} `type:"structure"` // The error code returned when the processing request for the named query failed, // if applicable. ErrorCode *string `min:"1" type:"string"` // The error message returned when the processing request for the named query // failed, if applicable. ErrorMessage *string `type:"string"` // The unique identifier of the named query. NamedQueryId *string `type:"string"` } // String returns the string representation func (s UnprocessedNamedQueryId) String() string { return awsutil.Prettify(s) } // Describes a query execution that failed to process. type UnprocessedQueryExecutionId struct { _ struct{} `type:"structure"` // The error code returned when the query execution failed to process, if applicable. ErrorCode *string `min:"1" type:"string"` // The error message returned when the query execution failed to process, if // applicable. ErrorMessage *string `type:"string"` // The unique identifier of the query execution. QueryExecutionId *string `type:"string"` } // String returns the string representation func (s UnprocessedQueryExecutionId) String() string { return awsutil.Prettify(s) } // A workgroup, which contains a name, description, creation time, state, and // other configuration, listed under WorkGroup$Configuration. Each workgroup // enables you to isolate queries for you or your group of users from other // queries in the same account, to configure the query results location and // the encryption configuration (known as workgroup settings), to enable sending // query metrics to Amazon CloudWatch, and to establish per-query data usage // control limits for all queries in a workgroup. The workgroup settings override // is specified in EnforceWorkGroupConfiguration (true/false) in the WorkGroupConfiguration. // See WorkGroupConfiguration$EnforceWorkGroupConfiguration. type WorkGroup struct { _ struct{} `type:"structure"` // The configuration of the workgroup, which includes the location in Amazon // S3 where query results are stored, the encryption configuration, if any, // used for query results; whether the Amazon CloudWatch Metrics are enabled // for the workgroup; whether workgroup settings override client-side settings; // and the data usage limits for the amount of data scanned per query or per // workgroup. The workgroup settings override is specified in EnforceWorkGroupConfiguration // (true/false) in the WorkGroupConfiguration. See WorkGroupConfiguration$EnforceWorkGroupConfiguration. Configuration *WorkGroupConfiguration `type:"structure"` // The date and time the workgroup was created. CreationTime *time.Time `type:"timestamp"` // The workgroup description. Description *string `type:"string"` // The workgroup name. // // Name is a required field Name *string `type:"string" required:"true"` // The state of the workgroup: ENABLED or DISABLED. State WorkGroupState `type:"string" enum:"true"` } // String returns the string representation func (s WorkGroup) String() string { return awsutil.Prettify(s) } // The configuration of the workgroup, which includes the location in Amazon // S3 where query results are stored, the encryption option, if any, used for // query results, whether the Amazon CloudWatch Metrics are enabled for the // workgroup and whether workgroup settings override query settings, and the // data usage limits for the amount of data scanned per query or per workgroup. // The workgroup settings override is specified in EnforceWorkGroupConfiguration // (true/false) in the WorkGroupConfiguration. See WorkGroupConfiguration$EnforceWorkGroupConfiguration. type WorkGroupConfiguration struct { _ struct{} `type:"structure"` // The upper data usage limit (cutoff) for the amount of bytes a single query // in a workgroup is allowed to scan. BytesScannedCutoffPerQuery *int64 `min:"1e+07" type:"long"` // If set to "true", the settings for the workgroup override client-side settings. // If set to "false", client-side settings are used. For more information, see // Workgroup Settings Override Client-Side Settings (https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html). EnforceWorkGroupConfiguration *bool `type:"boolean"` // Indicates that the Amazon CloudWatch metrics are enabled for the workgroup. PublishCloudWatchMetricsEnabled *bool `type:"boolean"` // If set to true, allows members assigned to a workgroup to reference Amazon // S3 Requester Pays buckets in queries. If set to false, workgroup members // cannot query data from Requester Pays buckets, and queries that retrieve // data from Requester Pays buckets cause an error. The default is false. For // more information about Requester Pays buckets, see Requester Pays Buckets // (https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html) // in the Amazon Simple Storage Service Developer Guide. RequesterPaysEnabled *bool `type:"boolean"` // The configuration for the workgroup, which includes the location in Amazon // S3 where query results are stored and the encryption option, if any, used // for query results. To run the query, you must specify the query results location // using one of the ways: either in the workgroup using this setting, or for // individual queries (client-side), using ResultConfiguration$OutputLocation. // If none of them is set, Athena issues an error that no output location is // provided. For more information, see Query Results (https://docs.aws.amazon.com/athena/latest/ug/querying.html). ResultConfiguration *ResultConfiguration `type:"structure"` } // String returns the string representation func (s WorkGroupConfiguration) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkGroupConfiguration) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "WorkGroupConfiguration"} if s.BytesScannedCutoffPerQuery != nil && *s.BytesScannedCutoffPerQuery < 1e+07 { invalidParams.Add(aws.NewErrParamMinValue("BytesScannedCutoffPerQuery", 1e+07)) } if s.ResultConfiguration != nil { if err := s.ResultConfiguration.Validate(); err != nil { invalidParams.AddNested("ResultConfiguration", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The configuration information that will be updated for this workgroup, which // includes the location in Amazon S3 where query results are stored, the encryption // option, if any, used for query results, whether the Amazon CloudWatch Metrics // are enabled for the workgroup, whether the workgroup settings override the // client-side settings, and the data usage limit for the amount of bytes scanned // per query, if it is specified. type WorkGroupConfigurationUpdates struct { _ struct{} `type:"structure"` // The upper limit (cutoff) for the amount of bytes a single query in a workgroup // is allowed to scan. BytesScannedCutoffPerQuery *int64 `min:"1e+07" type:"long"` // If set to "true", the settings for the workgroup override client-side settings. // If set to "false" client-side settings are used. For more information, see // Workgroup Settings Override Client-Side Settings (https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html). EnforceWorkGroupConfiguration *bool `type:"boolean"` // Indicates whether this workgroup enables publishing metrics to Amazon CloudWatch. PublishCloudWatchMetricsEnabled *bool `type:"boolean"` // Indicates that the data usage control limit per query is removed. WorkGroupConfiguration$BytesScannedCutoffPerQuery RemoveBytesScannedCutoffPerQuery *bool `type:"boolean"` // If set to true, allows members assigned to a workgroup to specify Amazon // S3 Requester Pays buckets in queries. If set to false, workgroup members // cannot query data from Requester Pays buckets, and queries that retrieve // data from Requester Pays buckets cause an error. The default is false. For // more information about Requester Pays buckets, see Requester Pays Buckets // (https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html) // in the Amazon Simple Storage Service Developer Guide. RequesterPaysEnabled *bool `type:"boolean"` // The result configuration information about the queries in this workgroup // that will be updated. Includes the updated results location and an updated // option for encrypting query results. ResultConfigurationUpdates *ResultConfigurationUpdates `type:"structure"` } // String returns the string representation func (s WorkGroupConfigurationUpdates) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkGroupConfigurationUpdates) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "WorkGroupConfigurationUpdates"} if s.BytesScannedCutoffPerQuery != nil && *s.BytesScannedCutoffPerQuery < 1e+07 { invalidParams.Add(aws.NewErrParamMinValue("BytesScannedCutoffPerQuery", 1e+07)) } if s.ResultConfigurationUpdates != nil { if err := s.ResultConfigurationUpdates.Validate(); err != nil { invalidParams.AddNested("ResultConfigurationUpdates", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The summary information for the workgroup, which includes its name, state, // description, and the date and time it was created. type WorkGroupSummary struct { _ struct{} `type:"structure"` // The workgroup creation date and time. CreationTime *time.Time `type:"timestamp"` // The workgroup description. Description *string `type:"string"` // The name of the workgroup. Name *string `type:"string"` // The state of the workgroup. State WorkGroupState `type:"string" enum:"true"` } // String returns the string representation func (s WorkGroupSummary) String() string { return awsutil.Prettify(s) }