private async Task CreateDirectoryIfNotExistsAsync()
        {
            if (await _storage.ExistsAsync(_directory.Path, _cancellationToken))
            {
                _logger.Info($"{_directory.Path} - Exists.");
            }
            else
            {
                await _storage.CreateFolderAsync(_directory.Path, cancellationToken : _cancellationToken);

                _logger.Info($"{_directory.Path} - Not exists: creating directory.");
            }
        }
        public async Task CreateFolderAsync(string folderPath, string dummyFileName = null, CancellationToken cancellationToken = default)
        {
            for (var i = 1; i <= Retries; i++)
            {
                try
                {
                    await _storage.CreateFolderAsync(folderPath, dummyFileName, cancellationToken);

                    break;
                }
                catch (Exception e)
                {
                    if (i == Retries)
                    {
                        throw new ApplicationException($"Maximum {Retries} retries exceeded for request.", e);
                    }

                    await Task.Delay(Delay *i);
                }
            }
        }