From 751436a789025905cd306febfc60b820437615c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brage=20Skj=C3=B8nborg?= Date: Sun, 9 Nov 2025 16:19:59 +0100 Subject: [PATCH] Rename --- ...Poller.kt => EventPollerImplementation.kt} | 5 ++-- ...kPoller.kt => TaskPollerImplementation.kt} | 4 ++-- ...st.kt => EventPollerImplementationTest.kt} | 18 ++++---------- ...est.kt => TaskPollerImplementationTest.kt} | 24 +++++++------------ 4 files changed, 17 insertions(+), 34 deletions(-) rename src/main/kotlin/no/iktdev/eventi/events/{AbstractEventPoller.kt => EventPollerImplementation.kt} (94%) rename src/main/kotlin/no/iktdev/eventi/tasks/{AbstractTaskPoller.kt => TaskPollerImplementation.kt} (95%) rename src/test/kotlin/no/iktdev/eventi/events/{AbstractEventPollerTest.kt => EventPollerImplementationTest.kt} (89%) rename src/test/kotlin/no/iktdev/eventi/tasks/{AbstractTaskPollerTest.kt => TaskPollerImplementationTest.kt} (86%) diff --git a/src/main/kotlin/no/iktdev/eventi/events/AbstractEventPoller.kt b/src/main/kotlin/no/iktdev/eventi/events/EventPollerImplementation.kt similarity index 94% rename from src/main/kotlin/no/iktdev/eventi/events/AbstractEventPoller.kt rename to src/main/kotlin/no/iktdev/eventi/events/EventPollerImplementation.kt index 332569b..2572157 100644 --- a/src/main/kotlin/no/iktdev/eventi/events/AbstractEventPoller.kt +++ b/src/main/kotlin/no/iktdev/eventi/events/EventPollerImplementation.kt @@ -5,10 +5,9 @@ import no.iktdev.eventi.ZDS.toEvent import no.iktdev.eventi.stores.EventStore import java.time.Duration import java.time.LocalDateTime -import java.util.UUID import kotlin.collections.iterator -abstract class AbstractEventPoller( +abstract class EventPollerImplementation( private val eventStore: EventStore, private val dispatchQueue: SequenceDispatchQueue, private val dispatcher: EventDispatcher @@ -19,7 +18,7 @@ abstract class AbstractEventPoller( private val maxBackoff = Duration.ofMinutes(1) - suspend fun start() { + open suspend fun start() { while (true) { pollOnce() } diff --git a/src/main/kotlin/no/iktdev/eventi/tasks/AbstractTaskPoller.kt b/src/main/kotlin/no/iktdev/eventi/tasks/TaskPollerImplementation.kt similarity index 95% rename from src/main/kotlin/no/iktdev/eventi/tasks/AbstractTaskPoller.kt rename to src/main/kotlin/no/iktdev/eventi/tasks/TaskPollerImplementation.kt index 90147c1..b56c33a 100644 --- a/src/main/kotlin/no/iktdev/eventi/tasks/AbstractTaskPoller.kt +++ b/src/main/kotlin/no/iktdev/eventi/tasks/TaskPollerImplementation.kt @@ -6,7 +6,7 @@ import no.iktdev.eventi.models.Task import no.iktdev.eventi.stores.TaskStore import java.time.Duration -abstract class AbstractTaskPoller( +abstract class TaskPollerImplementation( private val taskStore: TaskStore, private val reporterFactory: (Task) -> TaskReporter ) { @@ -15,7 +15,7 @@ abstract class AbstractTaskPoller( protected set private val maxBackoff = Duration.ofMinutes(1) - suspend fun start() { + open suspend fun start() { while (true) { pollOnce() } diff --git a/src/test/kotlin/no/iktdev/eventi/events/AbstractEventPollerTest.kt b/src/test/kotlin/no/iktdev/eventi/events/EventPollerImplementationTest.kt similarity index 89% rename from src/test/kotlin/no/iktdev/eventi/events/AbstractEventPollerTest.kt rename to src/test/kotlin/no/iktdev/eventi/events/EventPollerImplementationTest.kt index f29ae2a..1a93b86 100644 --- a/src/test/kotlin/no/iktdev/eventi/events/AbstractEventPollerTest.kt +++ b/src/test/kotlin/no/iktdev/eventi/events/EventPollerImplementationTest.kt @@ -3,14 +3,8 @@ package no.iktdev.eventi.events import kotlinx.coroutines.CompletableDeferred import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.ExperimentalCoroutinesApi -import kotlinx.coroutines.Job import kotlinx.coroutines.awaitAll import kotlinx.coroutines.channels.Channel -import kotlinx.coroutines.isActive -import kotlinx.coroutines.job -import kotlinx.coroutines.launch -import kotlinx.coroutines.runBlocking -import kotlinx.coroutines.test.advanceUntilIdle import kotlinx.coroutines.test.runTest import kotlinx.coroutines.withContext import kotlinx.coroutines.withTimeout @@ -20,24 +14,22 @@ import no.iktdev.eventi.EventDispatcherTest.OtherEvent import no.iktdev.eventi.EventDispatcherTest.TriggerEvent import no.iktdev.eventi.TestBase import no.iktdev.eventi.models.Event -import no.iktdev.eventi.stores.EventStore import no.iktdev.eventi.testUtil.wipe import org.junit.jupiter.api.Assertions.assertEquals import org.junit.jupiter.api.Assertions.assertFalse import org.junit.jupiter.api.Assertions.assertTrue import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.Test -import sun.rmi.transport.DGCAckHandler.received import java.time.Duration import java.time.LocalDateTime import java.util.UUID import java.util.concurrent.ConcurrentHashMap -class AbstractEventPollerTest : TestBase() { +class EventPollerImplementationTest : TestBase() { val dispatcher = EventDispatcher(eventStore) val queue = SequenceDispatchQueue(maxConcurrency = 8) - val poller = object : AbstractEventPoller(eventStore, queue, dispatcher) {} + val poller = object : EventPollerImplementation(eventStore, queue, dispatcher) {} @BeforeEach fun setup() { @@ -83,7 +75,7 @@ class AbstractEventPollerTest : TestBase() { @Test fun `pollOnce should increase backoff when no events and reset when events arrive`() = runTest { - val testPoller = object : AbstractEventPoller(eventStore, queue, dispatcher) { + val testPoller = object : EventPollerImplementation(eventStore, queue, dispatcher) { fun currentBackoff(): Duration = backoff } @@ -143,7 +135,7 @@ class AbstractEventPollerTest : TestBase() { val refId = UUID.randomUUID() val ignored = TriggerEvent().usingReferenceId(refId) - val testPoller = object : AbstractEventPoller(eventStore, queue, dispatcher) { + val testPoller = object : EventPollerImplementation(eventStore, queue, dispatcher) { init { lastSeenTime = LocalDateTime.now().plusSeconds(1) } @@ -176,7 +168,7 @@ class AbstractEventPollerTest : TestBase() { } } - val poller = object : AbstractEventPoller(eventStore, queue, dispatcher) { + val poller = object : EventPollerImplementation(eventStore, queue, dispatcher) { } // Original event diff --git a/src/test/kotlin/no/iktdev/eventi/tasks/AbstractTaskPollerTest.kt b/src/test/kotlin/no/iktdev/eventi/tasks/TaskPollerImplementationTest.kt similarity index 86% rename from src/test/kotlin/no/iktdev/eventi/tasks/AbstractTaskPollerTest.kt rename to src/test/kotlin/no/iktdev/eventi/tasks/TaskPollerImplementationTest.kt index 3456d03..488541e 100644 --- a/src/test/kotlin/no/iktdev/eventi/tasks/AbstractTaskPollerTest.kt +++ b/src/test/kotlin/no/iktdev/eventi/tasks/TaskPollerImplementationTest.kt @@ -1,18 +1,12 @@ package no.iktdev.eventi.tasks -import io.mockk.mockk import kotlinx.coroutines.CompletableDeferred -import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.ExperimentalCoroutinesApi -import kotlinx.coroutines.coroutineScope -import kotlinx.coroutines.test.StandardTestDispatcher import kotlinx.coroutines.test.advanceTimeBy import kotlinx.coroutines.test.advanceUntilIdle import kotlinx.coroutines.test.runTest -import kotlinx.coroutines.test.setMain import no.iktdev.eventi.InMemoryTaskStore import no.iktdev.eventi.TestBase -import no.iktdev.eventi.events.EventListener import no.iktdev.eventi.events.EventTypeRegistry import no.iktdev.eventi.models.Event import no.iktdev.eventi.models.Task @@ -25,12 +19,10 @@ import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.Test import java.time.Duration import java.util.UUID -import kotlin.time.Duration.Companion.milliseconds import kotlin.time.Duration.Companion.minutes -import kotlin.time.Duration.Companion.nanoseconds import kotlin.time.Duration.Companion.seconds -class AbstractTaskPollerTest : TestBase() { +class TaskPollerImplementationTest : TestBase() { @BeforeEach fun setup() { @@ -59,7 +51,7 @@ class AbstractTaskPollerTest : TestBase() { data class EchoEvent(var data: String) : Event() { } - class TaskPollerTest(taskStore: TaskStore, reporterFactory: (Task) -> TaskReporter): AbstractTaskPoller(taskStore, reporterFactory) { + class TaskPollerImplementationTest(taskStore: TaskStore, reporterFactory: (Task) -> TaskReporter): TaskPollerImplementation(taskStore, reporterFactory) { fun overrideSetBackoff(duration: java.time.Duration) { backoff = duration } @@ -113,7 +105,7 @@ class AbstractTaskPollerTest : TestBase() { val listener = EchoListener() - val poller = object : AbstractTaskPoller(taskStore, reporterFactory) {} + val poller = object : TaskPollerImplementation(taskStore, reporterFactory) {} val task = EchoTask("Hello").newReferenceId().derivedOf(object : Event() {}) taskStore.persist(task) @@ -133,7 +125,7 @@ class AbstractTaskPollerTest : TestBase() { EventTypeRegistry.register(EchoEvent::class.java) val listener = EchoListener() - val poller = TaskPollerTest(taskStore, reporterFactory) + val poller = TaskPollerImplementationTest(taskStore, reporterFactory) val initialBackoff = poller.backoff poller.overrideSetBackoff(Duration.ofSeconds(16)) @@ -152,7 +144,7 @@ class AbstractTaskPollerTest : TestBase() { @Test fun `poller increases backoff when no tasks`() = runTest { - val poller = object : AbstractTaskPoller(taskStore, reporterFactory) {} + val poller = object : TaskPollerImplementation(taskStore, reporterFactory) {} val initialBackoff = poller.backoff val totalBackoff = initialBackoff.multiply(2) @@ -164,7 +156,7 @@ class AbstractTaskPollerTest : TestBase() { @Test fun `poller increases backoff when no listener supports task`() = runTest { - val poller = object : AbstractTaskPoller(taskStore, reporterFactory) {} + val poller = object : TaskPollerImplementation(taskStore, reporterFactory) {} val initialBackoff = poller.backoff // as long as the task is not added to registry this will be unsupported @@ -182,7 +174,7 @@ class AbstractTaskPollerTest : TestBase() { override val isBusy = true } - val poller = object : AbstractTaskPoller(taskStore, reporterFactory) {} + val poller = object : TaskPollerImplementation(taskStore, reporterFactory) {} val intialBackoff = poller.backoff val task = EchoTask("Busy").newReferenceId() @@ -204,7 +196,7 @@ class AbstractTaskPollerTest : TestBase() { val failingStore = object : InMemoryTaskStore() { override fun claim(taskId: UUID, workerId: String): Boolean = false } - val pollerWithFailingClaim = object : AbstractTaskPoller(failingStore, reporterFactory) {} + val pollerWithFailingClaim = object : TaskPollerImplementation(failingStore, reporterFactory) {} val initialBackoff = pollerWithFailingClaim.backoff failingStore.persist(task)