X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FUpdatedSoneProcessor.kt;h=0773adb755b68cc82998f500c55e5f0494814766;hb=d514680a118adfd8c7225e01d775fc12cc90420b;hp=ebaa3c8f9b2a089f0c196395ba70582f1bfc5f4b;hpb=cdee9199c8ab6a1646ef9fce6930ce41f1b1b25b;p=Sone.git diff --git a/src/main/kotlin/net/pterodactylus/sone/core/UpdatedSoneProcessor.kt b/src/main/kotlin/net/pterodactylus/sone/core/UpdatedSoneProcessor.kt index ebaa3c8..0773adb 100644 --- a/src/main/kotlin/net/pterodactylus/sone/core/UpdatedSoneProcessor.kt +++ b/src/main/kotlin/net/pterodactylus/sone/core/UpdatedSoneProcessor.kt @@ -7,7 +7,7 @@ import net.pterodactylus.sone.data.* import net.pterodactylus.sone.data.Sone.* import net.pterodactylus.sone.database.* import net.pterodactylus.sone.utils.* -import net.pterodactylus.util.logging.* +import java.util.logging.Logger import javax.inject.Inject /** @@ -24,7 +24,7 @@ interface UpdatedSoneProcessor { abstract class BasicUpdateSoneProcessor(private val database: Database, private val eventBus: EventBus) : UpdatedSoneProcessor { - private val logger = Logging.getLogger(UpdatedSoneProcessor::javaClass.name)!! + private val logger = Logger.getLogger(UpdatedSoneProcessor::javaClass.name)!! override fun updateSone(sone: Sone) { val storedSone = database.getSone(sone.id) ?: return @@ -42,13 +42,14 @@ abstract class BasicUpdateSoneProcessor(private val database: Database, private .map { PostRemovedEvent(it) } .forEach(eventBus::post) newPostReplies - .onEach { postReply -> if (postReply.time <= sone.followingTime) postReply.isKnown = true } + .onEach { postReply -> if (postReply.time <= sone.followingTime) database.setPostReplyKnown(postReply) } .mapNotNull { postReply -> postReply.isKnown.ifFalse { NewPostReplyFoundEvent(postReply) } } .forEach(eventBus::post) removedPostReplies .map { PostReplyRemovedEvent(it) } .forEach(eventBus::post) } + database.storeSone(sone) sone.options = storedSone.options sone.isKnown = storedSone.isKnown sone.status = if (sone.time != 0L) SoneStatus.idle else SoneStatus.unknown