Class PositionDependentRecordContainer

java.lang.Object
org.apache.poi.hslf.record.Record
org.apache.poi.hslf.record.RecordContainer
org.apache.poi.hslf.record.PositionDependentRecordContainer
All Implemented Interfaces:
PositionDependentRecord
Direct Known Subclasses:
BinaryTagDataBlob, Document, DummyPositionSensitiveRecordWithChildren, Environment, SheetContainer

public abstract class PositionDependentRecordContainer extends RecordContainer implements PositionDependentRecord
A special (and dangerous) kind of Record Container, for which other Atoms care about where this one lives on disk. Will track its position on disk.
  • Constructor Details

    • PositionDependentRecordContainer

      public PositionDependentRecordContainer()
  • Method Details

    • getSheetId

      public int getSheetId()
      Fetch our sheet ID, as found from a PersistPtrHolder. Should match the RefId of our matching SlidePersistAtom
    • setSheetId

      public void setSheetId(int id)
      Set our sheet ID, as found from a PersistPtrHolder
    • getLastOnDiskOffset

      public int getLastOnDiskOffset()
      Fetch our location on the disk, as of the last write out
      Specified by:
      getLastOnDiskOffset in interface PositionDependentRecord
    • setLastOnDiskOffset

      public void setLastOnDiskOffset(int offset)
      Update the Record's idea of where on disk it lives, after a write out. Use with care...
      Specified by:
      setLastOnDiskOffset in interface PositionDependentRecord
    • updateOtherRecordReferences

      public void updateOtherRecordReferences(Map<Integer,Integer> oldToNewReferencesLookup)
      Since we're a container, we don't mind if other records move about. If we're told they have, just return straight off.
      Specified by:
      updateOtherRecordReferences in interface PositionDependentRecord