public IMessageQueue GetOrCreate(string queueName)
 {
     Queue q = new Queue();
       return q;
 }
Ejemplo n.º 2
0
        /// <summary>
        ///   Read a Folder and return the files
        /// </summary>
        /// <param name = "folder"></param>
        /// <param name = "foundFiles"></param>
        private IEnumerable<FileInfo> GetFiles(DirectoryInfo dirInfo, bool recursive)
        {
            Queue<DirectoryInfo> directories = new Queue<DirectoryInfo>();
              directories.Enqueue(dirInfo);
              Queue<FileInfo> files = new Queue<FileInfo>();
              while (files.Count > 0 || directories.Count > 0)
              {
            if (files.Count > 0)
            {
              yield return files.Dequeue();
            }
            try
            {
              if (directories.Count > 0)
              {
            DirectoryInfo dir = directories.Dequeue();

            if (recursive)
            {
              DirectoryInfo[] newDirectories = dir.GetDirectories();
              foreach (DirectoryInfo di in newDirectories)
              {
                directories.Enqueue(di);
              }
            }

            foreach (string extension in _filterFileExtensions)
            {
              string searchFilter = string.Format("{0}.{1}", _filterFileMask, extension);
              FileInfo[] newFiles = dir.GetFiles(searchFilter);
              foreach (FileInfo file in newFiles)
              {
                files.Enqueue(file);
              }
            }
              }
            }
            catch (UnauthorizedAccessException ex)
            {
              log.ErrorException(ex.Message, ex);
            }
              }
        }