Class: AWSCDK::QBusiness::CfnDataSourceProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::QBusiness::CfnDataSourceProps
- Defined in:
- q_business/cfn_data_source_props.rb
Overview
Properties for defining a CfnDataSource.
Instance Attribute Summary collapse
-
#application_id ⇒ String
readonly
The identifier of the Amazon Q Business application the data source will be attached to.
-
#configuration ⇒ Object
readonly
Use this property to specify a JSON or YAML schema with configuration properties specific to your data source connector to connect your data source repository to Amazon Q Business .
-
#description ⇒ String?
readonly
A description for the data source connector.
-
#display_name ⇒ String
readonly
The name of the Amazon Q Business data source.
-
#document_enrichment_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Provides the configuration information for altering document metadata and content during the document ingestion process.
-
#index_id ⇒ String
readonly
The identifier of the index the data source is attached to.
-
#media_extraction_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The configuration for extracting information from media in documents.
-
#role_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources.
-
#sync_schedule ⇒ String?
readonly
Sets the frequency for Amazon Q Business to check the documents in your data source repository and update your index.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
A list of key-value pairs that identify or categorize the data source connector.
-
#vpc_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Configuration information for an Amazon VPC (Virtual Private Cloud) to connect to your data source.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(application_id:, configuration:, display_name:, index_id:, description: nil, document_enrichment_configuration: nil, media_extraction_configuration: nil, role_arn: nil, sync_schedule: nil, tags: nil, vpc_configuration: nil) ⇒ CfnDataSourceProps
constructor
A new instance of CfnDataSourceProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(application_id:, configuration:, display_name:, index_id:, description: nil, document_enrichment_configuration: nil, media_extraction_configuration: nil, role_arn: nil, sync_schedule: nil, tags: nil, vpc_configuration: nil) ⇒ CfnDataSourceProps
Returns a new instance of CfnDataSourceProps.
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'q_business/cfn_data_source_props.rb', line 20 def initialize(application_id:, configuration:, display_name:, index_id:, description: nil, document_enrichment_configuration: nil, media_extraction_configuration: nil, role_arn: nil, sync_schedule: nil, tags: nil, vpc_configuration: nil) @application_id = application_id Jsii::Type.check_type(@application_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "applicationId") @configuration = configuration Jsii::Type.check_type(@configuration, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "configuration") @display_name = display_name Jsii::Type.check_type(@display_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "displayName") @index_id = index_id Jsii::Type.check_type(@index_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "indexId") @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @document_enrichment_configuration = document_enrichment_configuration.is_a?(Hash) ? ::AWSCDK::QBusiness::CfnDataSource::DocumentEnrichmentConfigurationProperty.new(**document_enrichment_configuration.transform_keys(&:to_sym)) : document_enrichment_configuration Jsii::Type.check_type(@document_enrichment_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xYnVzaW5lc3MuQ2ZuRGF0YVNvdXJjZS5Eb2N1bWVudEVucmljaG1lbnRDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "documentEnrichmentConfiguration") unless @document_enrichment_configuration.nil? @media_extraction_configuration = media_extraction_configuration.is_a?(Hash) ? ::AWSCDK::QBusiness::CfnDataSource::MediaExtractionConfigurationProperty.new(**media_extraction_configuration.transform_keys(&:to_sym)) : media_extraction_configuration Jsii::Type.check_type(@media_extraction_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xYnVzaW5lc3MuQ2ZuRGF0YVNvdXJjZS5NZWRpYUV4dHJhY3Rpb25Db25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "mediaExtractionConfiguration") unless @media_extraction_configuration.nil? @role_arn = role_arn Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") unless @role_arn.nil? @sync_schedule = sync_schedule Jsii::Type.check_type(@sync_schedule, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "syncSchedule") unless @sync_schedule.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @vpc_configuration = vpc_configuration.is_a?(Hash) ? ::AWSCDK::QBusiness::CfnDataSource::DataSourceVPCConfigurationProperty.new(**vpc_configuration.transform_keys(&:to_sym)) : vpc_configuration Jsii::Type.check_type(@vpc_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xYnVzaW5lc3MuQ2ZuRGF0YVNvdXJjZS5EYXRhU291cmNlVnBjQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "vpcConfiguration") unless @vpc_configuration.nil? end |
Instance Attribute Details
#application_id ⇒ String (readonly)
The identifier of the Amazon Q Business application the data source will be attached to.
49 50 51 |
# File 'q_business/cfn_data_source_props.rb', line 49 def application_id @application_id end |
#configuration ⇒ Object (readonly)
Use this property to specify a JSON or YAML schema with configuration properties specific to your data source connector to connect your data source repository to Amazon Q Business .
You must use the JSON or YAML schema provided by Amazon Q .
The following links have the configuration properties and schemas for AWS CloudFormation for the following connectors:
Similarly, you can find configuration templates and properties for your specific data source using the following steps:
- Navigate to the Supported connectors page in the Amazon Q Business User Guide, and select the data source connector of your choice.
- Then, from that specific data source connector's page, choose the topic containing Using CloudFormation to find the schemas for your data source connector, including configuration parameter descriptions and examples.
66 67 68 |
# File 'q_business/cfn_data_source_props.rb', line 66 def configuration @configuration end |
#description ⇒ String? (readonly)
A description for the data source connector.
81 82 83 |
# File 'q_business/cfn_data_source_props.rb', line 81 def description @description end |
#display_name ⇒ String (readonly)
The name of the Amazon Q Business data source.
71 72 73 |
# File 'q_business/cfn_data_source_props.rb', line 71 def display_name @display_name end |
#document_enrichment_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Provides the configuration information for altering document metadata and content during the document ingestion process.
For more information, see Custom document enrichment .
88 89 90 |
# File 'q_business/cfn_data_source_props.rb', line 88 def document_enrichment_configuration @document_enrichment_configuration end |
#index_id ⇒ String (readonly)
The identifier of the index the data source is attached to.
76 77 78 |
# File 'q_business/cfn_data_source_props.rb', line 76 def index_id @index_id end |
#media_extraction_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The configuration for extracting information from media in documents.
93 94 95 |
# File 'q_business/cfn_data_source_props.rb', line 93 def media_extraction_configuration @media_extraction_configuration end |
#role_arn ⇒ String? (readonly)
The Amazon Resource Name (ARN) of an IAM role with permission to access the data source and required resources.
This field is required for all connector types except custom connectors, where it is optional.
100 101 102 |
# File 'q_business/cfn_data_source_props.rb', line 100 def role_arn @role_arn end |
#sync_schedule ⇒ String? (readonly)
Sets the frequency for Amazon Q Business to check the documents in your data source repository and update your index.
If you don't set a schedule, Amazon Q Business won't periodically update the index.
Specify a cron- format schedule string or an empty string to indicate that the index is updated on demand. You can't specify the Schedule parameter when the Type parameter is set to CUSTOM . If you do, you receive a ValidationException exception.
109 110 111 |
# File 'q_business/cfn_data_source_props.rb', line 109 def sync_schedule @sync_schedule end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
A list of key-value pairs that identify or categorize the data source connector.
You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + -
116 117 118 |
# File 'q_business/cfn_data_source_props.rb', line 116 def @tags end |
#vpc_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Configuration information for an Amazon VPC (Virtual Private Cloud) to connect to your data source.
For more information, see Using Amazon VPC with Amazon Q Business connectors .
123 124 125 |
# File 'q_business/cfn_data_source_props.rb', line 123 def vpc_configuration @vpc_configuration end |
Class Method Details
.jsii_properties ⇒ Object
125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
# File 'q_business/cfn_data_source_props.rb', line 125 def self.jsii_properties { :application_id => "applicationId", :configuration => "configuration", :display_name => "displayName", :index_id => "indexId", :description => "description", :document_enrichment_configuration => "documentEnrichmentConfiguration", :media_extraction_configuration => "mediaExtractionConfiguration", :role_arn => "roleArn", :sync_schedule => "syncSchedule", :tags => "tags", :vpc_configuration => "vpcConfiguration", } end |
Instance Method Details
#to_jsii ⇒ Object
141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 |
# File 'q_business/cfn_data_source_props.rb', line 141 def to_jsii result = {} result.merge!({ "applicationId" => @application_id, "configuration" => @configuration, "displayName" => @display_name, "indexId" => @index_id, "description" => @description, "documentEnrichmentConfiguration" => @document_enrichment_configuration, "mediaExtractionConfiguration" => @media_extraction_configuration, "roleArn" => @role_arn, "syncSchedule" => @sync_schedule, "tags" => @tags, "vpcConfiguration" => @vpc_configuration, }) result.compact end |