Lob.NHibernate.Providers.FileSystemCas.FileSystemCasConnection.GetAllIdentifiersInFolderCreatedBefore C# (CSharp) Метод

GetAllIdentifiersInFolderCreatedBefore() публичный Метод

public GetAllIdentifiersInFolderCreatedBefore ( System.DateTime createdBefore ) : IEnumerable
createdBefore System.DateTime
Результат IEnumerable
        public IEnumerable<byte[]> GetAllIdentifiersInFolderCreatedBefore(DateTime createdBefore)
        {
            foreach (string firstByteDirectory in Directory.GetDirectories(_path))
            {
                byte firstByte;
                try
                {
                    firstByte = byte.Parse(new DirectoryInfo(firstByteDirectory).Name, NumberStyles.AllowHexSpecifier);
                }
                catch (Exception ex)
                {
                    if (log.IsErrorEnabled) log.Error("Exception occured decoding first-byte directory", ex);
                    continue;
                }

                foreach (string secondByteDirectory in Directory.GetDirectories(firstByteDirectory))
                {
                    byte secondByte;

                    try
                    {
                        secondByte = byte.Parse(new DirectoryInfo(secondByteDirectory).Name, NumberStyles.AllowHexSpecifier);
                    }
                    catch (Exception ex)
                    {
                        if (log.IsErrorEnabled) log.Error("Exception occured decoding second-byte directory", ex);
                        continue;
                    }

                    foreach (string file in Directory.GetFiles(secondByteDirectory))
                    {
                        var fileInfo = new FileInfo(file);

                        if (fileInfo.CreationTime > createdBefore) continue;

                        byte[] identifier;

                        try
                        {
                            identifier = CreateIdentifier(firstByte, secondByte, Path.GetFileNameWithoutExtension(file));
                        }
                        catch (Exception	ex)
                        {
                            if (log.IsErrorEnabled) log.Error(string.Format("Exception occured decoding identifier for file: {0}", file), ex);
                            continue;
                        }

                        yield return identifier;
                    }
                }
            }
        }