/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the customer-profiles-2020-08-15.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.CustomerProfiles.Model { /// /// The configurations that control how Customer Profiles retrieves data from the source, /// Amazon AppFlow. Customer Profiles uses this information to create an AppFlow flow /// on behalf of customers. /// public partial class FlowDefinition { private string _description; private string _flowName; private string _kmsArn; private SourceFlowConfig _sourceFlowConfig; private List _tasks = new List(); private TriggerConfig _triggerConfig; /// /// Gets and sets the property Description. /// /// A description of the flow you want to create. /// /// [AWSProperty(Max=2048)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property FlowName. /// /// The specified name of the flow. Use underscores (_) or hyphens (-) only. Spaces are /// not allowed. /// /// [AWSProperty(Required=true, Max=256)] public string FlowName { get { return this._flowName; } set { this._flowName = value; } } // Check to see if FlowName property is set internal bool IsSetFlowName() { return this._flowName != null; } /// /// Gets and sets the property KmsArn. /// /// The Amazon Resource Name of the AWS Key Management Service (KMS) key you provide for /// encryption. /// /// [AWSProperty(Required=true, Min=20, Max=2048)] public string KmsArn { get { return this._kmsArn; } set { this._kmsArn = value; } } // Check to see if KmsArn property is set internal bool IsSetKmsArn() { return this._kmsArn != null; } /// /// Gets and sets the property SourceFlowConfig. /// /// The configuration that controls how Customer Profiles retrieves data from the source. /// /// [AWSProperty(Required=true)] public SourceFlowConfig SourceFlowConfig { get { return this._sourceFlowConfig; } set { this._sourceFlowConfig = value; } } // Check to see if SourceFlowConfig property is set internal bool IsSetSourceFlowConfig() { return this._sourceFlowConfig != null; } /// /// Gets and sets the property Tasks. /// /// A list of tasks that Customer Profiles performs while transferring the data in the /// flow run. /// /// [AWSProperty(Required=true)] public List Tasks { get { return this._tasks; } set { this._tasks = value; } } // Check to see if Tasks property is set internal bool IsSetTasks() { return this._tasks != null && this._tasks.Count > 0; } /// /// Gets and sets the property TriggerConfig. /// /// The trigger settings that determine how and when the flow runs. /// /// [AWSProperty(Required=true)] public TriggerConfig TriggerConfig { get { return this._triggerConfig; } set { this._triggerConfig = value; } } // Check to see if TriggerConfig property is set internal bool IsSetTriggerConfig() { return this._triggerConfig != null; } } }