A peer to peer file sharing tool that facilitates the transfer of Machine Learning Datasets inside a small scale domain.
The project uses Gradle as it's build tool. So building the application into a jar file requires gradlew to be run with the jar
argument.
cd Banter
./gradlew jar
For Windows it would be:
cd ..location_here
gradlew jar
After the jar file has been built, the jar file will be stored in build/libs
. The jar file requires 3 arguments to run:
java -jar Banter.x.x.jar <mode> <filename/path> <ip.addr.to.comm>
--send/--recv - Defines whether the program will run in Client or Server mode.
fileName - The filename that needs to be sent or the name of the file recieved ( user defined ).
addr.to.send.from/addr.to.recv.from - This field requires the source or the destination IP address for establishing the connection. ( Multiple IP addresses supported )
Example given:
java -jar Banter-1.0-NOGUI.jar --send test.txt 10.11.17.18
This starts the program in Client mode and sends the file test.txt which is present in the same directory as the jar file, to the specified IP address 10.11.17.18.
Adding multithreading for bigger files [DONE]
Dynamic chunks based on filesize instead of the predefined 4 * 1024
Ip address storing/display field
File size percentage display
Pause/resume support
Broadcasting to multiple nodes at once [DONE]