org.apache.poi.xssf.usermodel

## Class XSSFPivotCacheDefinition

- java.lang.Object
- - org.apache.poi.ooxml.POIXMLDocumentPart
  - - org.apache.poi.xssf.usermodel.XSSFPivotCacheDefinition

-     public class XSSFPivotCacheDefinition
      extends POIXMLDocumentPart

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.poi.ooxml.POIXMLDocumentPart

      `POIXMLDocumentPart.RelationPart`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `` | `XSSFPivotCacheDefinition()`
    `protected` | `XSSFPivotCacheDefinition(PackagePart part)` Creates an XSSFPivotCacheDefintion representing the given package part and relationship.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `commit()` Save the content in the underlying package part.
    `protected void` | `createCacheFields(Sheet sheet)` Generates a cache field for each column in the reference area for the pivot table.
    `org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPivotCacheDefinition` | `getCTPivotCacheDefinition()`
    `AreaReference` | `getPivotArea(Workbook wb)` Find the 2D base data area for the pivot table, either from its direct reference or named table/range.
    `void` | `readFrom(java.io.InputStream is)`

    - ### Methods inherited from class org.apache.poi.ooxml.POIXMLDocumentPart

      `_invokeOnDocumentRead, addRelation, createRelationship, createRelationship, createRelationship, getNextPartNumber, getPackagePart, getParent, getRelationById, getRelationId, getRelationPartById, getRelationParts, getRelations, getTargetPart, isCommited, isCommitted, onDocumentCreate, onDocumentRead, onDocumentRemove, onSave, prepareForCommit, read, rebase, removeRelation, removeRelation, removeRelation, setCommited, setCommitted, toString`

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

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

- - ### Constructor Detail

    - #### XSSFPivotCacheDefinition

          @Beta
          public XSSFPivotCacheDefinition()

    - #### XSSFPivotCacheDefinition

          @Beta
          protected XSSFPivotCacheDefinition(PackagePart part)
                                            throws java.io.IOException

      Creates an XSSFPivotCacheDefintion representing the given package part and relationship. Should only be called when reading in an existing file.
      Parameters:
        `part` - - The package part that holds xml data representing this pivot cache definition.
      Throws:
        `java.io.IOException`
      Since:
        POI 3.14-Beta1

  - ### Method Detail

    - #### readFrom

          @Beta
          public void readFrom(java.io.InputStream is)
                              throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### getCTPivotCacheDefinition

          @Beta
           @Internal
          public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPivotCacheDefinition getCTPivotCacheDefinition()

    - #### commit

          @Beta
          protected void commit()
                               throws java.io.IOException

      Description copied from class: `POIXMLDocumentPart`
      Save the content in the underlying package part. Default implementation is empty meaning that the package part is left unmodified.

      Sub-classes should override and add logic to marshal the "model" into Ooxml4J.

      For example, the code saving a generic XML entry may look as follows:

           protected void commit() throws IOException {
             PackagePart part = getPackagePart();
             OutputStream out = part.getOutputStream();
             XmlObject bean = getXmlBean(); //the "model" which holds changes in memory
             bean.save(out, DEFAULT_XML_OPTIONS);
             out.close();
           }

      Overrides:
        `commit` in class `POIXMLDocumentPart`
      Throws:
        `java.io.IOException` - a subclass may throw an IOException if the changes can't be committed

    - #### getPivotArea

          @Beta
          public AreaReference getPivotArea(Workbook wb)
                                           throws java.lang.IllegalArgumentException

      Find the 2D base data area for the pivot table, either from its direct reference or named table/range.
      Returns:
        AreaReference representing the current area defined by the pivot table
      Throws:
        `java.lang.IllegalArgumentException` - if the ref attribute is not contiguous or the name attribute is not found.

    - #### createCacheFields

          @Beta
          protected void createCacheFields(Sheet sheet)

      Generates a cache field for each column in the reference area for the pivot table.
      Parameters:
        `sheet` - The sheet where the data i collected from

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