/*
* 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 resiliencehub-2020-04-30.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.ResilienceHub.Model
{
///
/// Defines the compliance against the resiliency policy for a disruption.
///
public partial class DisruptionCompliance
{
private int? _achievableRpoInSecs;
private int? _achievableRtoInSecs;
private ComplianceStatus _complianceStatus;
private int? _currentRpoInSecs;
private int? _currentRtoInSecs;
private string _message;
private string _rpoDescription;
private string _rpoReferenceId;
private string _rtoDescription;
private string _rtoReferenceId;
///
/// Gets and sets the property AchievableRpoInSecs.
///
/// The Recovery Point Objective (RPO) that is achievable, in seconds.
///
///
[AWSProperty(Min=0)]
public int AchievableRpoInSecs
{
get { return this._achievableRpoInSecs.GetValueOrDefault(); }
set { this._achievableRpoInSecs = value; }
}
// Check to see if AchievableRpoInSecs property is set
internal bool IsSetAchievableRpoInSecs()
{
return this._achievableRpoInSecs.HasValue;
}
///
/// Gets and sets the property AchievableRtoInSecs.
///
/// The Recovery Time Objective (RTO) that is achievable, in seconds
///
///
[AWSProperty(Min=0)]
public int AchievableRtoInSecs
{
get { return this._achievableRtoInSecs.GetValueOrDefault(); }
set { this._achievableRtoInSecs = value; }
}
// Check to see if AchievableRtoInSecs property is set
internal bool IsSetAchievableRtoInSecs()
{
return this._achievableRtoInSecs.HasValue;
}
///
/// Gets and sets the property ComplianceStatus.
///
/// The current status of compliance for the resiliency policy.
///
///
[AWSProperty(Required=true)]
public ComplianceStatus ComplianceStatus
{
get { return this._complianceStatus; }
set { this._complianceStatus = value; }
}
// Check to see if ComplianceStatus property is set
internal bool IsSetComplianceStatus()
{
return this._complianceStatus != null;
}
///
/// Gets and sets the property CurrentRpoInSecs.
///
/// The current RPO, in seconds.
///
///
[AWSProperty(Min=0)]
public int CurrentRpoInSecs
{
get { return this._currentRpoInSecs.GetValueOrDefault(); }
set { this._currentRpoInSecs = value; }
}
// Check to see if CurrentRpoInSecs property is set
internal bool IsSetCurrentRpoInSecs()
{
return this._currentRpoInSecs.HasValue;
}
///
/// Gets and sets the property CurrentRtoInSecs.
///
/// The current RTO, in seconds.
///
///
[AWSProperty(Min=0)]
public int CurrentRtoInSecs
{
get { return this._currentRtoInSecs.GetValueOrDefault(); }
set { this._currentRtoInSecs = value; }
}
// Check to see if CurrentRtoInSecs property is set
internal bool IsSetCurrentRtoInSecs()
{
return this._currentRtoInSecs.HasValue;
}
///
/// Gets and sets the property Message.
///
/// The disruption compliance message.
///
///
[AWSProperty(Min=1, Max=500)]
public string Message
{
get { return this._message; }
set { this._message = value; }
}
// Check to see if Message property is set
internal bool IsSetMessage()
{
return this._message != null;
}
///
/// Gets and sets the property RpoDescription.
///
/// The RPO description.
///
///
[AWSProperty(Min=1, Max=500)]
public string RpoDescription
{
get { return this._rpoDescription; }
set { this._rpoDescription = value; }
}
// Check to see if RpoDescription property is set
internal bool IsSetRpoDescription()
{
return this._rpoDescription != null;
}
///
/// Gets and sets the property RpoReferenceId.
///
/// The RPO reference identifier.
///
///
[AWSProperty(Min=1, Max=500)]
public string RpoReferenceId
{
get { return this._rpoReferenceId; }
set { this._rpoReferenceId = value; }
}
// Check to see if RpoReferenceId property is set
internal bool IsSetRpoReferenceId()
{
return this._rpoReferenceId != null;
}
///
/// Gets and sets the property RtoDescription.
///
/// The RTO description.
///
///
[AWSProperty(Min=1, Max=500)]
public string RtoDescription
{
get { return this._rtoDescription; }
set { this._rtoDescription = value; }
}
// Check to see if RtoDescription property is set
internal bool IsSetRtoDescription()
{
return this._rtoDescription != null;
}
///
/// Gets and sets the property RtoReferenceId.
///
/// The RTO reference identifier.
///
///
[AWSProperty(Min=1, Max=500)]
public string RtoReferenceId
{
get { return this._rtoReferenceId; }
set { this._rtoReferenceId = value; }
}
// Check to see if RtoReferenceId property is set
internal bool IsSetRtoReferenceId()
{
return this._rtoReferenceId != null;
}
}
}