/*
* 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 mturk-requester-2017-01-17.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.MTurk.Model
{
///
/// The NotificationSpecification data structure describes a HIT event notification for
/// a HIT type.
///
public partial class NotificationSpecification
{
private string _destination;
private List _eventTypes = new List();
private NotificationTransport _transport;
private string _version;
///
/// Gets and sets the property Destination.
///
/// The target for notification messages. The Destination’s format is determined by the
/// specified Transport:
///
/// -
///
/// When Transport is Email, the Destination is your email address.
///
///
-
///
/// When Transport is SQS, the Destination is your queue URL.
///
///
-
///
/// When Transport is SNS, the Destination is the ARN of your topic.
///
///
///
[AWSProperty(Required=true)]
public string Destination
{
get { return this._destination; }
set { this._destination = value; }
}
// Check to see if Destination property is set
internal bool IsSetDestination()
{
return this._destination != null;
}
///
/// Gets and sets the property EventTypes.
///
/// The list of events that should cause notifications to be sent. Valid Values: AssignmentAccepted
/// | AssignmentAbandoned | AssignmentReturned | AssignmentSubmitted | AssignmentRejected
/// | AssignmentApproved | HITCreated | HITExtended | HITDisposed | HITReviewable | HITExpired
/// | Ping. The Ping event is only valid for the SendTestEventNotification operation.
///
///
///
[AWSProperty(Required=true)]
public List EventTypes
{
get { return this._eventTypes; }
set { this._eventTypes = value; }
}
// Check to see if EventTypes property is set
internal bool IsSetEventTypes()
{
return this._eventTypes != null && this._eventTypes.Count > 0;
}
///
/// Gets and sets the property Transport.
///
/// The method Amazon Mechanical Turk uses to send the notification. Valid Values: Email
/// | SQS | SNS.
///
///
[AWSProperty(Required=true)]
public NotificationTransport Transport
{
get { return this._transport; }
set { this._transport = value; }
}
// Check to see if Transport property is set
internal bool IsSetTransport()
{
return this._transport != null;
}
///
/// Gets and sets the property Version.
///
/// The version of the Notification API to use. Valid value is 2006-05-05.
///
///
[AWSProperty(Required=true)]
public string Version
{
get { return this._version; }
set { this._version = value; }
}
// Check to see if Version property is set
internal bool IsSetVersion()
{
return this._version != null;
}
}
}