Class LocalTextDataItem

java.lang.Object
ghidra.framework.store.local.LocalFolderItem
ghidra.framework.store.local.LocalTextDataItem
All Implemented Interfaces:
FolderItem, TextDataItem

public class LocalTextDataItem extends LocalFolderItem implements TextDataItem
LocalTextDataItem provides a LocalFolderItem implementation which stores text data within the associated propertyFile and without any other data storage.
  • Constructor Details

    • LocalTextDataItem

      public LocalTextDataItem(LocalFileSystem fileSystem, ItemPropertyFile propertyFile) throws IOException
      Constructor for an existing local link file item which corresponds to the specified property file.
      Parameters:
      fileSystem - file system
      propertyFile - database property file
      Throws:
      IOException - if an IO Error occurs
    • LocalTextDataItem

      public LocalTextDataItem(LocalFileSystem fileSystem, ItemPropertyFile propertyFile, String fileID, String contentType, String textData) throws IOException
      Create a new local text data file item.
      Parameters:
      fileSystem - file system
      propertyFile - serialized data property file
      fileID - file ID to be associated with new file or null
      contentType - user content type
      textData - text to be stored within associated property file
      Throws:
      IOException - if an IO Error occurs
  • Method Details

    • getTextData

      public String getTextData()
      Get the text data that was stored with this item
      Specified by:
      getTextData in interface TextDataItem
      Returns:
      text data
    • length

      public long length() throws IOException
      Description copied from interface: FolderItem
      Returns the length of this domain file. This size is the minimum disk space used for storing this file, but does not account for additional storage space used to tracks changes, etc.
      Specified by:
      length in interface FolderItem
      Returns:
      file length
      Throws:
      IOException - thrown if IO or access error occurs
    • updateCheckout

      public void updateCheckout(FolderItem versionedFolderItem, boolean updateItem, TaskMonitor monitor) throws IOException
      Description copied from class: LocalFolderItem
      Update this non-versioned item with the latest version of the specified versioned item.
      Specified by:
      updateCheckout in class LocalFolderItem
      Parameters:
      versionedFolderItem - versioned item which corresponds to this non-versioned item.
      updateItem - if true this items content is updated using the versionedFolderItem
      monitor - progress monitor for update
      Throws:
      IOException - if this file is not a checked-out non-versioned file or an IO error occurs.
    • updateCheckout

      public void updateCheckout(FolderItem item, int checkoutVersion) throws IOException
      Description copied from class: LocalFolderItem
      Update this non-versioned item with the contents of the specified item which must be within the same non-versioned fileSystem. If successful, the specified item will be removed after its content has been moved into this item.
      Specified by:
      updateCheckout in class LocalFolderItem
      Parameters:
      item -
      checkoutVersion -
      Throws:
      IOException - if this file is not a checked-out non-versioned file or an IO error occurs.
    • output

      public void output(File outputFile, int version, TaskMonitor monitor) throws IOException
      Description copied from interface: FolderItem
      Serialize (i.e., pack) this item into the specified outputFile.
      Specified by:
      output in interface FolderItem
      Parameters:
      outputFile - packed output file to be created
      version - if this item is versioned, specifies the version to be output, otherwise -1 should be specified.
      monitor - progress monitor
      Throws:
      IOException
    • getCurrentVersion

      public int getCurrentVersion()
      Description copied from interface: FolderItem
      Return the latest/current version.
      Specified by:
      getCurrentVersion in interface FolderItem
    • canRecover

      public boolean canRecover()
      Description copied from interface: FolderItem
      Returns true if unsaved file changes can be recovered.
      Specified by:
      canRecover in interface FolderItem
    • setVersionInfo

      public void setVersionInfo(Version version) throws IOException
      Set the version info associated with this versioned file. Only a single version is supported.
      Parameters:
      version - version information (only user, create time and comment is retained)
      Throws:
      IOException - if an IO error occurs
    • getVersions

      public Version[] getVersions() throws IOException
      Description copied from interface: FolderItem
      Returns list of all available versions or null if item is not versioned.
      Specified by:
      getVersions in interface FolderItem
      Overrides:
      getVersions in class LocalFolderItem
      Throws:
      IOException - thrown if an IO error occurs.
      See Also: