Class: AWSCDK::ResilienceHubv2::CfnPolicyProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::ResilienceHubv2::CfnPolicyProps
- Defined in:
- resilience_hubv2/cfn_policy_props.rb
Overview
Properties for defining a CfnPolicy.
Instance Attribute Summary collapse
- #availability_slo ⇒ AWSCDK::IResolvable, ... readonly
- #data_recovery ⇒ AWSCDK::IResolvable, ... readonly
-
#description ⇒ String?
readonly
The description of the policy.
-
#kms_key_id ⇒ String?
readonly
The KMS key ID for encrypting policy data.
- #multi_az ⇒ AWSCDK::IResolvable, ... readonly
- #multi_region ⇒ AWSCDK::IResolvable, ... readonly
-
#name ⇒ String
readonly
The name of the policy.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
Tags assigned to the policy.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(name:, availability_slo: nil, data_recovery: nil, description: nil, kms_key_id: nil, multi_az: nil, multi_region: nil, tags: nil) ⇒ CfnPolicyProps
constructor
A new instance of CfnPolicyProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(name:, availability_slo: nil, data_recovery: nil, description: nil, kms_key_id: nil, multi_az: nil, multi_region: nil, tags: nil) ⇒ CfnPolicyProps
Returns a new instance of CfnPolicyProps.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 17 def initialize(name:, availability_slo: nil, data_recovery: nil, description: nil, kms_key_id: nil, multi_az: nil, multi_region: nil, tags: nil) @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") @availability_slo = availability_slo.is_a?(Hash) ? ::AWSCDK::ResilienceHubv2::CfnPolicy::AvailabilitySloProperty.new(**availability_slo.transform_keys(&:to_sym)) : availability_slo Jsii::Type.check_type(@availability_slo, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19yZXNpbGllbmNlaHVidjIuQ2ZuUG9saWN5LkF2YWlsYWJpbGl0eVNsb1Byb3BlcnR5In1dfX0=")), "availabilitySlo") unless @availability_slo.nil? @data_recovery = data_recovery.is_a?(Hash) ? ::AWSCDK::ResilienceHubv2::CfnPolicy::DataRecoveryTargetsProperty.new(**data_recovery.transform_keys(&:to_sym)) : data_recovery Jsii::Type.check_type(@data_recovery, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19yZXNpbGllbmNlaHVidjIuQ2ZuUG9saWN5LkRhdGFSZWNvdmVyeVRhcmdldHNQcm9wZXJ0eSJ9XX19")), "dataRecovery") unless @data_recovery.nil? @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @kms_key_id = kms_key_id Jsii::Type.check_type(@kms_key_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyId") unless @kms_key_id.nil? @multi_az = multi_az.is_a?(Hash) ? ::AWSCDK::ResilienceHubv2::CfnPolicy::MultiAzTargetsProperty.new(**multi_az.transform_keys(&:to_sym)) : multi_az Jsii::Type.check_type(@multi_az, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19yZXNpbGllbmNlaHVidjIuQ2ZuUG9saWN5Lk11bHRpQXpUYXJnZXRzUHJvcGVydHkifV19fQ==")), "multiAz") unless @multi_az.nil? @multi_region = multi_region.is_a?(Hash) ? ::AWSCDK::ResilienceHubv2::CfnPolicy::MultiRegionTargetsProperty.new(**multi_region.transform_keys(&:to_sym)) : multi_region Jsii::Type.check_type(@multi_region, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19yZXNpbGllbmNlaHVidjIuQ2ZuUG9saWN5Lk11bHRpUmVnaW9uVGFyZ2V0c1Byb3BlcnR5In1dfX0=")), "multiRegion") unless @multi_region.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? end |
Instance Attribute Details
#availability_slo ⇒ AWSCDK::IResolvable, ... (readonly)
43 44 45 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 43 def availability_slo @availability_slo end |
#data_recovery ⇒ AWSCDK::IResolvable, ... (readonly)
46 47 48 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 46 def data_recovery @data_recovery end |
#description ⇒ String? (readonly)
The description of the policy.
51 52 53 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 51 def description @description end |
#kms_key_id ⇒ String? (readonly)
The KMS key ID for encrypting policy data.
56 57 58 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 56 def kms_key_id @kms_key_id end |
#multi_az ⇒ AWSCDK::IResolvable, ... (readonly)
59 60 61 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 59 def multi_az @multi_az end |
#multi_region ⇒ AWSCDK::IResolvable, ... (readonly)
62 63 64 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 62 def multi_region @multi_region end |
#name ⇒ String (readonly)
The name of the policy.
40 41 42 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 40 def name @name end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
Tags assigned to the policy.
67 68 69 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 67 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 69 def self.jsii_properties { :name => "name", :availability_slo => "availabilitySlo", :data_recovery => "dataRecovery", :description => "description", :kms_key_id => "kmsKeyId", :multi_az => "multiAz", :multi_region => "multiRegion", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'resilience_hubv2/cfn_policy_props.rb', line 82 def to_jsii result = {} result.merge!({ "name" => @name, "availabilitySlo" => @availability_slo, "dataRecovery" => @data_recovery, "description" => @description, "kmsKeyId" => @kms_key_id, "multiAz" => @multi_az, "multiRegion" => @multi_region, "tags" => @tags, }) result.compact end |