/* * 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 rolesanywhere-2018-05-10.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.IAMRolesAnywhere.Model { /// /// Customizable notification settings that will be applied to notification events. IAM /// Roles Anywhere consumes these settings while notifying across multiple channels - /// CloudWatch metrics, EventBridge, and Health Dashboard. /// public partial class NotificationSetting { private NotificationChannel _channel; private bool? _enabled; private NotificationEvent _event; private int? _threshold; /// /// Gets and sets the property Channel. /// /// The specified channel of notification. IAM Roles Anywhere uses CloudWatch metrics, /// EventBridge, and Health Dashboard to notify for an event. /// /// /// /// In the absence of a specific channel, IAM Roles Anywhere applies this setting to 'ALL' /// channels. /// /// /// public NotificationChannel Channel { get { return this._channel; } set { this._channel = value; } } // Check to see if Channel property is set internal bool IsSetChannel() { return this._channel != null; } /// /// Gets and sets the property Enabled. /// /// Indicates whether the notification setting is enabled. /// /// [AWSProperty(Required=true)] public bool Enabled { get { return this._enabled.GetValueOrDefault(); } set { this._enabled = value; } } // Check to see if Enabled property is set internal bool IsSetEnabled() { return this._enabled.HasValue; } /// /// Gets and sets the property Event. /// /// The event to which this notification setting is applied. /// /// [AWSProperty(Required=true)] public NotificationEvent Event { get { return this._event; } set { this._event = value; } } // Check to see if Event property is set internal bool IsSetEvent() { return this._event != null; } /// /// Gets and sets the property Threshold. /// /// The number of days before a notification event. This value is required for a notification /// setting that is enabled. /// /// [AWSProperty(Min=1, Max=360)] public int Threshold { get { return this._threshold.GetValueOrDefault(); } set { this._threshold = value; } } // Check to see if Threshold property is set internal bool IsSetThreshold() { return this._threshold.HasValue; } } }