# UrlsController
The Controller's Application receives requests coming from the [Workers](https://code-repo.d4science.org/lsmyrnaios/UrlsWorker) , constructs an assignments-list with data received from a database and returns the list to the workers.
Then, it receives the "WorkerReports", it requests the full-texts from the workers, in batches, and uploads them on the S3-Object-Store. Finally, it writes the related reports, along with the updated file-locations into the database.
The database used is the [Impala](https://impala.apache.org/) .
To install and run the application:
- Run ```git clone``` and then ```cd UrlsController```.
- Provide the **S3 Object Store** related configurations, inside the *src/main/resources/application.properties* file.
- Execute the ```installAndRun.sh``` script which builds and runs the app.
If you want to just run the app, then run the script with the argument "1": ```./installAndRun.sh 1```.
If you want to build and run the app on a docker container, then run the script with the argument "0" followed by the argument "1": ```./installAndRun.sh 0 1```.