public override void Execute()
{
PutObjectRequest putRequest = new PutObjectRequest()
{
BucketName = this._fileTransporterRequest.BucketName,
Key = this._fileTransporterRequest.Key,
CannedACL = this._fileTransporterRequest.CannedACL,
ContentType = this._fileTransporterRequest.ContentType,
FilePath = this._fileTransporterRequest.FilePath,
StorageClass = this._fileTransporterRequest.StorageClass,
AutoCloseStream = this._fileTransporterRequest.AutoCloseStream,
AutoResetStreamPosition = this._fileTransporterRequest.AutoResetStreamPosition,
ServerSideEncryptionMethod = this._fileTransporterRequest.ServerSideEncryptionMethod,
Headers = this._fileTransporterRequest.Headers,
Metadata = this._fileTransporterRequest.Metadata,
#if (BCL && !BCL45)
Timeout = ClientConfig.GetTimeoutValue(this._config.DefaultTimeout, this._fileTransporterRequest.Timeout)
#endif
};
putRequest.StreamUploadProgressCallback += new EventHandler<Runtime.StreamTransferProgressArgs>(this.putObjectProgressEventCallback);
putRequest.InputStream = this._fileTransporterRequest.InputStream;
this._s3Client.PutObject(putRequest);
}