UploadEventListener - reset bytesTransfered for each file (#145)

This commit is contained in:
Paul Campbell 2019-08-04 20:12:16 +01:00 committed by GitHub
parent f40fe46d84
commit ec221d9f05
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 15 deletions

View file

@ -15,18 +15,20 @@ object UploadEventListener {
totalBytesSoFar: Long
)
var bytesTransferred = 0L
def listener(settings: Settings): UploadEvent => Unit = {
case e: RequestEvent =>
bytesTransferred += e.transferred
logRequestCycle(
RequestCycle(settings.localFile,
bytesTransferred,
settings.index,
settings.syncTotals,
settings.totalBytesSoFar))
case _ => ()
}
def apply(settings: Settings): UploadEvent => Unit =
uploadEvent => {
var bytesTransferred = 0L
uploadEvent match {
case e: RequestEvent =>
bytesTransferred += e.transferred
logRequestCycle(
RequestCycle(settings.localFile,
bytesTransferred,
settings.index,
settings.syncTotals,
settings.totalBytesSoFar))
case _ => ()
}
}
}

View file

@ -77,8 +77,7 @@ trait Uploader {
listenerSettings =>
new ProgressListener {
override def progressChanged(progressEvent: ProgressEvent): Unit =
UploadEventListener.listener(listenerSettings)(
eventHandler(progressEvent))
UploadEventListener(listenerSettings)(eventHandler(progressEvent))
private def eventHandler: ProgressEvent => UploadEvent =
progressEvent => {