Class FolderLinkContentHandler

java.lang.Object
ghidra.framework.data.LinkHandler<NullFolderDomainObject>
ghidra.framework.data.FolderLinkContentHandler
All Implemented Interfaces:
ContentHandler<NullFolderDomainObject>, ExtensionPoint

public class FolderLinkContentHandler extends LinkHandler<NullFolderDomainObject>
FolderLinkContentHandler provide folder-link support. Implementation relies on AppInfo.getActiveProject() to provide life-cycle management for related transient-projects opened while following folder-links.
  • Field Details

  • Constructor Details

    • FolderLinkContentHandler

      public FolderLinkContentHandler()
  • Method Details

    • getContentType

      public String getContentType()
      Description copied from interface: ContentHandler
      Returns a unique content-type identifier
      Returns:
      content type identifier for associated domain object(s).
    • getContentTypeDisplayString

      public String getContentTypeDisplayString()
      Description copied from interface: ContentHandler
      A string that is meant to be presented to the user.
      Returns:
      user friendly content type for associated domain object(s).
    • getDomainObjectClass

      public Class<NullFolderDomainObject> getDomainObjectClass()
      Description copied from interface: ContentHandler
      Returns domain object implementation class supported.
      Returns:
      implementation class for the associated DomainObjectAdapter implementation.
    • getIcon

      public Icon getIcon()
      Description copied from class: LinkHandler
      Get the base icon for this link-file which does not include the link overlay icon.
      Specified by:
      getIcon in interface ContentHandler<NullFolderDomainObject>
      Specified by:
      getIcon in class LinkHandler<NullFolderDomainObject>
      Returns:
      base icon to be used for a DomainFile with the associated content type.
    • getDefaultToolName

      public String getDefaultToolName()
      Description copied from interface: ContentHandler
      Returns the name of the default tool/template that should be used to open this content type.
      Returns:
      associated default tool name for this content type
    • getLinkedFolder

      public static LinkedGhidraFolder getLinkedFolder(DomainFile folderLinkFile) throws IOException
      Get linked domain folder.

      IMPORTANT: The use of external GhidraURL-based links is only supported in the context of a an active project which is used to manage the associated project view.

      If the link refers to a folder within the active project (i.e., path based), the resulting linked folder will be treated as part of that project, otherwise content will be treated as read-only.

      Parameters:
      folderLinkFile - folder-link file.
      Returns:
      LinkedGhidraFolder referenced by specified folder-link file or null if folderLinkFile content type is not "FolderLink".
      Throws:
      IOException - if an IO or folder item access error occurs or a linkage error exists.