keksmd opened a new pull request, #958: URL: https://github.com/apache/incubator-graphar/pull/958
### Reason for this PR Implements focused issue #957, a dependency-light storage boundary for the pure-Java GraphAr roadmap. It is the API half of the broader storage work in #953 and deliberately excludes the local adapter, so this PR is independently reviewable and mergeable. ### What changes are included in this PR? - Adds the `graphar-storage-api` module. - Defines `Storage`, `InputFile`, `OutputFile`, `SeekableInput`, and `PositionOutput`. - Specifies Java 11 `ByteBuffer` read/readFully, seek, EOF, and byte-position behavior. - Adds direct and heap buffer tests for the seek/read contract. ### Are these changes tested? Yes, on current `upstream/main`: - `mvn --no-transfer-progress -P!nexus-download -pl storage-api -am spotless:check` - `mvn --no-transfer-progress -P!nexus-download -pl storage-api -am clean verify -Dspotless.check.skip=true` — 3 tests, 0 failures/errors/skips. - `pre-commit run --files` for all eight changed files and `git diff --check`. ### Are there any user-facing changes? Yes. This adds a new optional Java module and public storage interfaces only. It does not alter existing GraphAr metadata or file-layout behavior. ## Checklist - [x] I have performed a self-review of my own code. - [x] I have formatted my own code using `make cpplint` before submitting when changed files are in the `cpp` directory. - [x] I have performed `pre-commit run` before commit the changed files. - [x] I have added tests to prove my changes are effective. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
