Class IgnoreNode


  • public class IgnoreNode
    extends Object
    Represents a bundle of ignore rules inherited from a base directory. This class is not thread safe, it maintains state about the last match.
    • Constructor Detail

      • IgnoreNode

        public IgnoreNode()
        Create an empty ignore node with no rules.
      • IgnoreNode

        public IgnoreNode​(List<FastIgnoreRule> rules)
        Create an ignore node with given rules.
        Parameters:
        rules - list of rules.
    • Method Detail

      • parse

        public void parse​(InputStream in)
                   throws IOException
        Parse files according to gitignore standards.
        Parameters:
        in - input stream holding the standard ignore format. The caller is responsible for closing the stream.
        Throws:
        IOException - Error thrown when reading an ignore file.
      • parse

        public void parse​(String sourceName,
                          InputStream in)
                   throws IOException
        Parse files according to gitignore standards.
        Parameters:
        sourceName - identifying the source of the stream
        in - input stream holding the standard ignore format. The caller is responsible for closing the stream.
        Throws:
        IOException - Error thrown when reading an ignore file.
        Since:
        5.11
      • getRules

        public List<FastIgnoreRule> getRules()
        Get list of all ignore rules held by this node
        Returns:
        list of all ignore rules held by this node
      • isIgnored

        public IgnoreNode.MatchResult isIgnored​(String entryPath,
                                                boolean isDirectory)
        Determine if an entry path matches an ignore rule.
        Parameters:
        entryPath - the path to test. The path must be relative to this ignore node's own repository path, and in repository path format (uses '/' and not '\').
        isDirectory - true if the target item is a directory.
        Returns:
        status of the path.
      • checkIgnored

        @Nullable
        public Boolean checkIgnored​(String entryPath,
                                    boolean isDirectory)
        Determine if an entry path matches an ignore rule.
        Parameters:
        entryPath - the path to test. The path must be relative to this ignore node's own repository path, and in repository path format (uses '/' and not '\').
        isDirectory - true if the target item is a directory.
        Returns:
        Boolean.TRUE, if the entry is ignored; Boolean.FALSE, if the entry is forced to be not ignored (negated match); or null, if undetermined
        Since:
        4.11