mini
This commit is contained in:
parent
66742304a9
commit
364ce23892
@ -30,7 +30,6 @@ enum class Events {
|
|||||||
CoverDownloaded,
|
CoverDownloaded,
|
||||||
PersistContent,
|
PersistContent,
|
||||||
ProcessCompleted,
|
ProcessCompleted,
|
||||||
|
|
||||||
Unknown
|
Unknown
|
||||||
;
|
;
|
||||||
|
|
||||||
@ -68,7 +67,7 @@ fun Events.toEventClass(): Class<out Event> {
|
|||||||
|
|
||||||
Events.PersistContent -> PersistedContentEvent::class.java
|
Events.PersistContent -> PersistedContentEvent::class.java
|
||||||
Events.ProcessCompleted -> MediaProcessCompletedEvent::class.java
|
Events.ProcessCompleted -> MediaProcessCompletedEvent::class.java
|
||||||
else -> Event::class.java
|
else -> UnknownEvent::class.java
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -121,7 +120,7 @@ object EventJson {
|
|||||||
// 🔥 Finn riktig klasse basert på eventType (som kommer eksternt fra databasen)
|
// 🔥 Finn riktig klasse basert på eventType (som kommer eksternt fra databasen)
|
||||||
val eventClass = eventType.toEventClass()
|
val eventClass = eventType.toEventClass()
|
||||||
|
|
||||||
if (eventClass.simpleName == Event::class.java.simpleName || eventType == Events.Unknown) {
|
if (eventType == Events.Unknown || eventClass.simpleName == Event::class.java.simpleName) {
|
||||||
val fallbackGson = GsonBuilder()
|
val fallbackGson = GsonBuilder()
|
||||||
.registerTypeAdapter(LocalDateTime::class.java, LocalDateTimeAdapter())
|
.registerTypeAdapter(LocalDateTime::class.java, LocalDateTimeAdapter())
|
||||||
.create()
|
.create()
|
||||||
|
|||||||
@ -1,12 +1,20 @@
|
|||||||
package no.iktdev.mediaprocessing.shared.common.contract.data
|
package no.iktdev.mediaprocessing.shared.common.contract.data
|
||||||
|
|
||||||
import no.iktdev.eventi.data.EventImpl
|
import no.iktdev.eventi.data.EventImpl
|
||||||
|
import no.iktdev.eventi.data.EventMetadata
|
||||||
import no.iktdev.mediaprocessing.shared.common.contract.Events
|
import no.iktdev.mediaprocessing.shared.common.contract.Events
|
||||||
|
|
||||||
abstract class Event: EventImpl() {
|
abstract class Event: EventImpl() {
|
||||||
abstract override val eventType: Events
|
abstract override val eventType: Events
|
||||||
}
|
}
|
||||||
|
|
||||||
|
data class UnknownEvent(
|
||||||
|
override val metadata: EventMetadata,
|
||||||
|
override val eventType: Events = Events.Unknown,
|
||||||
|
override val data: Any? = null,
|
||||||
|
): Event() {
|
||||||
|
}
|
||||||
|
|
||||||
inline fun <reified T: Event> Event.az(): T? {
|
inline fun <reified T: Event> Event.az(): T? {
|
||||||
return if (this !is T) {
|
return if (this !is T) {
|
||||||
System.err.println("${this::class.java.name} is not a type of ${T::class.java.name}")
|
System.err.println("${this::class.java.name} is not a type of ${T::class.java.name}")
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user