EventListenerProcessingContext

每一个 EventListener 在事件处理流程中所对应的上下文类型。

相比较于 EventProcessingContext, EventListenerProcessingContext 允许监听函数在执行流程中获取当前(将要)被执行的监听函数自身 listener

Functions

Link copied to clipboard
abstract fun <T : Any> computeIfAbsent(attribute: Attribute<T>, mappingFunction: (Attribute<T>) -> T): T

如果不存在,则计算并存入。

Link copied to clipboard
abstract fun <T : Any> computeIfPresent(attribute: Attribute<T>, remappingFunction: (Attribute<T>, T) -> T?): T?

如果存在,则计算。如果计算函数中返回null,则为移除对应结果。

Link copied to clipboard
abstract operator fun <T : Any> contains(attribute: Attribute<T>): Boolean

判断是否存在对应键名与类型的键。

Link copied to clipboard
open override fun <R> fold(initial: R, operation: (R, CoroutineContext.Element) -> R): R
Link copied to clipboard
open operator override fun <E : CoroutineContext.Element> get(key: CoroutineContext.Key<E>): E?

abstract operator fun <T : Any> get(attribute: Attribute<T>): T?

通过 attribute 得到对应的数据。

Link copied to clipboard
abstract override fun <T : Any> getAttribute(attribute: Attribute<T>): T?

根据一个 Attribute 得到一个属性。

Link copied to clipboard
abstract fun <T : Any> merge(attribute: Attribute<T>, value: T, remapping: (T, T) -> T): T

存入值,当值已经存在的时候进行合并处理。

Link copied to clipboard
open override fun minusKey(key: CoroutineContext.Key<*>): CoroutineContext
Link copied to clipboard
open operator fun plus(context: CoroutineContext): CoroutineContext
Link copied to clipboard
abstract fun <T : Any> put(attribute: Attribute<T>, value: T): T?

存入一个值。

Link copied to clipboard
abstract fun <T : Any> remove(attribute: Attribute<T>): T?

移除对应键名的值。

Link copied to clipboard
abstract fun size(): Int

数量

Properties

Link copied to clipboard
abstract override val event: Event

本次监听流程中的事件主体。

Link copied to clipboard
open override val key: CoroutineContext.Key<*>
Link copied to clipboard
abstract val listener: EventListener

当前(将要)被执行的监听函数。

Link copied to clipboard

当前 listener 在事件调度容器中的句柄.

Link copied to clipboard
abstract val messagesSerializersModule: SerializersModule

当前事件所处环境中所能够提供的消息序列化模块信息。

Link copied to clipboard
open val results: @UnmodifiableView List<EventResult>

已经执行过的所有监听函数的结果视图的二次列表收集。 此列表仅由事件处理器内部操作,是一个对外不可变视图。

Link copied to clipboard

本次流程下执行后得到的所有响应结果的视图。按照顺序计入。

Link copied to clipboard
abstract var textContent: String?

当前监听函数的主要文本内容,一般可用于在拦截器、过滤器、监听函数相互组合时进行一些过滤内容匹配。

Extensions

Link copied to clipboard
open suspend operator override fun EventProcessingContext.invoke(event: Event): Boolean
open operator override fun EventProcessingContext.invoke(event: Event): Boolean

根据条件判断结果。

Link copied to clipboard
operator fun <T : Any> MutableAttributeMap.set(attribute: Attribute<T>, value: T)