suspend fun upload()

in Confidence/src/main/java/com/spotify/confidence/EventSenderUploader.kt [21:44]


    suspend fun upload(events: EventBatchRequest): Boolean
}

@Serializable
internal data class EventBatchRequest(
    val clientSecret: String,
    val sdk: Sdk,
    val events: List<EngineEvent>,
    @Serializable(DateTimeSerializer::class)
    val sendTime: Date
)

@Serializable
internal data class EngineEvent(
    val eventDefinition: String,
    @Serializable(DateTimeSerializer::class)
    val eventTime: Date,
    val payload: Map<String, @Contextual ConfidenceValue>
)

internal class EventSenderUploaderImpl(
    private val httpClient: OkHttpClient,
    private val dispatcher: CoroutineDispatcher
) : EventSenderUploader {