more efficient persisting

This commit is contained in:
Zlatin Balevsky
2018-07-23 19:41:59 +01:00
parent 5a2019f8eb
commit 19a688037f
3 changed files with 23 additions and 15 deletions

View File

@@ -103,10 +103,12 @@ class PersisterService extends Service {
private void persistFiles() { private void persistFiles() {
location.delete() location.delete()
def sharedFiles = fileSource.getSharedFiles() def sharedFiles = fileSource.getSharedFiles()
sharedFiles.each { k, v -> location.withPrintWriter { writer ->
def json = toJson(k,v) sharedFiles.each { k, v ->
json = JsonOutput.toJson(json) def json = toJson(k,v)
location.append "$json\n" json = JsonOutput.toJson(json)
writer.println json
}
} }
} }

View File

@@ -107,13 +107,15 @@ class HostCache extends Service {
private void save() { private void save() {
storage.delete() storage.delete()
hosts.each { dest, host -> storage.withPrintWriter { writer ->
if (allowHost(host)) { hosts.each { dest, host ->
def map = [:] if (allowHost(host)) {
map.destination = dest.toBase64() def map = [:]
map.failures = host.failures map.destination = dest.toBase64()
def json = JsonOutput.toJson(map) map.failures = host.failures
storage.append("${json}\n") def json = JsonOutput.toJson(map)
writer.println json
}
} }
} }
} }

View File

@@ -49,12 +49,16 @@ class TrustService extends Service {
private void persist() { private void persist() {
persistGood.delete() persistGood.delete()
good.each { persistGood.withPrintWriter { writer ->
persistGood.append("${it.toBase64()}\n") good.each {
writer.println it.toBase64()
}
} }
persistBad.delete() persistBad.delete()
bad.each { persistBad.withPrintWriter { writer ->
persistBad.append("${it.toBase64()}\n") bad.each {
writer.println it.toBase64()
}
} }
} }