/*
* 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 iotevents-2018-07-27.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.IoTEvents.Model
{
///
/// Container for the parameters to the CreateDetectorModel operation.
/// Creates a detector model.
///
public partial class CreateDetectorModelRequest : AmazonIoTEventsRequest
{
private DetectorModelDefinition _detectorModelDefinition;
private string _detectorModelDescription;
private string _detectorModelName;
private EvaluationMethod _evaluationMethod;
private string _key;
private string _roleArn;
private List _tags = new List();
///
/// Gets and sets the property DetectorModelDefinition.
///
/// Information that defines how the detectors operate.
///
///
[AWSProperty(Required=true)]
public DetectorModelDefinition DetectorModelDefinition
{
get { return this._detectorModelDefinition; }
set { this._detectorModelDefinition = value; }
}
// Check to see if DetectorModelDefinition property is set
internal bool IsSetDetectorModelDefinition()
{
return this._detectorModelDefinition != null;
}
///
/// Gets and sets the property DetectorModelDescription.
///
/// A brief description of the detector model.
///
///
[AWSProperty(Max=128)]
public string DetectorModelDescription
{
get { return this._detectorModelDescription; }
set { this._detectorModelDescription = value; }
}
// Check to see if DetectorModelDescription property is set
internal bool IsSetDetectorModelDescription()
{
return this._detectorModelDescription != null;
}
///
/// Gets and sets the property DetectorModelName.
///
/// The name of the detector model.
///
///
[AWSProperty(Required=true, Min=1, Max=128)]
public string DetectorModelName
{
get { return this._detectorModelName; }
set { this._detectorModelName = value; }
}
// Check to see if DetectorModelName property is set
internal bool IsSetDetectorModelName()
{
return this._detectorModelName != null;
}
///
/// Gets and sets the property EvaluationMethod.
///
/// Information about the order in which events are evaluated and how actions are executed.
///
///
///
public EvaluationMethod EvaluationMethod
{
get { return this._evaluationMethod; }
set { this._evaluationMethod = value; }
}
// Check to see if EvaluationMethod property is set
internal bool IsSetEvaluationMethod()
{
return this._evaluationMethod != null;
}
///
/// Gets and sets the property Key.
///
/// The input attribute key used to identify a device or system to create a detector (an
/// instance of the detector model) and then to route each input received to the appropriate
/// detector (instance). This parameter uses a JSON-path expression in the message payload
/// of each input to specify the attribute-value pair that is used to identify the device
/// associated with the input.
///
///
[AWSProperty(Min=1, Max=128)]
public string Key
{
get { return this._key; }
set { this._key = value; }
}
// Check to see if Key property is set
internal bool IsSetKey()
{
return this._key != null;
}
///
/// Gets and sets the property RoleArn.
///
/// The ARN of the role that grants permission to AWS IoT Events to perform its operations.
///
///
[AWSProperty(Required=true, Min=1, Max=2048)]
public string RoleArn
{
get { return this._roleArn; }
set { this._roleArn = value; }
}
// Check to see if RoleArn property is set
internal bool IsSetRoleArn()
{
return this._roleArn != null;
}
///
/// Gets and sets the property Tags.
///
/// Metadata that can be used to manage the detector model.
///
///
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
}
}