/*
* 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 ssm-2014-11-06.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.SimpleSystemsManagement.Model
{
///
/// Container for the parameters to the CreateResourceDataSync operation.
/// A resource data sync helps you view data from multiple sources in a single location.
/// Amazon Web Services Systems Manager offers two types of resource data sync: SyncToDestination
/// and SyncFromSource
.
///
///
///
/// You can configure Systems Manager Inventory to use the SyncToDestination
/// type to synchronize Inventory data from multiple Amazon Web Services Regions to a
/// single Amazon Simple Storage Service (Amazon S3) bucket. For more information, see
/// Configuring
/// resource data sync for Inventory in the Amazon Web Services Systems Manager
/// User Guide.
///
///
///
/// You can configure Systems Manager Explorer to use the SyncFromSource
/// type to synchronize operational work items (OpsItems) and operational data (OpsData)
/// from multiple Amazon Web Services Regions to a single Amazon S3 bucket. This type
/// can synchronize OpsItems and OpsData from multiple Amazon Web Services accounts and
/// Amazon Web Services Regions or EntireOrganization
by using Organizations.
/// For more information, see Setting
/// up Systems Manager Explorer to display data from multiple accounts and Regions
/// in the Amazon Web Services Systems Manager User Guide.
///
///
///
/// A resource data sync is an asynchronous operation that returns immediately. After
/// a successful initial sync is completed, the system continuously syncs data. To check
/// the status of a sync, use the ListResourceDataSync.
///
///
///
/// By default, data isn't encrypted in Amazon S3. We strongly recommend that you enable
/// encryption in Amazon S3 to ensure secure data storage. We also recommend that you
/// secure access to the Amazon S3 bucket by creating a restrictive bucket policy.
///
///
///
public partial class CreateResourceDataSyncRequest : AmazonSimpleSystemsManagementRequest
{
private ResourceDataSyncS3Destination _s3Destination;
private string _syncName;
private ResourceDataSyncSource _syncSource;
private string _syncType;
///
/// Gets and sets the property S3Destination.
///
/// Amazon S3 configuration details for the sync. This parameter is required if the SyncType
/// value is SyncToDestination.
///
///
public ResourceDataSyncS3Destination S3Destination
{
get { return this._s3Destination; }
set { this._s3Destination = value; }
}
// Check to see if S3Destination property is set
internal bool IsSetS3Destination()
{
return this._s3Destination != null;
}
///
/// Gets and sets the property SyncName.
///
/// A name for the configuration.
///
///
[AWSProperty(Required=true, Min=1, Max=64)]
public string SyncName
{
get { return this._syncName; }
set { this._syncName = value; }
}
// Check to see if SyncName property is set
internal bool IsSetSyncName()
{
return this._syncName != null;
}
///
/// Gets and sets the property SyncSource.
///
/// Specify information about the data sources to synchronize. This parameter is required
/// if the SyncType
value is SyncFromSource.
///
///
public ResourceDataSyncSource SyncSource
{
get { return this._syncSource; }
set { this._syncSource = value; }
}
// Check to see if SyncSource property is set
internal bool IsSetSyncSource()
{
return this._syncSource != null;
}
///
/// Gets and sets the property SyncType.
///
/// Specify SyncToDestination
to create a resource data sync that synchronizes
/// data to an S3 bucket for Inventory. If you specify SyncToDestination
,
/// you must provide a value for S3Destination
. Specify SyncFromSource
/// to synchronize data from a single account and multiple Regions, or multiple Amazon
/// Web Services accounts and Amazon Web Services Regions, as listed in Organizations
/// for Explorer. If you specify SyncFromSource
, you must provide a value
/// for SyncSource
. The default value is SyncToDestination
.
///
///
[AWSProperty(Min=1, Max=64)]
public string SyncType
{
get { return this._syncType; }
set { this._syncType = value; }
}
// Check to see if SyncType property is set
internal bool IsSetSyncType()
{
return this._syncType != null;
}
}
}