Class: AWSCDK::Glue::CfnIntegration::IntegrationConfigProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
glue/cfn_integration.rb

Overview

Properties associated with the integration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(continuous_sync: nil, refresh_interval: nil, source_properties: nil) ⇒ IntegrationConfigProperty

Returns a new instance of IntegrationConfigProperty.

Parameters:

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

    Enables continuous synchronization for on-demand data extractions from SaaS applications to AWS data services like Amazon Redshift and Amazon S3.

  • refresh_interval (String, nil) (defaults to: nil)

    Specifies the frequency at which CDC (Change Data Capture) pulls or incremental loads should occur.

  • source_properties (AWSCDK::IResolvable, Hash{String => String}, nil) (defaults to: nil)

    A collection of key-value pairs that specify additional properties for the integration source.



652
653
654
655
656
657
658
659
# File 'glue/cfn_integration.rb', line 652

def initialize(continuous_sync: nil, refresh_interval: nil, source_properties: nil)
  @continuous_sync = continuous_sync
  Jsii::Type.check_type(@continuous_sync, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "continuousSync") unless @continuous_sync.nil?
  @refresh_interval = refresh_interval
  Jsii::Type.check_type(@refresh_interval, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "refreshInterval") unless @refresh_interval.nil?
  @source_properties = source_properties
  Jsii::Type.check_type(@source_properties, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsicHJpbWl0aXZlIjoic3RyaW5nIn0sImtpbmQiOiJtYXAifX1dfX0=")), "sourceProperties") unless @source_properties.nil?
end

Instance Attribute Details

#continuous_syncBoolean, ... (readonly)

Enables continuous synchronization for on-demand data extractions from SaaS applications to AWS data services like Amazon Redshift and Amazon S3.



665
666
667
# File 'glue/cfn_integration.rb', line 665

def continuous_sync
  @continuous_sync
end

#refresh_intervalString? (readonly)

Specifies the frequency at which CDC (Change Data Capture) pulls or incremental loads should occur.

This parameter provides flexibility to align the refresh rate with your specific data update patterns, system load considerations, and performance optimization goals. Time increment can be set from 15 minutes to 8640 minutes (six days).



672
673
674
# File 'glue/cfn_integration.rb', line 672

def refresh_interval
  @refresh_interval
end

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

A collection of key-value pairs that specify additional properties for the integration source.

These properties provide configuration options that can be used to customize the behavior of the ODB source during data integration operations.



679
680
681
# File 'glue/cfn_integration.rb', line 679

def source_properties
  @source_properties
end

Class Method Details

.jsii_propertiesObject



681
682
683
684
685
686
687
# File 'glue/cfn_integration.rb', line 681

def self.jsii_properties
  {
    :continuous_sync => "continuousSync",
    :refresh_interval => "refreshInterval",
    :source_properties => "sourceProperties",
  }
end

Instance Method Details

#to_jsiiObject



689
690
691
692
693
694
695
696
697
# File 'glue/cfn_integration.rb', line 689

def to_jsii
  result = {}
  result.merge!({
    "continuousSync" => @continuous_sync,
    "refreshInterval" => @refresh_interval,
    "sourceProperties" => @source_properties,
  })
  result.compact
end