Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JSON & XML Sources #507

Open
wants to merge 71 commits into
base: master
Choose a base branch
from
Open

JSON & XML Sources #507

wants to merge 71 commits into from

Conversation

TobiasHafner
Copy link
Contributor

This pull request introduces the new JSON and XML adapters for Polypheny, enabling the inclusion of JSON and XML files as data sources that can be queried. The adapters support various methods of providing files or directories, including linking, uploading, or fetching by URL.

Supported Features and Combinations

  1. URL:

    • Single File: Fully functional and tested. Users can provide a URL pointing to a specific JSON or XML file, which will be fetched and included as a source. This feature was tested for large files streamed from a server (up to 48GB). Streams are processed in a way preventing excessive materialization on the server side.
  2. Link:

    • Directory: Fully functional and tested. Users can link to a directory containing multiple JSON or XML files. The adapter will include all files under a common namespace.
    • Single File: Fully functional and tested. Users can link directly to a single file.
  3. Upload:

    • Directory / Single File: This feature is currently experiencing issues due to conflicts with the Crud class and the Security Manager. Namely only one file can be uploaded as the second one to be uploaded fails.

Dependencies

  • The adapters utilize SAX for XML processing (included in Java by default) and Jackson for JSON processing, ensuring efficient handling of potentially large files without overwhelming system memory.

Known Issues

  • Upload Functionality: The upload feature for both directories and single files is currently not operational due to issues with the SecurityManager and the Crud class.

Future Improvements

  • Resolving the upload functionality issues to enable secure and efficient file uploads.

@TobiasHafner TobiasHafner requested a review from vogti August 5, 2024 19:14
@gartens gartens force-pushed the json-adapter branch 2 times, most recently from ed96fc2 to 5ce1a92 Compare August 12, 2024 11:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants