/*
* 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 groundstation-2019-05-23.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.GroundStation.Model
{
///
/// Container for the parameters to the UpdateMissionProfile operation.
/// Updates a mission profile.
///
///
///
/// Updating a mission profile will not update the execution parameters for existing future
/// contacts.
///
///
public partial class UpdateMissionProfileRequest : AmazonGroundStationRequest
{
private int? _contactPostPassDurationSeconds;
private int? _contactPrePassDurationSeconds;
private List> _dataflowEdges = new List>();
private int? _minimumViableContactDurationSeconds;
private string _missionProfileId;
private string _name;
private KmsKey _streamsKmsKey;
private string _streamsKmsRole;
private string _trackingConfigArn;
///
/// Gets and sets the property ContactPostPassDurationSeconds.
///
/// Amount of time after a contact ends that you’d like to receive a CloudWatch event
/// indicating the pass has finished.
///
///
[AWSProperty(Min=0, Max=21600)]
public int ContactPostPassDurationSeconds
{
get { return this._contactPostPassDurationSeconds.GetValueOrDefault(); }
set { this._contactPostPassDurationSeconds = value; }
}
// Check to see if ContactPostPassDurationSeconds property is set
internal bool IsSetContactPostPassDurationSeconds()
{
return this._contactPostPassDurationSeconds.HasValue;
}
///
/// Gets and sets the property ContactPrePassDurationSeconds.
///
/// Amount of time after a contact ends that you’d like to receive a CloudWatch event
/// indicating the pass has finished.
///
///
[AWSProperty(Min=0, Max=21600)]
public int ContactPrePassDurationSeconds
{
get { return this._contactPrePassDurationSeconds.GetValueOrDefault(); }
set { this._contactPrePassDurationSeconds = value; }
}
// Check to see if ContactPrePassDurationSeconds property is set
internal bool IsSetContactPrePassDurationSeconds()
{
return this._contactPrePassDurationSeconds.HasValue;
}
///
/// Gets and sets the property DataflowEdges.
///
/// A list of lists of ARNs. Each list of ARNs is an edge, with a from Config
/// and a to Config
.
///
///
[AWSProperty(Min=0, Max=500)]
public List> DataflowEdges
{
get { return this._dataflowEdges; }
set { this._dataflowEdges = value; }
}
// Check to see if DataflowEdges property is set
internal bool IsSetDataflowEdges()
{
return this._dataflowEdges != null && this._dataflowEdges.Count > 0;
}
///
/// Gets and sets the property MinimumViableContactDurationSeconds.
///
/// Smallest amount of time in seconds that you’d like to see for an available contact.
/// AWS Ground Station will not present you with contacts shorter than this duration.
///
///
[AWSProperty(Min=1, Max=21600)]
public int MinimumViableContactDurationSeconds
{
get { return this._minimumViableContactDurationSeconds.GetValueOrDefault(); }
set { this._minimumViableContactDurationSeconds = value; }
}
// Check to see if MinimumViableContactDurationSeconds property is set
internal bool IsSetMinimumViableContactDurationSeconds()
{
return this._minimumViableContactDurationSeconds.HasValue;
}
///
/// Gets and sets the property MissionProfileId.
///
/// UUID of a mission profile.
///
///
[AWSProperty(Required=true, Min=1, Max=128)]
public string MissionProfileId
{
get { return this._missionProfileId; }
set { this._missionProfileId = value; }
}
// Check to see if MissionProfileId property is set
internal bool IsSetMissionProfileId()
{
return this._missionProfileId != null;
}
///
/// Gets and sets the property Name.
///
/// Name of a mission profile.
///
///
[AWSProperty(Min=1, Max=256)]
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 StreamsKmsKey.
///
/// KMS key to use for encrypting streams.
///
///
public KmsKey StreamsKmsKey
{
get { return this._streamsKmsKey; }
set { this._streamsKmsKey = value; }
}
// Check to see if StreamsKmsKey property is set
internal bool IsSetStreamsKmsKey()
{
return this._streamsKmsKey != null;
}
///
/// Gets and sets the property StreamsKmsRole.
///
/// Role to use for encrypting streams with KMS key.
///
///
public string StreamsKmsRole
{
get { return this._streamsKmsRole; }
set { this._streamsKmsRole = value; }
}
// Check to see if StreamsKmsRole property is set
internal bool IsSetStreamsKmsRole()
{
return this._streamsKmsRole != null;
}
///
/// Gets and sets the property TrackingConfigArn.
///
/// ARN of a tracking Config
.
///
///
public string TrackingConfigArn
{
get { return this._trackingConfigArn; }
set { this._trackingConfigArn = value; }
}
// Check to see if TrackingConfigArn property is set
internal bool IsSetTrackingConfigArn()
{
return this._trackingConfigArn != null;
}
}
}