/*
* 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 s3control-2018-08-20.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.S3Control.Model
{
///
/// The container for the service that will create the S3 manifest.
///
public partial class S3JobManifestGenerator
{
private bool? _enableManifestOutput;
private string _expectedBucketOwner;
private JobManifestGeneratorFilter _filter;
private S3ManifestOutputLocation _manifestOutputLocation;
private string _sourceBucket;
///
/// Gets and sets the property EnableManifestOutput.
///
/// Determines whether or not to write the job's generated manifest to a bucket.
///
///
[AWSProperty(Required=true)]
public bool EnableManifestOutput
{
get { return this._enableManifestOutput.GetValueOrDefault(); }
set { this._enableManifestOutput = value; }
}
// Check to see if EnableManifestOutput property is set
internal bool IsSetEnableManifestOutput()
{
return this._enableManifestOutput.HasValue;
}
///
/// Gets and sets the property ExpectedBucketOwner.
///
/// The Amazon Web Services account ID that owns the bucket the generated manifest is
/// written to. If provided the generated manifest bucket's owner Amazon Web Services
/// account ID must match this value, else the job fails.
///
///
[AWSProperty(Max=64)]
public string ExpectedBucketOwner
{
get { return this._expectedBucketOwner; }
set { this._expectedBucketOwner = value; }
}
// Check to see if ExpectedBucketOwner property is set
internal bool IsSetExpectedBucketOwner()
{
return this._expectedBucketOwner != null;
}
///
/// Gets and sets the property Filter.
///
/// Specifies rules the S3JobManifestGenerator should use to use to decide whether an
/// object in the source bucket should or should not be included in the generated job
/// manifest.
///
///
public JobManifestGeneratorFilter Filter
{
get { return this._filter; }
set { this._filter = value; }
}
// Check to see if Filter property is set
internal bool IsSetFilter()
{
return this._filter != null;
}
///
/// Gets and sets the property ManifestOutputLocation.
///
/// Specifies the location the generated manifest will be written to.
///
///
public S3ManifestOutputLocation ManifestOutputLocation
{
get { return this._manifestOutputLocation; }
set { this._manifestOutputLocation = value; }
}
// Check to see if ManifestOutputLocation property is set
internal bool IsSetManifestOutputLocation()
{
return this._manifestOutputLocation != null;
}
///
/// Gets and sets the property SourceBucket.
///
/// The source bucket used by the ManifestGenerator.
///
///
[AWSProperty(Required=true, Min=1, Max=128)]
public string SourceBucket
{
get { return this._sourceBucket; }
set { this._sourceBucket = value; }
}
// Check to see if SourceBucket property is set
internal bool IsSetSourceBucket()
{
return this._sourceBucket != null;
}
}
}