Class FileTreeBuilder

  • All Implemented Interfaces:
    Iterable<File>, xyz.cofe.iter.Eterable<File>

    public class FileTreeBuilder
    extends Object
    implements xyz.cofe.iter.Eterable<File>
    Алгоритм обхода дерева каталогов
    • Constructor Detail

      • FileTreeBuilder

        protected FileTreeBuilder​(FileTreeBuilder sample)
        Конструктор копирования
        Parameters:
        sample - образец для копирования
      • FileTreeBuilder

        public FileTreeBuilder​(File from)
        Конструктор
        Parameters:
        from - каталог (или файл) относительно начинается обход
    • Method Detail

      • getFrom

        public File getFrom()
        Указывает каталог с которого начинаеться обход
        Returns:
        начальный каталог
      • getDirFollow

        public DirFollow getDirFollow()
        Указывает алгоритм обхода
        Returns:
        алгоритм обхода
      • dirFollow

        public FileTreeBuilder dirFollow​(DirFollow follow)
        Указывает алгоритм обхода
        Parameters:
        follow - алгоритм обхода
        Returns:
        Клон с новым алгоритмом
      • isCheckDir

        public boolean isCheckDir()
        Провереть что дочерний элемент является каталогом
        Returns:
        true (по умолчанию) - осуществлять проверку
      • checkDir

        public FileTreeBuilder checkDir​(boolean checkDir)
        Провереть что дочерний элемент является каталогом
        Parameters:
        checkDir - true (по умолчанию) - осуществлять проверку
        Returns:
        Клон с новыми настройками
      • isCheckCycle

        public boolean isCheckCycle()
        Проверять наличие закольцованности при обходе дочерних узлов
        Returns:
        true (по умолчанию) - проверять наличие закольцованности
      • checkCycle

        public FileTreeBuilder checkCycle​(boolean checkCycle)
        Проверять наличие закольцованности при обходе дочерних узлов
        Parameters:
        checkCycle - true (по умолчанию) - проверять наличие закольцованности
        Returns:
        Клон с новыми настройками
      • getErrorBehavior

        public DirFollow.ErrorBehavior getErrorBehavior()
        Возвращает поведение при возникновении ошибки
        Returns:
        поведение при возникновении ошибки
      • errorBehavior

        public FileTreeBuilder errorBehavior​(DirFollow.ErrorBehavior errorBehavior)
        Указывает поведение при возникновении ошибки
        Parameters:
        errorBehavior - поведение при возникновении ошибки
        Returns:
        Клон с новыми настройками
      • isFollowLinks

        public boolean isFollowLinks()
        Возвращает следовать ли символичным ссылкам
        Returns:
        true - следовать ссылкам
      • followLinks

        public FileTreeBuilder followLinks​(boolean followLinks)
        Указывает следовать ли символичным ссылкам
        Parameters:
        followLinks - true - следовать ссылкам
        Returns:
        Клон с новыми настройками
      • tree

        public xyz.cofe.iter.Eterable<xyz.cofe.iter.TreeStep<File>> tree()
      • go

        public xyz.cofe.iter.Eterable<File> go()
        Возвращает итератор по дереву каталогов
        Returns:
        итератор
      • iterator

        public Iterator<File> iterator()
        Возвращает итератор по дереву каталогов
        Specified by:
        iterator in interface Iterable<File>
        Returns:
        итератор