Class: AWSCDK::Kendra::CfnDataSource::S3DataSourceConfigurationProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Kendra::CfnDataSource::S3DataSourceConfigurationProperty
- Defined in:
- kendra/cfn_data_source.rb
Overview
Provides the configuration information to connect to an Amazon S3 bucket.
Instance Attribute Summary collapse
-
#access_control_list_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Provides the path to the S3 bucket that contains the user context filtering files for the data source.
-
#bucket_name ⇒ String
readonly
The name of the bucket that contains the documents.
-
#documents_metadata_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Specifies document metadata files that contain information such as the document access control information, source URI, document author, and custom attributes.
-
#exclusion_patterns ⇒ Array<String>?
readonly
A list of glob patterns (patterns that can expand a wildcard pattern into a list of path names that match the given pattern) for certain file names and file types to exclude from your index.
-
#inclusion_patterns ⇒ Array<String>?
readonly
A list of glob patterns (patterns that can expand a wildcard pattern into a list of path names that match the given pattern) for certain file names and file types to include in your index.
-
#inclusion_prefixes ⇒ Array<String>?
readonly
A list of S3 prefixes for the documents that should be included in the index.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(bucket_name:, access_control_list_configuration: nil, documents_metadata_configuration: nil, exclusion_patterns: nil, inclusion_patterns: nil, inclusion_prefixes: nil) ⇒ S3DataSourceConfigurationProperty
constructor
A new instance of S3DataSourceConfigurationProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(bucket_name:, access_control_list_configuration: nil, documents_metadata_configuration: nil, exclusion_patterns: nil, inclusion_patterns: nil, inclusion_prefixes: nil) ⇒ S3DataSourceConfigurationProperty
Returns a new instance of S3DataSourceConfigurationProperty.
2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 |
# File 'kendra/cfn_data_source.rb', line 2539 def initialize(bucket_name:, access_control_list_configuration: nil, documents_metadata_configuration: nil, exclusion_patterns: nil, inclusion_patterns: nil, inclusion_prefixes: nil) @bucket_name = bucket_name Jsii::Type.check_type(@bucket_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "bucketName") @access_control_list_configuration = access_control_list_configuration.is_a?(Hash) ? ::AWSCDK::Kendra::CfnDataSource::AccessControlListConfigurationProperty.new(**access_control_list_configuration.transform_keys(&:to_sym)) : access_control_list_configuration Jsii::Type.check_type(@access_control_list_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19rZW5kcmEuQ2ZuRGF0YVNvdXJjZS5BY2Nlc3NDb250cm9sTGlzdENvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "accessControlListConfiguration") unless @access_control_list_configuration.nil? @documents_metadata_configuration = .is_a?(Hash) ? ::AWSCDK::Kendra::CfnDataSource::DocumentsMetadataConfigurationProperty.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@documents_metadata_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19rZW5kcmEuQ2ZuRGF0YVNvdXJjZS5Eb2N1bWVudHNNZXRhZGF0YUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "documentsMetadataConfiguration") unless @documents_metadata_configuration.nil? @exclusion_patterns = exclusion_patterns Jsii::Type.check_type(@exclusion_patterns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "exclusionPatterns") unless @exclusion_patterns.nil? @inclusion_patterns = inclusion_patterns Jsii::Type.check_type(@inclusion_patterns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "inclusionPatterns") unless @inclusion_patterns.nil? @inclusion_prefixes = inclusion_prefixes Jsii::Type.check_type(@inclusion_prefixes, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "inclusionPrefixes") unless @inclusion_prefixes.nil? end |
Instance Attribute Details
#access_control_list_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Provides the path to the S3 bucket that contains the user context filtering files for the data source.
For the format of the file, see Access control for S3 data sources .
2565 2566 2567 |
# File 'kendra/cfn_data_source.rb', line 2565 def access_control_list_configuration @access_control_list_configuration end |
#bucket_name ⇒ String (readonly)
The name of the bucket that contains the documents.
2558 2559 2560 |
# File 'kendra/cfn_data_source.rb', line 2558 def bucket_name @bucket_name end |
#documents_metadata_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies document metadata files that contain information such as the document access control information, source URI, document author, and custom attributes.
Each metadata file contains metadata about a single document.
2572 2573 2574 |
# File 'kendra/cfn_data_source.rb', line 2572 def @documents_metadata_configuration end |
#exclusion_patterns ⇒ Array<String>? (readonly)
A list of glob patterns (patterns that can expand a wildcard pattern into a list of path names that match the given pattern) for certain file names and file types to exclude from your index.
If a document matches both an inclusion and exclusion prefix or pattern, the exclusion prefix takes precendence and the document is not indexed. Examples of glob patterns include:
- * /myapp/config/** —All files inside config directory.
- *** /.png —All .png files in all directories.
- *** /.ico, md —All .png, .ico or .md files in all directories.
- * /myapp/src/** /.ts —All .ts files inside src directory (and all its subdirectories).
- *** /!(.module).ts —All .ts files but not .module.ts
- *.png , *.jpg —All PNG and JPEG image files in a directory (files with the extensions .png and .jpg).
- internal —All files in a directory that contain 'internal' in the file name, such as 'internal', 'internal_only', 'company_internal'.
- *** /internal* —All internal-related files in a directory and its subdirectories.
For more examples, see Use of Exclude and Include Filters in the AWS CLI Command Reference.
2590 2591 2592 |
# File 'kendra/cfn_data_source.rb', line 2590 def exclusion_patterns @exclusion_patterns end |
#inclusion_patterns ⇒ Array<String>? (readonly)
A list of glob patterns (patterns that can expand a wildcard pattern into a list of path names that match the given pattern) for certain file names and file types to include in your index.
If a document matches both an inclusion and exclusion prefix or pattern, the exclusion prefix takes precendence and the document is not indexed. Examples of glob patterns include:
- * /myapp/config/** —All files inside config directory.
- *** /.png —All .png files in all directories.
- *** /.ico, md —All .png, .ico or .md files in all directories.
- * /myapp/src/** /.ts —All .ts files inside src directory (and all its subdirectories).
- *** /!(.module).ts —All .ts files but not .module.ts
- *.png , *.jpg —All PNG and JPEG image files in a directory (files with the extensions .png and .jpg).
- internal —All files in a directory that contain 'internal' in the file name, such as 'internal', 'internal_only', 'company_internal'.
- *** /internal* —All internal-related files in a directory and its subdirectories.
For more examples, see Use of Exclude and Include Filters in the AWS CLI Command Reference.
2608 2609 2610 |
# File 'kendra/cfn_data_source.rb', line 2608 def inclusion_patterns @inclusion_patterns end |
#inclusion_prefixes ⇒ Array<String>? (readonly)
A list of S3 prefixes for the documents that should be included in the index.
2613 2614 2615 |
# File 'kendra/cfn_data_source.rb', line 2613 def inclusion_prefixes @inclusion_prefixes end |
Class Method Details
.jsii_properties ⇒ Object
2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 |
# File 'kendra/cfn_data_source.rb', line 2615 def self.jsii_properties { :bucket_name => "bucketName", :access_control_list_configuration => "accessControlListConfiguration", :documents_metadata_configuration => "documentsMetadataConfiguration", :exclusion_patterns => "exclusionPatterns", :inclusion_patterns => "inclusionPatterns", :inclusion_prefixes => "inclusionPrefixes", } end |
Instance Method Details
#to_jsii ⇒ Object
2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 |
# File 'kendra/cfn_data_source.rb', line 2626 def to_jsii result = {} result.merge!({ "bucketName" => @bucket_name, "accessControlListConfiguration" => @access_control_list_configuration, "documentsMetadataConfiguration" => @documents_metadata_configuration, "exclusionPatterns" => @exclusion_patterns, "inclusionPatterns" => @inclusion_patterns, "inclusionPrefixes" => @inclusion_prefixes, }) result.compact end |