/*
* 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 iot-2015-05-28.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.IoT.Model
{
///
/// A Device Defender security profile behavior.
///
public partial class Behavior
{
private BehaviorCriteria _criteria;
private string _metric;
private MetricDimension _metricDimension;
private string _name;
private bool? _suppressAlerts;
///
/// Gets and sets the property Criteria.
///
/// The criteria that determine if a device is behaving normally in regard to the metric
.
///
///
public BehaviorCriteria Criteria
{
get { return this._criteria; }
set { this._criteria = value; }
}
// Check to see if Criteria property is set
internal bool IsSetCriteria()
{
return this._criteria != null;
}
///
/// Gets and sets the property Metric.
///
/// What is measured by the behavior.
///
///
public string Metric
{
get { return this._metric; }
set { this._metric = value; }
}
// Check to see if Metric property is set
internal bool IsSetMetric()
{
return this._metric != null;
}
///
/// Gets and sets the property MetricDimension.
///
/// The dimension for a metric in your behavior. For example, using a TOPIC_FILTER
/// dimension, you can narrow down the scope of the metric to only MQTT topics where the
/// name matches the pattern specified in the dimension. This can't be used with custom
/// metrics.
///
///
public MetricDimension MetricDimension
{
get { return this._metricDimension; }
set { this._metricDimension = value; }
}
// Check to see if MetricDimension property is set
internal bool IsSetMetricDimension()
{
return this._metricDimension != null;
}
///
/// Gets and sets the property Name.
///
/// The name you've given to the behavior.
///
///
[AWSProperty(Required=true, Min=1, Max=128)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property SuppressAlerts.
///
/// Suppresses alerts.
///
///
public bool SuppressAlerts
{
get { return this._suppressAlerts.GetValueOrDefault(); }
set { this._suppressAlerts = value; }
}
// Check to see if SuppressAlerts property is set
internal bool IsSetSuppressAlerts()
{
return this._suppressAlerts.HasValue;
}
}
}