utility to share files in headless mode

pull/4/head
Zlatin Balevsky 2019-06-04 18:58:02 +01:00
parent ed3943c1af
commit 8b63864b90
1 changed files with 28 additions and 3 deletions

View File

@ -2,6 +2,8 @@ package com.muwire.cli
import com.muwire.core.Core
import com.muwire.core.MuWireSettings
import com.muwire.core.files.FileHashedEvent
import com.muwire.core.files.FileSharedEvent
class Cli {
@ -34,9 +36,32 @@ class Cli {
// now we begin
println "MuWire is ready"
println "Enter a file containing list of files to share"
def reader = new BufferedReader(new InputStreamReader(System.in))
def filesList = reader.readLine()
def filesList
if (args.length == 0) {
println "Enter a file containing list of files to share"
def reader = new BufferedReader(new InputStreamReader(System.in))
filesList = reader.readLine()
} else
filesList = args[0]
println "loading shared files from $filesList"
core.eventBus.register(FileHashedEvent.class, new Object() {
void onFileHashedEvent(FileHashedEvent e) {
if (e.error != null)
println "ERROR $e.error"
else
println "Shared file : $e.sharedFile.file"
}
})
filesList = new File(filesList)
filesList.withReader {
def toShare = it.readLine()
core.eventBus.publish(new FileSharedEvent(file : new File(toShare)))
}
Thread.sleep(Integer.MAX_VALUE)
}
}