Package ghidra.app.util.bin.format.dwarf4.next.sectionprovider

# Class CompressedSectionProvider

java.lang.Object
ghidra.app.util.bin.format.dwarf4.next.sectionprovider.CompressedSectionProvider

All Implemented Interfaces:
  `DWARFSectionProvider`, `Closeable`, `AutoCloseable`

public class CompressedSectionProvider extends Object implements DWARFSectionProvider
A wrapper around another DWARFSectionProvider, this provider fetches DWARF section data that has been compressed and stored in sections in the underlying `DWARFSectionProvider`.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `CompressedSectionProvider(DWARFSectionProvider sp)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  `ByteProvider`
  `getSectionAsByteProvider(String sectionName, TaskMonitor monitor)`
  Returns a ByteProvider for the specified section.
  `boolean`
  `hasSection(String... sectionNames)`
  Returns true if the specified section names are present.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface ghidra.app.util.bin.format.dwarf4.next.sectionprovider.DWARFSectionProvider

  `updateProgramInfo`

- ## Constructor Details

  - ### CompressedSectionProvider

    public CompressedSectionProvider(DWARFSectionProvider sp)

- ## Method Details

  - ### hasSection

    public boolean hasSection(String... sectionNames)
    Description copied from interface: `DWARFSectionProvider`
    Returns true if the specified section names are present.
    Specified by:
      `hasSection` in interface `DWARFSectionProvider`
    Parameters:
      `sectionNames` - list of section names to test
    Returns:
      true if all are present, false if not present

  - ### getSectionAsByteProvider

    public ByteProvider getSectionAsByteProvider(String sectionName, TaskMonitor monitor) throws IOException
    Description copied from interface: `DWARFSectionProvider`
    Returns a ByteProvider for the specified section.
    Specified by:
      `getSectionAsByteProvider` in interface `DWARFSectionProvider`
    Parameters:
      `sectionName` - name of the section
      `monitor` - `TaskMonitor` to use when performing long operations
    Returns:
      ByteProvider, which will be closed by the section provider when itself is closed
    Throws:
      `IOException` - if error

  - ### close

    public void close()
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`
    Specified by:
      `close` in interface `DWARFSectionProvider`