org.apache.poi.xssf.usermodel

## Class XSSFObjectData

- java.lang.Object
- - org.apache.poi.xssf.usermodel.XSSFShape
  - - org.apache.poi.xssf.usermodel.XSSFSimpleShape
    - - org.apache.poi.xssf.usermodel.XSSFObjectData

- All Implemented Interfaces:
    java.lang.Iterable<XSSFTextParagraph>, ObjectData, Shape, SimpleShape, TextContainer

      public class XSSFObjectData
      extends XSSFSimpleShape
      implements ObjectData

  Represents binary object (i.e. OLE) data stored in the file. Eg. A GIF, JPEG etc...

- - ### Field Summary

    - ### Fields inherited from class org.apache.poi.xssf.usermodel.XSSFShape

      `anchor, drawing, parent`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `XSSFObjectData(XSSFDrawing drawing, org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTShape ctShape)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getContentType()`
    `DirectoryEntry` | `getDirectory()` Gets the object data.
    `java.lang.String` | `getFileName()` The filename of the embedded image
    `byte[]` | `getObjectData()`
    `PackagePart` | `getObjectPart()`
    `java.lang.String` | `getOLE2ClassName()`
    `org.openxmlformats.schemas.spreadsheetml.x2006.main.CTOleObject` | `getOleObject()`
    `XSSFPictureData` | `getPictureData()`
    `protected XSSFSheet` | `getSheet()`
    `boolean` | `hasDirectoryEntry()`
    `protected static org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTShape` | `prototype()` Prototype with the default structure of a new auto-shape.

    - ### Methods inherited from class org.apache.poi.xssf.usermodel.XSSFSimpleShape

      `addNewTextParagraph, addNewTextParagraph, addNewTextParagraph, clearText, findDefinedParagraphProperty, findDefinedRunProperty, getBottomInset, getCTShape, getLeftInset, getRightInset, getShapeId, getShapeName, getShapeProperties, getShapeType, getText, getTextAutofit, getTextBody, getTextDirection, getTextHorizontalOverflow, getTextParagraphs, getTextVerticalOverflow, getTopInset, getVerticalAlignment, getWordWrap, iterator, setBottomInset, setLeftInset, setRightInset, setShapeType, setText, setText, setTextAutofit, setTextDirection, setTextHorizontalOverflow, setTextVerticalOverflow, setTopInset, setVerticalAlignment, setWordWrap, setXfrm`

    - ### Methods inherited from class org.apache.poi.xssf.usermodel.XSSFShape

      `getAnchor, getDrawing, getParent, isNoFill, setFillColor, setLineStyle, setLineStyleColor, setLineWidth, setNoFill`

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

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

    - ### Methods inherited from interface org.apache.poi.ss.usermodel.SimpleShape

      `getShapeId`

    - ### Methods inherited from interface org.apache.poi.ss.usermodel.Shape

      `getAnchor, getParent, getShapeName, isNoFill, setFillColor, setLineStyleColor, setNoFill`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Constructor Detail

    - #### XSSFObjectData

          protected XSSFObjectData(XSSFDrawing drawing,
                                   org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTShape ctShape)

  - ### Method Detail

    - #### prototype

          protected static org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTShape prototype()

      Prototype with the default structure of a new auto-shape.

    - #### getOLE2ClassName

          public java.lang.String getOLE2ClassName()

      Specified by:
        `getOLE2ClassName` in interface `ObjectData`
      Returns:
        the OLE2 Class Name of the object

    - #### getOleObject

          public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTOleObject getOleObject()

      Returns:
        the CTOleObject associated with the shape

    - #### getObjectData

          public byte[] getObjectData()
                               throws java.io.IOException

      Specified by:
        `getObjectData` in interface `ObjectData`
      Returns:
        the data portion, for an ObjectData that doesn't have an associated POIFS Directory Entry
      Throws:
        `java.io.IOException`

    - #### getObjectPart

          public PackagePart getObjectPart()

      Returns:
        the package part of the object data

    - #### hasDirectoryEntry

          public boolean hasDirectoryEntry()

      Specified by:
        `hasDirectoryEntry` in interface `ObjectData`
      Returns:
        does this ObjectData have an associated POIFS Directory Entry? (Not all do, those that don't have a data portion)

    - #### getDirectory

          public DirectoryEntry getDirectory()
                                      throws java.io.IOException

      Description copied from interface: `ObjectData`
      Gets the object data. Only call for ones that have data though. See `ObjectData.hasDirectoryEntry()`. The caller has to close the corresponding POIFSFileSystem
      Specified by:
        `getDirectory` in interface `ObjectData`
      Returns:
        the object data as an OLE2 directory.
      Throws:
        `java.io.IOException` - if there was an error reading the data.

    - #### getFileName

          public java.lang.String getFileName()

      The filename of the embedded image
      Specified by:
        `getFileName` in interface `ObjectData`
      Returns:
        a filename suggestion - inspecting/interpreting the Directory object probably gives a better result

    - #### getSheet

          protected XSSFSheet getSheet()

    - #### getPictureData

          public XSSFPictureData getPictureData()

      Specified by:
        `getPictureData` in interface `ObjectData`
      Returns:
        the preview picture

    - #### getContentType

          public java.lang.String getContentType()

      Specified by:
        `getContentType` in interface `ObjectData`

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