Class: AWSCDK::SSM::CfnResourceDataSync::SyncSourceProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ssm/cfn_resource_data_sync.rb

Overview

Information about the source of the data included in the resource data sync.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(source_regions:, source_type:, aws_organizations_source: nil, include_future_regions: nil) ⇒ SyncSourceProperty

Returns a new instance of SyncSourceProperty.

Parameters:

  • source_regions (Array<String>)

    The SyncSource AWS Regions included in the resource data sync.

  • source_type (String)

    The type of data source for the resource data sync.

  • aws_organizations_source (AWSCDK::IResolvable, AWSCDK::SSM::CfnResourceDataSync::AWSOrganizationsSourceProperty, nil) (defaults to: nil)

    Information about the AwsOrganizationsSource resource data sync source.

  • include_future_regions (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Whether to automatically synchronize and aggregate data from new AWS Regions when those Regions come online.



765
766
767
768
769
770
771
772
773
774
# File 'ssm/cfn_resource_data_sync.rb', line 765

def initialize(source_regions:, source_type:, aws_organizations_source: nil, include_future_regions: nil)
  @source_regions = source_regions
  Jsii::Type.check_type(@source_regions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "sourceRegions")
  @source_type = source_type
  Jsii::Type.check_type(@source_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sourceType")
  @aws_organizations_source = aws_organizations_source.is_a?(Hash) ? ::AWSCDK::SSM::CfnResourceDataSync::AWSOrganizationsSourceProperty.new(**aws_organizations_source.transform_keys(&:to_sym)) : aws_organizations_source
  Jsii::Type.check_type(@aws_organizations_source, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zc20uQ2ZuUmVzb3VyY2VEYXRhU3luYy5Bd3NPcmdhbml6YXRpb25zU291cmNlUHJvcGVydHkifV19fQ==")), "awsOrganizationsSource") unless @aws_organizations_source.nil?
  @include_future_regions = include_future_regions
  Jsii::Type.check_type(@include_future_regions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "includeFutureRegions") unless @include_future_regions.nil?
end

Instance Attribute Details

#aws_organizations_sourceAWSCDK::IResolvable, ... (readonly)

Information about the AwsOrganizationsSource resource data sync source.

A sync source of this type can synchronize data from AWS Organizations .



794
795
796
# File 'ssm/cfn_resource_data_sync.rb', line 794

def aws_organizations_source
  @aws_organizations_source
end

#include_future_regionsBoolean, ... (readonly)

Whether to automatically synchronize and aggregate data from new AWS Regions when those Regions come online.



799
800
801
# File 'ssm/cfn_resource_data_sync.rb', line 799

def include_future_regions
  @include_future_regions
end

#source_regionsArray<String> (readonly)

The SyncSource AWS Regions included in the resource data sync.



780
781
782
# File 'ssm/cfn_resource_data_sync.rb', line 780

def source_regions
  @source_regions
end

#source_typeString (readonly)

The type of data source for the resource data sync.

SourceType is either AwsOrganizations (if an organization is present in AWS Organizations ) or SingleAccountMultiRegions .



787
788
789
# File 'ssm/cfn_resource_data_sync.rb', line 787

def source_type
  @source_type
end

Class Method Details

.jsii_propertiesObject



801
802
803
804
805
806
807
808
# File 'ssm/cfn_resource_data_sync.rb', line 801

def self.jsii_properties
  {
    :source_regions => "sourceRegions",
    :source_type => "sourceType",
    :aws_organizations_source => "awsOrganizationsSource",
    :include_future_regions => "includeFutureRegions",
  }
end

Instance Method Details

#to_jsiiObject



810
811
812
813
814
815
816
817
818
819
# File 'ssm/cfn_resource_data_sync.rb', line 810

def to_jsii
  result = {}
  result.merge!({
    "sourceRegions" => @source_regions,
    "sourceType" => @source_type,
    "awsOrganizationsSource" => @aws_organizations_source,
    "includeFutureRegions" => @include_future_regions,
  })
  result.compact
end