Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.poi.hslf.record
Class RecordContainer

    java.lang.Object
      org.apache.poi.hslf.record.Record
          org.apache.poi.hslf.record.RecordContainer

Direct Known Subclasses:
  AnimationInfo, Comment2000, DocInfoListContainer, DummyRecordWithChildren, EscherTextboxWrapper, ExEmbed, ExHyperlink, ExMCIMovie, ExObjList, ExVideoContainer, FontCollection, HeadersFootersContainer, InteractiveInfo, PositionDependentRecordContainer, SlideListWithText, Sound, SoundCollection, VBAInfoContainer

    public abstract class RecordContainer

extends Record

Abstract class which all container records will extend. Providers helpful methods for writing child records out to disk

Field Summary
`protected Record[]` | `_children`

Fields inherited from class org.apache.poi.hslf.record.Record
`logger`

Constructor Summary
`RecordContainer()`

Method Summary
`int` | `addChildAfter(Record newChild, Record after)` Adds the given Child Record after the supplied record
`int` | `addChildBefore(Record newChild, Record before)` Adds the given Child Record before the supplied record
`int` | `appendChildRecord(Record newChild)` Add a new child record onto a record's list of children.
`Record` | `findFirstOfType(long type)` Finds the first child record of the given type, or null if none of the child records are of the given type.
`Record[]` | `getChildRecords()` Return any children
`static void` | `handleParentAwareRecords(RecordContainer br)` Find the records that are parent-aware, and tell them who their parent is
`boolean` | `isAnAtom()` We're not an atom
`void` | `moveChildBefore(Record child, Record before)` Deprecated. method is not used within POI and will be removed
`void` | `moveChildrenAfter(Record firstChild, int number, Record after)` Deprecated. method is not used within POI and will be removed
`void` | `moveChildrenBefore(Record firstChild, int number, Record before)` Deprecated. method is not used within POI and will be removed
`Record` | `removeChild(Record ch)` Remove a child record from this record container
`void` | `setChildRecord(Record[] records)` Set child records.
`void` | `writeOut(byte headerA, byte headerB, long type, Record[] children, java.io.OutputStream out)` Write out our header, and our children.

Methods inherited from class org.apache.poi.hslf.record.Record
`buildRecordAtOffset, createRecordForType, findChildRecords, getRecordType, writeLittleEndian, writeLittleEndian, writeOut`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### _children

    protected Record[] _children

Constructor Detail

### RecordContainer

    public RecordContainer()

Method Detail

### getChildRecords

    public Record[] getChildRecords()

  Return any children

  Specified by:
    `getChildRecords` in class `Record`

### isAnAtom

    public boolean isAnAtom()

  We're not an atom

  Specified by:
    `isAnAtom` in class `Record`

### findFirstOfType

    public Record findFirstOfType(long type)

  Finds the first child record of the given type, or null if none of the child records are of the given type. Does not descend.

### removeChild

    public Record removeChild(Record ch)

  Remove a child record from this record container

  Parameters:
    `ch` - the child to remove
  Returns:
    the removed record

### appendChildRecord

    public int appendChildRecord(Record newChild)

  Add a new child record onto a record's list of children.

  Parameters:
    `newChild` - the child record to be added
  Returns:
    the position of the added child within the list, i.e. the last index

### addChildAfter

    public int addChildAfter(Record newChild,
                             Record after)

  Adds the given Child Record after the supplied record

  Parameters:
    `newChild` -
    `after` -
  Returns:
    the position of the added child within the list

### addChildBefore

    public int addChildBefore(Record newChild,
                              Record before)

  Adds the given Child Record before the supplied record

  Parameters:
    `newChild` -
    `before` -
  Returns:
    the position of the added child within the list

### moveChildBefore

    @Removal(version="3.19")
    @Deprecated
    public void moveChildBefore(Record child,
                                                          Record before)

  Deprecated. method is not used within POI and will be removed

  Moves the given Child Record to before the supplied record

### moveChildrenBefore

    @Removal(version="3.19")
    @Deprecated
    public void moveChildrenBefore(Record firstChild,
                                                             int number,
                                                             Record before)

  Deprecated. method is not used within POI and will be removed

  Moves the given Child Records to before the supplied record

### moveChildrenAfter

    @Removal(version="3.19")
    @Deprecated
    public void moveChildrenAfter(Record firstChild,
                                                            int number,
                                                            Record after)

  Deprecated. method is not used within POI and will be removed

  Moves the given Child Records to after the supplied record

  Parameters:
    `firstChild` - the first child to be moved
    `number` - the number of records to move
    `after` - the record after that the children are moved

### setChildRecord

    public void setChildRecord(Record[] records)

  Set child records.

  Parameters:
    `records` - the new child records

### writeOut

    public void writeOut(byte headerA,
                         byte headerB,
                         long type,
                         Record[] children,
                         java.io.OutputStream out)
                  throws java.io.IOException

  Write out our header, and our children.

  Parameters:
    `headerA` - the first byte of the header
    `headerB` - the second byte of the header
    `type` - the record type
    `children` - our child records
    `out` - the stream to write to
  Throws:
    `java.io.IOException`

### handleParentAwareRecords

    public static void handleParentAwareRecords(RecordContainer br)

  Find the records that are parent-aware, and tell them who their parent is

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright 2017 The Apache Software Foundation or its licensors, as applicable.