Class: AWSCDK::Connect::CfnDataTableAttribute::ValidationProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Connect::CfnDataTableAttribute::ValidationProperty
- Defined in:
- connect/cfn_data_table_attribute.rb
Overview
Defines validation rules for data table attribute values.
Based on JSON Schema Draft 2020-12 with additional Connect-specific validations. Validation rules ensure data integrity and consistency across the data table.
Instance Attribute Summary collapse
-
#enum ⇒ AWSCDK::IResolvable, ...
readonly
Defines enumeration constraints for attribute values.
-
#exclusive_maximum ⇒ Numeric?
readonly
The largest exclusive numeric value for NUMBER value type.
-
#exclusive_minimum ⇒ Numeric?
readonly
The smallest exclusive numeric value for NUMBER value type.
-
#max_length ⇒ Numeric?
readonly
The maximum number of characters a text value can contain.
-
#max_values ⇒ Numeric?
readonly
The maximum number of values in a list.
-
#maximum ⇒ Numeric?
readonly
The largest inclusive numeric value for NUMBER value type.
-
#min_length ⇒ Numeric?
readonly
The minimum number of characters a text value can contain.
-
#min_values ⇒ Numeric?
readonly
The minimum number of values in a list.
-
#minimum ⇒ Numeric?
readonly
The smallest inclusive numeric value for NUMBER value type.
-
#multiple_of ⇒ Numeric?
readonly
Specifies that numeric values must be multiples of this number.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(enum: nil, exclusive_maximum: nil, exclusive_minimum: nil, maximum: nil, max_length: nil, max_values: nil, minimum: nil, min_length: nil, min_values: nil, multiple_of: nil) ⇒ ValidationProperty
constructor
A new instance of ValidationProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(enum: nil, exclusive_maximum: nil, exclusive_minimum: nil, maximum: nil, max_length: nil, max_values: nil, minimum: nil, min_length: nil, min_values: nil, multiple_of: nil) ⇒ ValidationProperty
Returns a new instance of ValidationProperty.
688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 |
# File 'connect/cfn_data_table_attribute.rb', line 688 def initialize(enum: nil, exclusive_maximum: nil, exclusive_minimum: nil, maximum: nil, max_length: nil, max_values: nil, minimum: nil, min_length: nil, min_values: nil, multiple_of: nil) @enum = enum.is_a?(Hash) ? ::AWSCDK::Connect::CfnDataTableAttribute::EnumProperty.new(**enum.transform_keys(&:to_sym)) : enum Jsii::Type.check_type(@enum, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmbkRhdGFUYWJsZUF0dHJpYnV0ZS5FbnVtUHJvcGVydHkifV19fQ==")), "enum") unless @enum.nil? @exclusive_maximum = exclusive_maximum Jsii::Type.check_type(@exclusive_maximum, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "exclusiveMaximum") unless @exclusive_maximum.nil? @exclusive_minimum = exclusive_minimum Jsii::Type.check_type(@exclusive_minimum, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "exclusiveMinimum") unless @exclusive_minimum.nil? @maximum = maximum Jsii::Type.check_type(@maximum, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maximum") unless @maximum.nil? @max_length = max_length Jsii::Type.check_type(@max_length, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxLength") unless @max_length.nil? @max_values = max_values Jsii::Type.check_type(@max_values, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxValues") unless @max_values.nil? @minimum = minimum Jsii::Type.check_type(@minimum, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "minimum") unless @minimum.nil? @min_length = min_length Jsii::Type.check_type(@min_length, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "minLength") unless @min_length.nil? @min_values = min_values Jsii::Type.check_type(@min_values, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "minValues") unless @min_values.nil? @multiple_of = multiple_of Jsii::Type.check_type(@multiple_of, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "multipleOf") unless @multiple_of.nil? end |
Instance Attribute Details
#enum ⇒ AWSCDK::IResolvable, ... (readonly)
Defines enumeration constraints for attribute values.
Can specify a list of allowed values and whether custom values are permitted beyond the enumerated list.
717 718 719 |
# File 'connect/cfn_data_table_attribute.rb', line 717 def enum @enum end |
#exclusive_maximum ⇒ Numeric? (readonly)
The largest exclusive numeric value for NUMBER value type.
Can be provided alongside Maximum where both operate independently. Must be greater than ExclusiveMinimum and Minimum. Applies to NUMBER and values within NUMBER_LIST.
724 725 726 |
# File 'connect/cfn_data_table_attribute.rb', line 724 def exclusive_maximum @exclusive_maximum end |
#exclusive_minimum ⇒ Numeric? (readonly)
The smallest exclusive numeric value for NUMBER value type.
Can be provided alongside Minimum where both operate independently. Must be less than ExclusiveMaximum and Maximum. Applies to NUMBER and values within NUMBER_LIST.
731 732 733 |
# File 'connect/cfn_data_table_attribute.rb', line 731 def exclusive_minimum @exclusive_minimum end |
#max_length ⇒ Numeric? (readonly)
The maximum number of characters a text value can contain.
Applies to TEXT value type and values within a TEXT_LIST. Must be greater than or equal to MinLength.
745 746 747 |
# File 'connect/cfn_data_table_attribute.rb', line 745 def max_length @max_length end |
#max_values ⇒ Numeric? (readonly)
The maximum number of values in a list.
Must be an integer greater than or equal to 0 and greater than or equal to MinValues. Applies to all list types.
752 753 754 |
# File 'connect/cfn_data_table_attribute.rb', line 752 def max_values @max_values end |
#maximum ⇒ Numeric? (readonly)
The largest inclusive numeric value for NUMBER value type.
Can be provided alongside ExclusiveMaximum where both operate independently. Must be greater than or equal to Minimum and greater than ExclusiveMinimum. Applies to NUMBER and values within NUMBER_LIST.
738 739 740 |
# File 'connect/cfn_data_table_attribute.rb', line 738 def maximum @maximum end |
#min_length ⇒ Numeric? (readonly)
The minimum number of characters a text value can contain.
Applies to TEXT value type and values within a TEXT_LIST. Must be less than or equal to MaxLength.
766 767 768 |
# File 'connect/cfn_data_table_attribute.rb', line 766 def min_length @min_length end |
#min_values ⇒ Numeric? (readonly)
The minimum number of values in a list.
Must be an integer greater than or equal to 0 and less than or equal to MaxValues. Applies to all list types.
773 774 775 |
# File 'connect/cfn_data_table_attribute.rb', line 773 def min_values @min_values end |
#minimum ⇒ Numeric? (readonly)
The smallest inclusive numeric value for NUMBER value type.
Cannot be provided when ExclusiveMinimum is also provided. Must be less than or equal to Maximum and less than ExclusiveMaximum. Applies to NUMBER and values within NUMBER_LIST.
759 760 761 |
# File 'connect/cfn_data_table_attribute.rb', line 759 def minimum @minimum end |
#multiple_of ⇒ Numeric? (readonly)
Specifies that numeric values must be multiples of this number.
Must be greater than 0. The result of dividing a value by this multiple must result in an integer. Applies to NUMBER and values within NUMBER_LIST.
780 781 782 |
# File 'connect/cfn_data_table_attribute.rb', line 780 def multiple_of @multiple_of end |
Class Method Details
.jsii_properties ⇒ Object
782 783 784 785 786 787 788 789 790 791 792 793 794 795 |
# File 'connect/cfn_data_table_attribute.rb', line 782 def self.jsii_properties { :enum => "enum", :exclusive_maximum => "exclusiveMaximum", :exclusive_minimum => "exclusiveMinimum", :maximum => "maximum", :max_length => "maxLength", :max_values => "maxValues", :minimum => "minimum", :min_length => "minLength", :min_values => "minValues", :multiple_of => "multipleOf", } end |
Instance Method Details
#to_jsii ⇒ Object
797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 |
# File 'connect/cfn_data_table_attribute.rb', line 797 def to_jsii result = {} result.merge!({ "enum" => @enum, "exclusiveMaximum" => @exclusive_maximum, "exclusiveMinimum" => @exclusive_minimum, "maximum" => @maximum, "maxLength" => @max_length, "maxValues" => @max_values, "minimum" => @minimum, "minLength" => @min_length, "minValues" => @min_values, "multipleOf" => @multiple_of, }) result.compact end |