com.lightningkite.lightningserver.db.__WebSocketDatabaseChangeSubscriptionFields.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of server-core Show documentation
Show all versions of server-core Show documentation
A set of tools to fill in/replace what Ktor is lacking in.
The newest version!
@file:UseContextualSerialization(Instant::class)
@file:OptIn(ExperimentalSerializationApi::class, InternalSerializationApi::class)
package com.lightningkite.lightningserver.db
import com.lightningkite.lightningdb.*
import com.lightningkite.lightningserver.auth.Authentication
import com.lightningkite.lightningserver.auth.cast
import com.lightningkite.lightningserver.core.LightningServerDsl
import com.lightningkite.lightningserver.core.ServerPath
import com.lightningkite.lightningserver.exceptions.NotFoundException
import com.lightningkite.lightningserver.schedule.schedule
import com.lightningkite.lightningserver.serialization.Serialization
import com.lightningkite.lightningserver.tasks.startup
import com.lightningkite.lightningserver.tasks.task
import com.lightningkite.lightningserver.typed.ApiWebsocket
import com.lightningkite.lightningserver.typed.typedWebsocket
import com.lightningkite.lightningserver.websocket.WebSocketIdentifier
import kotlinx.coroutines.Job
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.toList
import kotlinx.coroutines.launch
import kotlinx.serialization.Serializable
import kotlinx.serialization.UseContextualSerialization
import java.time.Duration
import java.time.Instant
import kotlin.reflect.KProperty1
import kotlin.reflect.*
import kotlinx.serialization.*
import kotlinx.serialization.builtins.*
import kotlinx.serialization.internal.GeneratedSerializer
import java.time.*
import java.util.*
fun prepare__WebSocketDatabaseChangeSubscriptionFields() {
__WebSocketDatabaseChangeSubscription::_id.setCopyImplementation { original, value -> original.copy(_id = value) }
__WebSocketDatabaseChangeSubscription::databaseId.setCopyImplementation { original, value -> original.copy(databaseId = value) }
__WebSocketDatabaseChangeSubscription::user.setCopyImplementation { original, value -> original.copy(user = value) }
__WebSocketDatabaseChangeSubscription::condition.setCopyImplementation { original, value -> original.copy(condition = value) }
__WebSocketDatabaseChangeSubscription::mask.setCopyImplementation { original, value -> original.copy(mask = value) }
__WebSocketDatabaseChangeSubscription::establishedAt.setCopyImplementation { original, value -> original.copy(establishedAt = value) }
__WebSocketDatabaseChangeSubscription::relevant.setCopyImplementation { original, value -> original.copy(relevant = value) }
}
val DataClassPath._id: DataClassPath get() = this[__WebSocketDatabaseChangeSubscription::_id]
val DataClassPath.databaseId: DataClassPath get() = this[__WebSocketDatabaseChangeSubscription::databaseId]
val DataClassPath.user: DataClassPath get() = this[__WebSocketDatabaseChangeSubscription::user]
val DataClassPath.condition: DataClassPath get() = this[__WebSocketDatabaseChangeSubscription::condition]
val DataClassPath.mask: DataClassPath get() = this[__WebSocketDatabaseChangeSubscription::mask]
val DataClassPath.establishedAt: DataClassPath get() = this[__WebSocketDatabaseChangeSubscription::establishedAt]
val DataClassPath.relevant: DataClassPath?> get() = this[__WebSocketDatabaseChangeSubscription::relevant]
inline val __WebSocketDatabaseChangeSubscription.Companion.path: DataClassPath<__WebSocketDatabaseChangeSubscription, __WebSocketDatabaseChangeSubscription> get() = path<__WebSocketDatabaseChangeSubscription>()