/* * 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 kinesisanalyticsv2-2018-05-23.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.KinesisAnalyticsV2.Model { /// /// Describes an application's checkpointing configuration. Checkpointing is the process /// of persisting application state for fault tolerance. For more information, see /// Checkpoints for Fault Tolerance in the Apache /// Flink Documentation. /// public partial class CheckpointConfiguration { private bool? _checkpointingEnabled; private long? _checkpointInterval; private ConfigurationType _configurationType; private long? _minPauseBetweenCheckpoints; /// /// Gets and sets the property CheckpointingEnabled. /// /// Describes whether checkpointing is enabled for a Flink-based Kinesis Data Analytics /// application. /// /// /// /// If CheckpointConfiguration.ConfigurationType is DEFAULT, /// the application will use a CheckpointingEnabled value of true, /// even if this value is set to another value using this API or in application code. /// /// /// public bool CheckpointingEnabled { get { return this._checkpointingEnabled.GetValueOrDefault(); } set { this._checkpointingEnabled = value; } } // Check to see if CheckpointingEnabled property is set internal bool IsSetCheckpointingEnabled() { return this._checkpointingEnabled.HasValue; } /// /// Gets and sets the property CheckpointInterval. /// /// Describes the interval in milliseconds between checkpoint operations. /// /// /// /// If CheckpointConfiguration.ConfigurationType is DEFAULT, /// the application will use a CheckpointInterval value of 60000, even if /// this value is set to another value using this API or in application code. /// /// /// [AWSProperty(Min=1)] public long CheckpointInterval { get { return this._checkpointInterval.GetValueOrDefault(); } set { this._checkpointInterval = value; } } // Check to see if CheckpointInterval property is set internal bool IsSetCheckpointInterval() { return this._checkpointInterval.HasValue; } /// /// Gets and sets the property ConfigurationType. /// /// Describes whether the application uses Kinesis Data Analytics' default checkpointing /// behavior. You must set this property to CUSTOM in order to set the CheckpointingEnabled, /// CheckpointInterval, or MinPauseBetweenCheckpoints parameters. /// /// /// /// If this value is set to DEFAULT, the application will use the following /// values, even if they are set to other values using APIs or application code: /// /// /// [AWSProperty(Required=true)] public ConfigurationType ConfigurationType { get { return this._configurationType; } set { this._configurationType = value; } } // Check to see if ConfigurationType property is set internal bool IsSetConfigurationType() { return this._configurationType != null; } /// /// Gets and sets the property MinPauseBetweenCheckpoints. /// /// Describes the minimum time in milliseconds after a checkpoint operation completes /// that a new checkpoint operation can start. If a checkpoint operation takes longer /// than the CheckpointInterval, the application otherwise performs continual /// checkpoint operations. For more information, see /// Tuning Checkpointing in the Apache /// Flink Documentation. /// /// /// /// If CheckpointConfiguration.ConfigurationType is DEFAULT, /// the application will use a MinPauseBetweenCheckpoints value of 5000, /// even if this value is set using this API or in application code. /// /// /// [AWSProperty(Min=0)] public long MinPauseBetweenCheckpoints { get { return this._minPauseBetweenCheckpoints.GetValueOrDefault(); } set { this._minPauseBetweenCheckpoints = value; } } // Check to see if MinPauseBetweenCheckpoints property is set internal bool IsSetMinPauseBetweenCheckpoints() { return this._minPauseBetweenCheckpoints.HasValue; } } }