Added early copy URL support for Azure Storage

This commit is contained in:
Jaex 2019-01-28 00:02:25 +03:00
parent bee6373ccd
commit 5c65d09293
2 changed files with 8 additions and 4 deletions

View file

@ -94,7 +94,11 @@ public override UploadResult Upload(Stream stream, string fileName)
string date = DateTime.UtcNow.ToString("R", CultureInfo.InvariantCulture);
string uploadPath = GetUploadPath(fileName);
string url = GenerateURL(uploadPath, true);
string requestURL = GenerateURL(uploadPath, true);
string resultURL = GenerateURL(uploadPath);
OnEarlyURLCopyRequested(resultURL);
string contentType = UploadHelpers.GetMimeType(fileName);
NameValueCollection requestHeaders = new NameValueCollection();
@ -108,14 +112,14 @@ public override UploadResult Upload(Stream stream, string fileName)
requestHeaders["Authorization"] = $"SharedKey {AzureStorageAccountName}:{stringToSign}";
SendRequest(HttpMethod.PUT, url, stream, contentType, null, requestHeaders);
SendRequest(HttpMethod.PUT, requestURL, stream, contentType, null, requestHeaders);
if (LastResponseInfo != null && LastResponseInfo.Headers != null && LastResponseInfo.Headers["ETag"] != null)
{
return new UploadResult
{
IsSuccess = true,
URL = GenerateURL(uploadPath)
URL = resultURL
};
}

View file

@ -455,7 +455,7 @@ public class TaskSettingsAdvanced
Editor("System.Windows.Forms.Design.StringCollectionEditor,System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))]
public List<string> ImageExtensions { get; set; }
[Category("Upload"), DefaultValue(false), Description("Copy URL before start upload. Only works for FTP, FTPS, SFTP, Amazon S3 and Google Cloud Storage.")]
[Category("Upload"), DefaultValue(false), Description("Copy URL before start upload. Only works for FTP, FTPS, SFTP, Amazon S3, Google Cloud Storage and Azure Storage.")]
public bool EarlyCopyURL { get; set; }
[Category("Upload"), Description("Files with these file extensions will be uploaded using text uploader."),