/*
* 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 redshift-2012-12-01.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.Redshift.Model
{
///
/// Container for the parameters to the ModifyEventSubscription operation.
/// Modifies an existing Amazon Redshift event notification subscription.
///
public partial class ModifyEventSubscriptionRequest : AmazonRedshiftRequest
{
private bool? _enabled;
private List _eventCategories = new List();
private string _severity;
private string _snsTopicArn;
private List _sourceIds = new List();
private string _sourceType;
private string _subscriptionName;
///
/// Gets and sets the property Enabled.
///
/// A Boolean value indicating if the subscription is enabled. true
indicates
/// the subscription is enabled
///
///
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 EventCategories.
///
/// Specifies the Amazon Redshift event categories to be published by the event notification
/// subscription.
///
///
///
/// Values: configuration, management, monitoring, security, pending
///
///
public List EventCategories
{
get { return this._eventCategories; }
set { this._eventCategories = value; }
}
// Check to see if EventCategories property is set
internal bool IsSetEventCategories()
{
return this._eventCategories != null && this._eventCategories.Count > 0;
}
///
/// Gets and sets the property Severity.
///
/// Specifies the Amazon Redshift event severity to be published by the event notification
/// subscription.
///
///
///
/// Values: ERROR, INFO
///
///
[AWSProperty(Max=2147483647)]
public string Severity
{
get { return this._severity; }
set { this._severity = value; }
}
// Check to see if Severity property is set
internal bool IsSetSeverity()
{
return this._severity != null;
}
///
/// Gets and sets the property SnsTopicArn.
///
/// The Amazon Resource Name (ARN) of the SNS topic to be used by the event notification
/// subscription.
///
///
[AWSProperty(Max=2147483647)]
public string SnsTopicArn
{
get { return this._snsTopicArn; }
set { this._snsTopicArn = value; }
}
// Check to see if SnsTopicArn property is set
internal bool IsSetSnsTopicArn()
{
return this._snsTopicArn != null;
}
///
/// Gets and sets the property SourceIds.
///
/// A list of one or more identifiers of Amazon Redshift source objects. All of the objects
/// must be of the same type as was specified in the source type parameter. The event
/// subscription will return only events generated by the specified objects. If not specified,
/// then events are returned for all objects within the source type specified.
///
///
///
/// Example: my-cluster-1, my-cluster-2
///
///
///
/// Example: my-snapshot-20131010
///
///
public List SourceIds
{
get { return this._sourceIds; }
set { this._sourceIds = value; }
}
// Check to see if SourceIds property is set
internal bool IsSetSourceIds()
{
return this._sourceIds != null && this._sourceIds.Count > 0;
}
///
/// Gets and sets the property SourceType.
///
/// The type of source that will be generating the events. For example, if you want to
/// be notified of events generated by a cluster, you would set this parameter to cluster.
/// If this value is not specified, events are returned for all Amazon Redshift objects
/// in your Amazon Web Services account. You must specify a source type in order to specify
/// source IDs.
///
///
///
/// Valid values: cluster, cluster-parameter-group, cluster-security-group, cluster-snapshot,
/// and scheduled-action.
///
///
[AWSProperty(Max=2147483647)]
public string SourceType
{
get { return this._sourceType; }
set { this._sourceType = value; }
}
// Check to see if SourceType property is set
internal bool IsSetSourceType()
{
return this._sourceType != null;
}
///
/// Gets and sets the property SubscriptionName.
///
/// The name of the modified Amazon Redshift event notification subscription.
///
///
[AWSProperty(Required=true, Max=2147483647)]
public string SubscriptionName
{
get { return this._subscriptionName; }
set { this._subscriptionName = value; }
}
// Check to see if SubscriptionName property is set
internal bool IsSetSubscriptionName()
{
return this._subscriptionName != null;
}
}
}