https://github.com/yolkhovyy/java-large-xml
Java - stream, parse and reduce large remote XML file
https://github.com/yolkhovyy/java-large-xml
java large-files spring-boot xml
Last synced: 3 months ago
JSON representation
Java - stream, parse and reduce large remote XML file
- Host: GitHub
- URL: https://github.com/yolkhovyy/java-large-xml
- Owner: yolkhovyy
- Created: 2019-11-21T04:51:56.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-11-25T17:04:57.000Z (over 6 years ago)
- Last Synced: 2025-02-28T11:58:27.363Z (over 1 year ago)
- Topics: java, large-files, spring-boot, xml
- Language: Java
- Homepage:
- Size: 648 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Task
* Create an API server which can analyse content of big XML file
* Create distributable docker container running the server
* The files are based on stack overflow site with data per topic ([805KB](https://s3-eu-west-1.amazonaws.com/merapar-assessment/3dprinting-posts.xml), [71KB](https://s3-eu-west-1.amazonaws.com/merapar-assessment/arabic-posts.xml))
# Mvn run
```bash
$ export MAVEN_OPTS="-Xms16m -Xmx32m"
$ mvn dependency:tree
$ mvn spring-boot:run
```
# Docker run
```bash
$ docker run -e "JAVA_OPTS=-Xms16m -Xmx32m" -p 8080:8080 -t yolkhovyy/large-xml
```
# Test curls
```bash
$ curl -i -X POST -H "Content-Type:application/json" -d '{"url":"https://s3-eu-west-1.amazonaws.com/merapar-assessment/arabic-posts.xml"}' 'http://localhost:8080/analyze/'
$ curl -i -X POST -H "Content-Type:application/json" -d '{"url":"https://s3-eu-west-1.amazonaws.com/merapar-assessment/3dprinting-posts.xml"}' 'http://localhost:8080/analyze/'
```