/*
* 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 transfer-2018-11-05.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.Transfer.Model
{
///
/// Contains the details for an AS2 connector object. The connector object is used for
/// AS2 outbound processes, to connect the Transfer Family customer with the trading partner.
///
public partial class As2ConnectorConfig
{
private string _basicAuthSecretId;
private CompressionEnum _compression;
private EncryptionAlg _encryptionAlgorithm;
private string _localProfileId;
private MdnResponse _mdnResponse;
private MdnSigningAlg _mdnSigningAlgorithm;
private string _messageSubject;
private string _partnerProfileId;
private SigningAlg _signingAlgorithm;
///
/// Gets and sets the property BasicAuthSecretId.
///
/// Provides Basic authentication support to the AS2 Connectors API. To use Basic authentication,
/// you must provide the name or Amazon Resource Name (ARN) of a secret in Secrets Manager.
///
///
///
/// The default value for this parameter is null
, which indicates that Basic
/// authentication is not enabled for the connector.
///
///
///
/// If the connector should use Basic authentication, the secret needs to be in the following
/// format:
///
///
///
/// { "Username": "user-name", "Password": "user-password" }
///
///
///
/// Replace user-name
and user-password
with the credentials
/// for the actual user that is being authenticated.
///
///
///
/// Note the following:
///
/// -
///
/// You are storing these credentials in Secrets Manager, not passing them directly
/// into this API.
///
///
-
///
/// If you are using the API, SDKs, or CloudFormation to configure your connector, then
/// you must create the secret before you can enable Basic authentication. However, if
/// you are using the Amazon Web Services management console, you can have the system
/// create the secret for you.
///
///
///
/// If you have previously enabled Basic authentication for a connector, you can disable
/// it by using the UpdateConnector
API call. For example, if you are using
/// the CLI, you can run the following command to remove Basic authentication:
///
///
///
/// update-connector --connector-id my-connector-id --as2-config 'BasicAuthSecretId=""'
///
///
///
[AWSProperty(Min=0, Max=2048)]
public string BasicAuthSecretId
{
get { return this._basicAuthSecretId; }
set { this._basicAuthSecretId = value; }
}
// Check to see if BasicAuthSecretId property is set
internal bool IsSetBasicAuthSecretId()
{
return this._basicAuthSecretId != null;
}
///
/// Gets and sets the property Compression.
///
/// Specifies whether the AS2 file is compressed.
///
///
public CompressionEnum Compression
{
get { return this._compression; }
set { this._compression = value; }
}
// Check to see if Compression property is set
internal bool IsSetCompression()
{
return this._compression != null;
}
///
/// Gets and sets the property EncryptionAlgorithm.
///
/// The algorithm that is used to encrypt the file.
///
///
///
/// You can only specify NONE
if the URL for your connector uses HTTPS. This
/// ensures that no traffic is sent in clear text.
///
///
///
public EncryptionAlg EncryptionAlgorithm
{
get { return this._encryptionAlgorithm; }
set { this._encryptionAlgorithm = value; }
}
// Check to see if EncryptionAlgorithm property is set
internal bool IsSetEncryptionAlgorithm()
{
return this._encryptionAlgorithm != null;
}
///
/// Gets and sets the property LocalProfileId.
///
/// A unique identifier for the AS2 local profile.
///
///
[AWSProperty(Min=19, Max=19)]
public string LocalProfileId
{
get { return this._localProfileId; }
set { this._localProfileId = value; }
}
// Check to see if LocalProfileId property is set
internal bool IsSetLocalProfileId()
{
return this._localProfileId != null;
}
///
/// Gets and sets the property MdnResponse.
///
/// Used for outbound requests (from an Transfer Family server to a partner AS2 server)
/// to determine whether the partner response for transfers is synchronous or asynchronous.
/// Specify either of the following values:
///
/// -
///
///
SYNC
: The system expects a synchronous MDN response, confirming that
/// the file was transferred successfully (or not).
///
/// -
///
///
NONE
: Specifies that no MDN response is required.
///
///
///
public MdnResponse MdnResponse
{
get { return this._mdnResponse; }
set { this._mdnResponse = value; }
}
// Check to see if MdnResponse property is set
internal bool IsSetMdnResponse()
{
return this._mdnResponse != null;
}
///
/// Gets and sets the property MdnSigningAlgorithm.
///
/// The signing algorithm for the MDN response.
///
///
///
/// If set to DEFAULT (or not set at all), the value for SigningAlgorithm
/// is used.
///
///
///
public MdnSigningAlg MdnSigningAlgorithm
{
get { return this._mdnSigningAlgorithm; }
set { this._mdnSigningAlgorithm = value; }
}
// Check to see if MdnSigningAlgorithm property is set
internal bool IsSetMdnSigningAlgorithm()
{
return this._mdnSigningAlgorithm != null;
}
///
/// Gets and sets the property MessageSubject.
///
/// Used as the Subject
HTTP header attribute in AS2 messages that are being
/// sent with the connector.
///
///
[AWSProperty(Min=1, Max=1024)]
public string MessageSubject
{
get { return this._messageSubject; }
set { this._messageSubject = value; }
}
// Check to see if MessageSubject property is set
internal bool IsSetMessageSubject()
{
return this._messageSubject != null;
}
///
/// Gets and sets the property PartnerProfileId.
///
/// A unique identifier for the partner profile for the connector.
///
///
[AWSProperty(Min=19, Max=19)]
public string PartnerProfileId
{
get { return this._partnerProfileId; }
set { this._partnerProfileId = value; }
}
// Check to see if PartnerProfileId property is set
internal bool IsSetPartnerProfileId()
{
return this._partnerProfileId != null;
}
///
/// Gets and sets the property SigningAlgorithm.
///
/// The algorithm that is used to sign the AS2 messages sent with the connector.
///
///
public SigningAlg SigningAlgorithm
{
get { return this._signingAlgorithm; }
set { this._signingAlgorithm = value; }
}
// Check to see if SigningAlgorithm property is set
internal bool IsSetSigningAlgorithm()
{
return this._signingAlgorithm != null;
}
}
}