Class CommentsTable

    • Constructor Detail

      • CommentsTable

        public CommentsTable()
      • CommentsTable

        public CommentsTable​(PackagePart part)
                      throws java.io.IOException
        Throws:
        java.io.IOException
        Since:
        POI 3.14-Beta1
    • Method Detail

      • readFrom

        public void readFrom​(java.io.InputStream is)
                      throws java.io.IOException
        Throws:
        java.io.IOException
      • writeTo

        public void writeTo​(java.io.OutputStream out)
                     throws java.io.IOException
        Throws:
        java.io.IOException
      • commit

        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
      • referenceUpdated

        public void referenceUpdated​(CellAddress oldReference,
                                     org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment comment)
        Called after the reference is updated, so that we can reflect that in our cache
        Parameters:
        oldReference - the comment to remove from the commentRefs map
        comment - the comment to replace in the commentRefs map
      • getAuthor

        public java.lang.String getAuthor​(long authorId)
        Specified by:
        getAuthor in interface Comments
      • findAuthor

        public int findAuthor​(java.lang.String author)
        Specified by:
        findAuthor in interface Comments
      • findCellComment

        public XSSFComment findCellComment​(CellAddress cellAddress)
        Finds the cell comment at cellAddress, if one exists
        Specified by:
        findCellComment in interface Comments
        Parameters:
        cellAddress - the address of the cell to find a comment
        Returns:
        cell comment if one exists, otherwise returns null
      • getCTComment

        @Internal
        public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment getCTComment​(CellAddress cellRef)
        Get the underlying CTComment xmlbean for a comment located at cellRef, if it exists
        Parameters:
        cellRef - the location of the cell comment
        Returns:
        CTComment xmlbean if comment exists, otherwise return null.
      • getCellAddresses

        public java.util.Iterator<CellAddress> getCellAddresses()
        Returns all cell addresses that have comments.
        Specified by:
        getCellAddresses in interface Comments
        Returns:
        An iterator to traverse all cell addresses that have comments.
        Since:
        4.0.0
      • getCellComments

        @Removal(version="4.2")
        @Deprecated
        public java.util.Map<CellAddress,​XSSFComment> getCellComments()
        Deprecated.
        use getCellAddresses instead
        Returns all cell comments on this sheet.
        Returns:
        A map of each Comment in this sheet, keyed on the cell address where the comment is located.
      • newComment

        @Internal
        public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment newComment​(CellAddress ref)
        Create a new comment located` at cell address
        Parameters:
        ref - the location to add the comment
        Returns:
        a new CTComment located at ref with default author
      • removeComment

        public boolean removeComment​(CellAddress cellRef)
        Remove the comment at cellRef location, if one exists
        Specified by:
        removeComment in interface Comments
        Parameters:
        cellRef - the location of the comment to remove
        Returns:
        returns true if a comment was removed
      • getCTComments

        @Internal
        public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComments getCTComments()
        Returns the underlying CTComments list xmlbean
        Returns:
        underlying comments list xmlbean