aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* code tidy upPJ Fanning2021-12-181-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1896139 13f79535-47bb-0310-9956-ffa450edef68
* [bug-65678] add XSLFGraphicFrame hasDiagramPJ Fanning2021-11-111-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1894962 13f79535-47bb-0310-9956-ffa450edef68
* Add some more forbidden-apis to prefer core JDK classes over Guava and ↵Dominik Stadler2021-11-071-2/+31
| | | | | | | | commons-codec Also prevent java logging from being used inadvertently git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1894810 13f79535-47bb-0310-9956-ffa450edef68
* 65206 - Migrate ant / maven to gradle buildAndreas Beeker2021-03-273693-763382/+0
| | | | | | | | update gradle files and project structure along https://github.com/centic9/poi/tree/gradle_build remove eclipse IDE project files remove obsolete record generator files git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1888111 13f79535-47bb-0310-9956-ffa450edef68
* Make "normalizing" the file-path actually workDominik Stadler2021-03-242-1/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1888021 13f79535-47bb-0310-9956-ffa450edef68
* Don't use a hardcoded temporary file (and also not a hardcoded /tmp directory)Dominik Stadler2021-03-241-4/+11
| | | | | | This could cause issues in CI or when multiple different users run tests of POI on one machine! git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887998 13f79535-47bb-0310-9956-ffa450edef68
* Make new tests for IOUtils work on Windows as wellDominik Stadler2021-03-241-1/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887997 13f79535-47bb-0310-9956-ffa450edef68
* add more xsbs to the ooxml-lite jar by recursing through XWPF and XSSF documentsAndreas Beeker2021-03-235-0/+32
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887978 13f79535-47bb-0310-9956-ffa450edef68
* Forbidden apis fixAndreas Beeker2021-03-201-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887880 13f79535-47bb-0310-9956-ffa450edef68
* dispose cursor finallySayi2021-03-201-5/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887868 13f79535-47bb-0310-9956-ffa450edef68
* Create, get, modify and remove comments, support operating paragraphs, ↵Sayi2021-03-208-39/+866
| | | | | | pictures and tables in comments git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887867 13f79535-47bb-0310-9956-ffa450edef68
* revert accidental changePJ Fanning2021-03-191-1/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887829 13f79535-47bb-0310-9956-ffa450edef68
* try to re-enable new getBlockAt codePJ Fanning2021-03-192-2/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887828 13f79535-47bb-0310-9956-ffa450edef68
* add disabled test for corrupt filePJ Fanning2021-03-191-6/+30
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887827 13f79535-47bb-0310-9956-ffa450edef68
* Allow negative numbers in conditional part of format stringDominik Stadler2021-03-191-1/+1
| | | | | | Closes #229 git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887802 13f79535-47bb-0310-9956-ffa450edef68
* Enhance javadoc and coverage for IOUtilsDominik Stadler2021-03-192-19/+223
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887801 13f79535-47bb-0310-9956-ffa450edef68
* #65192 - Allow change of EncryptionModeAndreas Beeker2021-03-173-6/+91
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887764 13f79535-47bb-0310-9956-ffa450edef68
* Revert erroneously modified logging statementMarius Volkhart2021-03-161-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887717 13f79535-47bb-0310-9956-ffa450edef68
* add back some new codePJ Fanning2021-03-151-0/+45
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887685 13f79535-47bb-0310-9956-ffa450edef68
* revert recent changesPJ Fanning2021-03-151-68/+30
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887682 13f79535-47bb-0310-9956-ffa450edef68
* [bug-65184] revert due to integration test failuresPJ Fanning2021-03-141-15/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887660 13f79535-47bb-0310-9956-ffa450edef68
* Try to fix sonar buildAndreas Beeker2021-03-144-0/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887659 13f79535-47bb-0310-9956-ffa450edef68
* reformat filePJ Fanning2021-03-141-203/+203
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887658 13f79535-47bb-0310-9956-ffa450edef68
* [bug-65184] Improve performance of POFSMiniStore getBlockAt. Thanks to sitsPJ Fanning2021-03-142-21/+63
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887657 13f79535-47bb-0310-9956-ffa450edef68
* Implement CONCAT function #65185Nick Burch2021-03-143-12/+107
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887656 13f79535-47bb-0310-9956-ffa450edef68
* xmlbeans 5.0.0 releasePJ Fanning2021-03-141-0/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887648 13f79535-47bb-0310-9956-ffa450edef68
* Limit which tests can run in parallelMarius Volkhart2021-03-144-3/+14
| | | | | | Some tests modify global resources. Those tests cannot be run in parallel with others, as they cause problems or become flaky. Where possible, indicate to JUnit the resources in contention. Otherwise, mark the tests as needing to run in isolation. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887630 13f79535-47bb-0310-9956-ffa450edef68
* [bug-65184] Improve performance of POFSMiniStore getBlockAt. Thanks to sitsPJ Fanning2021-03-131-153/+151
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887604 13f79535-47bb-0310-9956-ffa450edef68
* Streamline HPSF CustomProperties collection retrievalMarius Volkhart2021-03-101-7/+5
| | | | | | Reduce the number of map lookups necessary to compute the return values for methods that return collections of property details. Since we maintain parity between the `props` and `dictionary` contents, when retrieving property details, we can reference the `props` directly and avoid the `dictionary` indirection. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887453 13f79535-47bb-0310-9956-ffa450edef68
* Parse PPDrawing more deterministicallyMarius Volkhart2021-03-091-115/+28
| | | | | | The [MS-PPT] spec is very clear about what the format of the PPDrawing record must be, and parsing deterministically makes for clearer code. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887396 13f79535-47bb-0310-9956-ffa450edef68
* Additional debug logging for unknown records in HSLFMarius Volkhart2021-03-091-1/+6
| | | | | | Recently, while debugging app behavior on HSLF documents, I had to dig into the OOXML that Microsoft PowerPoint places into files saved in PPT format. Having information in the logs about when records were not parsed by POI was very helpful. The hex identifier was critical in being able to quickly search the [MS-PPT] spec for what type of record it was, and the integer identifier was helpful in quickly finding the Record type in RecordTypes.java. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887393 13f79535-47bb-0310-9956-ffa450edef68
* Cleanup documentation of EscherChildAnchorRecord and EscherClientAnchorRecordMarius Volkhart2021-03-092-4/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887391 13f79535-47bb-0310-9956-ffa450edef68
* try to fix windows path issues in exception messagesAndreas Beeker2021-03-081-3/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887346 13f79535-47bb-0310-9956-ffa450edef68
* add DeferredGeneration samplePJ Fanning2021-03-061-0/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887250 13f79535-47bb-0310-9956-ffa450edef68
* convert tabs to spacesPJ Fanning2021-03-062-45/+45
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887239 13f79535-47bb-0310-9956-ffa450edef68
* add DeferredGeneration samplePJ Fanning2021-03-061-0/+49
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887238 13f79535-47bb-0310-9956-ffa450edef68
* Remove unnecessary array conversion in HWPF FSPATableMarius Volkhart2021-03-011-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887044 13f79535-47bb-0310-9956-ffa450edef68
* Remove deprecated HWPF FSPA methodsMarius Volkhart2021-03-013-37/+1
| | | | | | These methods have been @Deprecated for years, and are part of @Internal structures. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887039 13f79535-47bb-0310-9956-ffa450edef68
* Improve performance of HSLFPictureData#writeMarius Volkhart2021-03-011-13/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887022 13f79535-47bb-0310-9956-ffa450edef68
* Deprecate functions that duplicate functionalityMarius Volkhart2021-03-014-5/+18
| | | | | | DrawingGroupRecord#processChildRecords and AbstractEscherHolderRecord#convertRawBytesToEscherRecords duplicate the functionality of AbstractEscherHolderRecord#decode. This makes the code harder to follow, as it is not clear when certain access patterns repeat. Accordingly, these functions are deprecated and flagged for removal. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887021 13f79535-47bb-0310-9956-ffa450edef68
* Review EscherContainerRecord#getChildRecords() call sites for unnecessary workMarius Volkhart2021-03-0117-34/+29
| | | | | | | | This started off as wanting to add the EscherContainerRecord#getChildCount() function in order to do an efficient check for how many children the container has. This was desirable in new code for editing HSSF pictures. The existing option of calling getChildRecords().size() was undesirable as this requires a list copy first. In the process of finding call sites that would benefit from replacing getChildRecords().size(), I realized that several other patterns would benefit from eliminating a copy, such as iterating over the children in a for-each loop, and indexed access to specific children. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887020 13f79535-47bb-0310-9956-ffa450edef68
* Add the ability to edit HSLFPictureData contentsMarius Volkhart2021-02-2818-129/+1031
| | | | | | | | | | | | Pictures can now be edited by calling HSLFPictureData#setData(byte[]). The byte[] should contain the image data as an image viewer might read it. To enable this functionality, a tighter coupling between the EscherBSERecords of the slideshow and the HSLFPictureData was required. This ensures that changes in image data size are accurately recorded in the records. In the course of coupling the records and the HSLFPictureData, various scenarios arose where a mapping of records to pictures was non-trivial. Accordingly, the HSLFSlideShowImpl#matchPicturesAndRecords(...) function was added to perform a more sophisticated matching pass. This function is heavily exercised by org.apache.poi.hslf.usermodel.TestBugs.testFile[5] and PPTX2PNG.render[2], as well as the new TestPictures#testSlideshowWithIncorrectOffsets(). Closes #225 git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887017 13f79535-47bb-0310-9956-ffa450edef68
* Make picture loading in HWPF PicturesTable easier to understandMarius Volkhart2021-02-282-10/+7
| | | | | | The recursion is no longer necessary due to the more defined structure of OfficeArtContent. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887016 13f79535-47bb-0310-9956-ffa450edef68
* Add documentation to PICFAndOfficeArtDataMarius Volkhart2021-02-282-15/+30
| | | | | | Adjust call sites based on defined behavior. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887015 13f79535-47bb-0310-9956-ffa450edef68
* Simplify OfficeArtContent#getBStoreContainer methodMarius Volkhart2021-02-282-17/+8
| | | | | | Due to the new structure of the class, we can be more specific about how we load the BStore. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887011 13f79535-47bb-0310-9956-ffa450edef68
* Rename EscherRecordHolder to OfficeArtContentMarius Volkhart2021-02-286-28/+29
| | | | | | While the class does indeed hold EscherRecords, due to recent refactoring it is much more structured now than it was before. The contents of the class now closely resemble the OfficeArtContent structure referenced in the MS-DOC spec. Naming the class after the specification structure makes it easier to find and understand. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887009 13f79535-47bb-0310-9956-ffa450edef68
* Rework EscherRecordHolder parsingMarius Volkhart2021-02-281-106/+86
| | | | | | Modify the parsing done by EscherRecordHolder to be more deterministic. The format of the OfficeArtContent structure, which the EscherRecordHolder represents, is well defined in the MS-DOC spec. A clear class structure makes it easier to reason about the availability of data. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887008 13f79535-47bb-0310-9956-ffa450edef68
* Add documentation to EscherRecordTypes#DG_CONTAINERMarius Volkhart2021-02-281-0/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887007 13f79535-47bb-0310-9956-ffa450edef68
* Simplify initialization of HWPF EscherRecordHolderMarius Volkhart2021-02-282-11/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1886999 13f79535-47bb-0310-9956-ffa450edef68
* Add documentation for HWPF FileInformationBlock DggInfo methodsMarius Volkhart2021-02-281-0/+10
| | | | | | This documentation comes from [MS-DOC] - v20191119. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1886998 13f79535-47bb-0310-9956-ffa450edef68