Package org.apache.poi.xssf.model
Class CommentsTable
- java.lang.Object
-
- org.apache.poi.ooxml.POIXMLDocumentPart
-
- org.apache.poi.xssf.model.CommentsTable
-
- All Implemented Interfaces:
Comments
@Internal public class CommentsTable extends POIXMLDocumentPart implements Comments
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.poi.ooxml.POIXMLDocumentPart
POIXMLDocumentPart.RelationPart
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DEFAULT_AUTHOR
static int
DEFAULT_AUTHOR_ID
-
Constructor Summary
Constructors Constructor Description CommentsTable()
CommentsTable(PackagePart part)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected void
commit()
Save the content in the underlying package part.int
findAuthor(java.lang.String author)
XSSFComment
findCellComment(CellAddress cellAddress)
Finds the cell comment at cellAddress, if one existsjava.lang.String
getAuthor(long authorId)
java.util.Iterator<CellAddress>
getCellAddresses()
Returns all cell addresses that have comments.java.util.Map<CellAddress,XSSFComment>
getCellComments()
Deprecated.usegetCellAddresses
insteadorg.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment
getCTComment(CellAddress cellRef)
Get the underlying CTComment xmlbean for a comment located at cellRef, if it existsorg.openxmlformats.schemas.spreadsheetml.x2006.main.CTComments
getCTComments()
Returns the underlying CTComments list xmlbeanint
getNumberOfAuthors()
int
getNumberOfComments()
org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment
newComment(CellAddress ref)
Create a new comment located` at cell addressvoid
readFrom(java.io.InputStream is)
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 cacheboolean
removeComment(CellAddress cellRef)
Remove the comment at cellRef location, if one existsvoid
writeTo(java.io.OutputStream out)
-
Methods inherited from class org.apache.poi.ooxml.POIXMLDocumentPart
_invokeOnDocumentRead, addRelation, createRelationship, createRelationship, createRelationship, getNextPartNumber, getPackagePart, getParent, getRelationById, getRelationId, getRelationPartById, getRelationParts, getRelations, getTargetPart, isCommited, onDocumentCreate, onDocumentRead, onDocumentRemove, onSave, prepareForCommit, read, rebase, removeRelation, removeRelation, removeRelation, setCommited, toString
-
-
-
-
Field Detail
-
DEFAULT_AUTHOR
public static final java.lang.String DEFAULT_AUTHOR
- See Also:
- Constant Field Values
-
DEFAULT_AUTHOR_ID
public static final int DEFAULT_AUTHOR_ID
- See Also:
- Constant Field Values
-
-
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 classPOIXMLDocumentPart
- 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 mapcomment
- the comment to replace in the commentRefs map
-
getNumberOfComments
public int getNumberOfComments()
- Specified by:
getNumberOfComments
in interfaceComments
-
getNumberOfAuthors
public int getNumberOfAuthors()
- Specified by:
getNumberOfAuthors
in interfaceComments
-
getAuthor
public java.lang.String getAuthor(long authorId)
-
findAuthor
public int findAuthor(java.lang.String author)
- Specified by:
findAuthor
in interfaceComments
-
findCellComment
public XSSFComment findCellComment(CellAddress cellAddress)
Finds the cell comment at cellAddress, if one exists- Specified by:
findCellComment
in interfaceComments
- 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 interfaceComments
- 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.usegetCellAddresses
insteadReturns 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 interfaceComments
- 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
-
-