Beispiel #1
0
        private async Task <int> ProcessItensAsync(IEnumerable <IAzureBlob> itens, string fileExtension)
        {
            var itens_added = 0;

            var queue = await AzureQueue.CreateAsync(_queueStorageAccount, _queueName);

            foreach (var item in itens)
            {
                if (item is IAzureBlobFolder)
                {
                    var folder = (IAzureBlobFolder)item;
                    Console.WriteLine($"Folder: {folder.Path}");
                    itens_added += await ProcessItensAsync(folder.EnumItems(), fileExtension);
                }
                else if (item is IAzureBlobFile)
                {
                    IAzureBlobFile itemFile = item as IAzureBlobFile;
                    if (string.Equals(itemFile.Extension, fileExtension, StringComparison.CurrentCultureIgnoreCase))
                    {
                        await queue.AddMessageAsync(itemFile.Uri);

                        Console.WriteLine($"Arquivo: {itemFile.Path}");
                        itens_added++;
                    }
                }
            }

            return(itens_added);
        }
Beispiel #2
0
        private static async Task <int> ProcessItensAsync(IEnumerable <IAzureBlob> itens, string fileExtension)
        {
            var itens_added = 0;

            var queue = new AzureQueue(_config.Get("QUEUE_STORAGE_ACCOUNT"), _config.Get("QUEUE_NAME"));

            foreach (var item in itens)
            {
                if (item is IAzureBlobFolder)
                {
                    var folder = (IAzureBlobFolder)item;
                    Console.WriteLine($"Folder: {folder.Path}");
                    itens_added += await ProcessItensAsync(folder.EnumItems(), fileExtension);
                }
                else if (item is IAzureBlobFile)
                {
                    IAzureBlobFile itemFile = item as IAzureBlobFile;
                    if (string.Equals(itemFile.Extension, fileExtension, StringComparison.CurrentCultureIgnoreCase))
                    {
                        await queue.AddMessageAsync(itemFile.Uri);

                        Console.WriteLine($"Arquivo: {itemFile.Path}");
                        itens_added++;
                    }
                }
            }

            return(itens_added);
        }