Package ghidra.framework.model

# Interface DomainFolderFilter

All Known Subinterfaces:
  `DomainFileFilter`

All Known Implementing Classes:
  `DefaultDomainFileFilter`

public interface DomainFolderFilter
`DomainFolderFilter` interface to controls the following of linked-folders.

Without specific overrides the default behavior:

- `ignoreBrokenLinks()` (true) Ignores all broken links
- `ignoreExternalLinks()` (true) Ignore external folder-links
- `ignoreFolderLinks()` (false) Will follow internal folder-links

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final DomainFolderFilter`
  `ALL_FOLDERS_FILTER`
  Folder filter which accepts all folders and will follow all linked folders.
  `static final DomainFolderFilter`
  `ALL_INTERNAL_FOLDERS_FILTER`
  File filter which allows only folders and internal folder-links.
  `static final DomainFolderFilter`
  `NON_LINKED_FOLDER_FILTER`
  Folder filter which accepts only real folders and ignores all folder-links.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `default boolean`
  `ignoreBrokenLinks()`
  Check if link-files should be ignored if the link is broken.
  `default boolean`
  `ignoreExternalLinks()`
  Check if link-files should be ignored if the link is external (i.e., Ghidra-URL).
  `default boolean`
  `ignoreFolderLinks()`
  Check if folder-links should be ignored (includes internal and external).

- ## Field Details

  - ### ALL_FOLDERS_FILTER

    static final DomainFolderFilter ALL_FOLDERS_FILTER
    Folder filter which accepts all folders and will follow all linked folders. All broken links are ignored.

  - ### ALL_INTERNAL_FOLDERS_FILTER

    static final DomainFolderFilter ALL_INTERNAL_FOLDERS_FILTER
    File filter which allows only folders and internal folder-links. All external and broken links are ignored. This filter is useful when selecting a folder when creating/saving a file to the active project. If targeting a specific file content type for creation or saving use of `DefaultDomainFileFilter` may be preferred.

    It is the consumer of this filter who is responsible for following folder-links.

  - ### NON_LINKED_FOLDER_FILTER

    static final DomainFolderFilter NON_LINKED_FOLDER_FILTER
    Folder filter which accepts only real folders and ignores all folder-links. All broken links are ignored.

- ## Method Details

  - ### ignoreFolderLinks

    default boolean ignoreFolderLinks()
    Check if folder-links should be ignored (includes internal and external).
    Returns:
      true if all folder-links should be ignored (i.e., not followed/displayed)

  - ### ignoreExternalLinks

    default boolean ignoreExternalLinks()
    Check if link-files should be ignored if the link is external (i.e., Ghidra-URL). Multi-level internal links are followed within the same project before a determination is made.

    If this method is not implemented the default behavior will ignore external links. This method should be ignored for folder-links if `ignoreFolderLinks()` returns true.

    Returns:
      true if external links should be ignored (i.e., not displayed)

  - ### ignoreBrokenLinks

    default boolean ignoreBrokenLinks()
    Check if link-files should be ignored if the link is broken. Multi-level internal links are followed within the same project before a determination is made.

    If this method is not implemented the default behavior will ignore broken links.

    Returns:
      true if broken links should be ignored (i.e., not followed/displayed)