Esempio n. 1
0
        public int Act(DownloadFileOptions options)
        {
            _correlationId = Guid.NewGuid().ToString();

            var outputFileName = options.FileName;

            if (string.IsNullOrEmpty(outputFileName))
            {
                outputFileName = Path.GetFileNameWithoutExtension(options.Url);
            }

            var extension = options.Extension;

            if (string.IsNullOrEmpty(extension))
            {
                extension = Path.GetExtension(options.Url);
            }

            var request = new DownloadRequest(
                url: options.Url,
                outputFileName: outputFileName,
                outputExtension: extension,
                correlationId: _correlationId);

            var response = _fileDownloaderService.Download(request).Result;

            if (response.IsValid)
            {
                _auditor.AuditSuccess("Url", request.Url, "FileDownloaded", response);
                return(0);
            }

            _auditor.AuditFailure("Url", request.Url, "FileDownloadFailed", response);
            return(1);
        }