Class: AWSCDK::AppFlow::CfnFlowProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
app_flow/cfn_flow_props.rb

Overview

Properties for defining a CfnFlow.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(destination_flow_config_list:, flow_name:, source_flow_config:, tasks:, trigger_config:, description: nil, flow_status: nil, kms_arn: nil, metadata_catalog_config: nil, tags: nil) ⇒ CfnFlowProps

Returns a new instance of CfnFlowProps.

Parameters:



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'app_flow/cfn_flow_props.rb', line 19

def initialize(destination_flow_config_list:, flow_name:, source_flow_config:, tasks:, trigger_config:, description: nil, flow_status: nil, kms_arn: nil, metadata_catalog_config: nil, tags: nil)
  @destination_flow_config_list = destination_flow_config_list
  Jsii::Type.check_type(@destination_flow_config_list, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwZmxvdy5DZm5GbG93LkRlc3RpbmF0aW9uRmxvd0NvbmZpZ1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "destinationFlowConfigList")
  @flow_name = flow_name
  Jsii::Type.check_type(@flow_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "flowName")
  @source_flow_config = source_flow_config.is_a?(Hash) ? ::AWSCDK::AppFlow::CfnFlow::SourceFlowConfigProperty.new(**source_flow_config.transform_keys(&:to_sym)) : source_flow_config
  Jsii::Type.check_type(@source_flow_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBmbG93LkNmbkZsb3cuU291cmNlRmxvd0NvbmZpZ1Byb3BlcnR5In1dfX0=")), "sourceFlowConfig")
  @tasks = tasks
  Jsii::Type.check_type(@tasks, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwZmxvdy5DZm5GbG93LlRhc2tQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "tasks")
  @trigger_config = trigger_config.is_a?(Hash) ? ::AWSCDK::AppFlow::CfnFlow::TriggerConfigProperty.new(**trigger_config.transform_keys(&:to_sym)) : trigger_config
  Jsii::Type.check_type(@trigger_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBmbG93LkNmbkZsb3cuVHJpZ2dlckNvbmZpZ1Byb3BlcnR5In1dfX0=")), "triggerConfig")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @flow_status = flow_status
  Jsii::Type.check_type(@flow_status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "flowStatus") unless @flow_status.nil?
  @kms_arn = kms_arn
  Jsii::Type.check_type(@kms_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19rbXMuSUtleVJlZiJ9XX19")), "kmsArn") unless @kms_arn.nil?
  @metadata_catalog_config = .is_a?(Hash) ? ::AWSCDK::AppFlow::CfnFlow::MetadataCatalogConfigProperty.new(**.transform_keys(&:to_sym)) : 
  Jsii::Type.check_type(@metadata_catalog_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBmbG93LkNmbkZsb3cuTWV0YWRhdGFDYXRhbG9nQ29uZmlnUHJvcGVydHkifV19fQ==")), "metadataCatalogConfig") unless @metadata_catalog_config.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#descriptionString? (readonly)

A user-entered description of the flow.



73
74
75
# File 'app_flow/cfn_flow_props.rb', line 73

def description
  @description
end

#destination_flow_config_listAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::AppFlow::CfnFlow::DestinationFlowConfigProperty> (readonly)

The configuration that controls how Amazon AppFlow places data in the destination connector.



46
47
48
# File 'app_flow/cfn_flow_props.rb', line 46

def destination_flow_config_list
  @destination_flow_config_list
end

#flow_nameString (readonly)

The specified name of the flow.

Spaces are not allowed. Use underscores (_) or hyphens (-) only.



53
54
55
# File 'app_flow/cfn_flow_props.rb', line 53

def flow_name
  @flow_name
end

#flow_statusString? (readonly)

Sets the status of the flow. You can specify one of the following values:.

  • Active - The flow runs based on the trigger settings that you defined. Active scheduled flows run as scheduled, and active event-triggered flows run when the specified change event occurs. However, active on-demand flows run only when you manually start them by using Amazon AppFlow.
  • Suspended - You can use this option to deactivate an active flow. Scheduled and event-triggered flows will cease to run until you reactive them. This value only affects scheduled and event-triggered flows. It has no effect for on-demand flows.

If you omit the FlowStatus parameter, Amazon AppFlow creates the flow with a default status. The default status for on-demand flows is Active. The default status for scheduled and event-triggered flows is Draft, which means they’re not yet active.



83
84
85
# File 'app_flow/cfn_flow_props.rb', line 83

def flow_status
  @flow_status
end

#kms_arnString, ... (readonly)

The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption.

This is required if you do not want to use the Amazon AppFlow-managed KMS key. If you don't provide anything here, Amazon AppFlow uses the Amazon AppFlow-managed KMS key.



90
91
92
# File 'app_flow/cfn_flow_props.rb', line 90

def kms_arn
  @kms_arn
end

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

Specifies the configuration that Amazon AppFlow uses when it catalogs your data.

When Amazon AppFlow catalogs your data, it stores metadata in a data catalog.



97
98
99
# File 'app_flow/cfn_flow_props.rb', line 97

def 
  @metadata_catalog_config
end

#source_flow_configAWSCDK::IResolvable, AWSCDK::AppFlow::CfnFlow::SourceFlowConfigProperty (readonly)

Contains information about the configuration of the source connector used in the flow.



58
59
60
# File 'app_flow/cfn_flow_props.rb', line 58

def source_flow_config
  @source_flow_config
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags used to organize, track, or control access for your flow.



102
103
104
# File 'app_flow/cfn_flow_props.rb', line 102

def tags
  @tags
end

#tasksAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::AppFlow::CfnFlow::TaskProperty> (readonly)

A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.



63
64
65
# File 'app_flow/cfn_flow_props.rb', line 63

def tasks
  @tasks
end

#trigger_configAWSCDK::IResolvable, AWSCDK::AppFlow::CfnFlow::TriggerConfigProperty (readonly)

The trigger settings that determine how and when Amazon AppFlow runs the specified flow.



68
69
70
# File 'app_flow/cfn_flow_props.rb', line 68

def trigger_config
  @trigger_config
end

Class Method Details

.jsii_propertiesObject



104
105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'app_flow/cfn_flow_props.rb', line 104

def self.jsii_properties
  {
    :destination_flow_config_list => "destinationFlowConfigList",
    :flow_name => "flowName",
    :source_flow_config => "sourceFlowConfig",
    :tasks => "tasks",
    :trigger_config => "triggerConfig",
    :description => "description",
    :flow_status => "flowStatus",
    :kms_arn => "kmsArn",
    :metadata_catalog_config => "metadataCatalogConfig",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# File 'app_flow/cfn_flow_props.rb', line 119

def to_jsii
  result = {}
  result.merge!({
    "destinationFlowConfigList" => @destination_flow_config_list,
    "flowName" => @flow_name,
    "sourceFlowConfig" => @source_flow_config,
    "tasks" => @tasks,
    "triggerConfig" => @trigger_config,
    "description" => @description,
    "flowStatus" => @flow_status,
    "kmsArn" => @kms_arn,
    "metadataCatalogConfig" => @metadata_catalog_config,
    "tags" => @tags,
  })
  result.compact
end