You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by fa...@apache.org on 2022/09/10 14:59:34 UTC

svn commit: r1903974 - /poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/eventusermodel/XSSFReader.java

Author: fanningpj
Date: Sat Sep 10 14:59:34 2022
New Revision: 1903974

URL: http://svn.apache.org/viewvc?rev=1903974&view=rev
Log:
[bug-66257] javadoc

Modified:
    poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/eventusermodel/XSSFReader.java

Modified: poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/eventusermodel/XSSFReader.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/eventusermodel/XSSFReader.java?rev=1903974&r1=1903973&r2=1903974&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/eventusermodel/XSSFReader.java (original)
+++ poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/eventusermodel/XSSFReader.java Sat Sep 10 14:59:34 2022
@@ -78,6 +78,9 @@ public class XSSFReader {
 
     /**
      * Creates a new XSSFReader, for the given package
+     *
+     * @throws OpenXML4JException if the package format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public XSSFReader(OPCPackage pkg) throws IOException, OpenXML4JException {
         this(pkg, false);
@@ -88,6 +91,8 @@ public class XSSFReader {
      *
      * @param pkg an {@code OPCPackage} representing a spreasheet file
      * @param allowStrictOoxmlFiles whether to try to handle Strict OOXML format files
+     * @throws OpenXML4JException if the package format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public XSSFReader(OPCPackage pkg, boolean allowStrictOoxmlFiles) throws IOException, OpenXML4JException {
         this.pkg = pkg;
@@ -141,6 +146,10 @@ public class XSSFReader {
      * Opens up the Shared Strings Table, parses it, and
      * returns a handy object for working with
      * shared strings.
+     *
+     * @return {@link SharedStrings}
+     * @throws InvalidFormatException if the shared strings data format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      * @see #setUseReadOnlySharedStringsTable(boolean)
      */
     public SharedStrings getSharedStringsTable() throws IOException, InvalidFormatException {
@@ -157,6 +166,10 @@ public class XSSFReader {
     /**
      * Opens up the Styles Table, parses it, and
      * returns a handy object for working with cell styles
+     *
+     * @return {@link StylesTable}
+     * @throws InvalidFormatException if the styles data format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public StylesTable getStylesTable() throws IOException, InvalidFormatException {
         ArrayList<PackagePart> parts = pkg.getPartsByContentType(XSSFRelation.STYLES.getContentType());
@@ -175,6 +188,10 @@ public class XSSFReader {
     /**
      * Returns an InputStream to read the contents of the
      * shared strings table.
+     *
+     * @return input stream
+     * @throws InvalidFormatException if the shared string data format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public InputStream getSharedStringsData() throws IOException, InvalidFormatException {
         return XSSFRelation.SHARED_STRINGS.getContents(workbookPart);
@@ -183,6 +200,10 @@ public class XSSFReader {
     /**
      * Returns an InputStream to read the contents of the
      * styles table.
+     *
+     * @return input stream
+     * @throws InvalidFormatException if the styles data format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public InputStream getStylesData() throws IOException, InvalidFormatException {
         return XSSFRelation.STYLES.getContents(workbookPart);
@@ -191,6 +212,10 @@ public class XSSFReader {
     /**
      * Returns an InputStream to read the contents of the
      * themes table.
+     *
+     * @return input stream
+     * @throws InvalidFormatException if the themes data format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public InputStream getThemesData() throws IOException, InvalidFormatException {
         return XSSFRelation.THEME.getContents(workbookPart);
@@ -200,6 +225,10 @@ public class XSSFReader {
      * Returns an InputStream to read the contents of the
      * main Workbook, which contains key overall data for
      * the file, including sheet definitions.
+     *
+     * @return input stream
+     * @throws InvalidFormatException if the sheet data format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public InputStream getWorkbookData() throws IOException, InvalidFormatException {
         return workbookPart.getInputStream();
@@ -210,6 +239,8 @@ public class XSSFReader {
      * specified Sheet.
      *
      * @param relId The relationId of the sheet, from a r:id on the workbook
+     * @throws InvalidFormatException if the sheet data format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public InputStream getSheet(String relId) throws IOException, InvalidFormatException {
         PackageRelationship rel = workbookPart.getRelationship(relId);
@@ -231,6 +262,9 @@ public class XSSFReader {
      * Each sheet's InputStream is only opened when fetched
      * from the Iterator. It's up to you to close the
      * InputStreams when done with each one.
+     *
+     * @throws InvalidFormatException if the sheet data format is invalid
+     * @throws IOException if there is an I/O issue reading the data
      */
     public Iterator<InputStream> getSheetsData() throws IOException, InvalidFormatException {
         return new SheetIterator(workbookPart);
@@ -262,30 +296,28 @@ public class XSSFReader {
          * Construct a new SheetIterator
          *
          * @param wb package part holding workbook.xml
+         * @throws InvalidFormatException if the sheet data format is invalid
+         * @throws IOException if there is an I/O issue reading the data
          */
-        protected SheetIterator(PackagePart wb) throws IOException {
+        protected SheetIterator(PackagePart wb) throws IOException, InvalidFormatException {
 
             /*
              * The order of sheets is defined by the order of CTSheet elements in workbook.xml
              */
-            try {
-                //step 1. Map sheet's relationship Id and the corresponding PackagePart
-                sheetMap = new HashMap<>();
-                OPCPackage pkg = wb.getPackage();
-                Set<String> worksheetRels = getSheetRelationships();
-                for (PackageRelationship rel : wb.getRelationships()) {
-                    String relType = rel.getRelationshipType();
-                    if (worksheetRels.contains(relType)) {
-                        PackagePartName relName = PackagingURIHelper.createPartName(rel.getTargetURI());
-                        sheetMap.put(rel.getId(), pkg.getPart(relName));
-                    }
+            //step 1. Map sheet's relationship Id and the corresponding PackagePart
+            sheetMap = new HashMap<>();
+            OPCPackage pkg = wb.getPackage();
+            Set<String> worksheetRels = getSheetRelationships();
+            for (PackageRelationship rel : wb.getRelationships()) {
+                String relType = rel.getRelationshipType();
+                if (worksheetRels.contains(relType)) {
+                    PackagePartName relName = PackagingURIHelper.createPartName(rel.getTargetURI());
+                    sheetMap.put(rel.getId(), pkg.getPart(relName));
                 }
-                //step 2. Read array of CTSheet elements, wrap it in a LinkedList
-                //and construct an iterator
-                sheetIterator = createSheetIteratorFromWB(wb);
-            } catch (InvalidFormatException e) {
-                throw new POIXMLException(e);
             }
+            //step 2. Read array of CTSheet elements, wrap it in a LinkedList
+            //and construct an iterator
+            sheetIterator = createSheetIteratorFromWB(wb);
         }
 
         protected Iterator<XSSFSheetRef> createSheetIteratorFromWB(PackagePart wb) throws IOException {
@@ -341,6 +373,7 @@ public class XSSFReader {
          * Returns input stream of the next sheet in the iteration
          *
          * @return input stream of the next sheet in the iteration
+         * @throws POIXMLException if the sheet part is invalid
          */
         @Override
         public InputStream next() {



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org