/*
* Copyright 2010-2014 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 firehose-2015-08-04.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.KinesisFirehose.Model
{
///
/// Describes an update for a destination in Amazon Redshift.
///
public partial class RedshiftDestinationUpdate
{
private CloudWatchLoggingOptions _cloudWatchLoggingOptions;
private string _clusterJDBCURL;
private CopyCommand _copyCommand;
private string _password;
private ProcessingConfiguration _processingConfiguration;
private RedshiftRetryOptions _retryOptions;
private string _roleARN;
private RedshiftS3BackupMode _s3BackupMode;
private S3DestinationUpdate _s3BackupUpdate;
private S3DestinationUpdate _s3Update;
private string _username;
///
/// Gets and sets the property CloudWatchLoggingOptions.
///
/// The Amazon CloudWatch logging options for your delivery stream.
///
///
public CloudWatchLoggingOptions CloudWatchLoggingOptions
{
get { return this._cloudWatchLoggingOptions; }
set { this._cloudWatchLoggingOptions = value; }
}
// Check to see if CloudWatchLoggingOptions property is set
internal bool IsSetCloudWatchLoggingOptions()
{
return this._cloudWatchLoggingOptions != null;
}
///
/// Gets and sets the property ClusterJDBCURL.
///
/// The database connection string.
///
///
[AWSProperty(Min=1)]
public string ClusterJDBCURL
{
get { return this._clusterJDBCURL; }
set { this._clusterJDBCURL = value; }
}
// Check to see if ClusterJDBCURL property is set
internal bool IsSetClusterJDBCURL()
{
return this._clusterJDBCURL != null;
}
///
/// Gets and sets the property CopyCommand.
///
/// The COPY
command.
///
///
public CopyCommand CopyCommand
{
get { return this._copyCommand; }
set { this._copyCommand = value; }
}
// Check to see if CopyCommand property is set
internal bool IsSetCopyCommand()
{
return this._copyCommand != null;
}
///
/// Gets and sets the property Password.
///
/// The user password.
///
///
[AWSProperty(Min=6)]
public string Password
{
get { return this._password; }
set { this._password = value; }
}
// Check to see if Password property is set
internal bool IsSetPassword()
{
return this._password != null;
}
///
/// Gets and sets the property ProcessingConfiguration.
///
/// The data processing configuration.
///
///
public ProcessingConfiguration ProcessingConfiguration
{
get { return this._processingConfiguration; }
set { this._processingConfiguration = value; }
}
// Check to see if ProcessingConfiguration property is set
internal bool IsSetProcessingConfiguration()
{
return this._processingConfiguration != null;
}
///
/// Gets and sets the property RetryOptions.
///
/// The retry behavior in case Kinesis Data Firehose is unable to deliver documents to
/// Amazon Redshift. Default value is 3600 (60 minutes).
///
///
public RedshiftRetryOptions RetryOptions
{
get { return this._retryOptions; }
set { this._retryOptions = value; }
}
// Check to see if RetryOptions property is set
internal bool IsSetRetryOptions()
{
return this._retryOptions != null;
}
///
/// Gets and sets the property RoleARN.
///
/// The Amazon Resource Name (ARN) of the AWS credentials. For more information, see Amazon
/// Resource Names (ARNs) and AWS Service Namespaces.
///
///
[AWSProperty(Min=1, Max=512)]
public string RoleARN
{
get { return this._roleARN; }
set { this._roleARN = value; }
}
// Check to see if RoleARN property is set
internal bool IsSetRoleARN()
{
return this._roleARN != null;
}
///
/// Gets and sets the property S3BackupMode.
///
/// The Amazon S3 backup mode.
///
///
public RedshiftS3BackupMode S3BackupMode
{
get { return this._s3BackupMode; }
set { this._s3BackupMode = value; }
}
// Check to see if S3BackupMode property is set
internal bool IsSetS3BackupMode()
{
return this._s3BackupMode != null;
}
///
/// Gets and sets the property S3BackupUpdate.
///
/// The Amazon S3 destination for backup.
///
///
public S3DestinationUpdate S3BackupUpdate
{
get { return this._s3BackupUpdate; }
set { this._s3BackupUpdate = value; }
}
// Check to see if S3BackupUpdate property is set
internal bool IsSetS3BackupUpdate()
{
return this._s3BackupUpdate != null;
}
///
/// Gets and sets the property S3Update.
///
/// The Amazon S3 destination.
///
///
///
/// The compression formats SNAPPY
or ZIP
cannot be specified
/// in RedshiftDestinationUpdate.S3Update
because the Amazon Redshift COPY
/// operation that reads from the S3 bucket doesn't support these compression formats.
///
///
public S3DestinationUpdate S3Update
{
get { return this._s3Update; }
set { this._s3Update = value; }
}
// Check to see if S3Update property is set
internal bool IsSetS3Update()
{
return this._s3Update != null;
}
///
/// Gets and sets the property Username.
///
/// The name of the user.
///
///
[AWSProperty(Min=1)]
public string Username
{
get { return this._username; }
set { this._username = value; }
}
// Check to see if Username property is set
internal bool IsSetUsername()
{
return this._username != null;
}
}
}