Package-level declarations

Types

Link copied to clipboard

Enumeration of the different kinds of first parameters that message functions can accept.

Link copied to clipboard
data class FunctionAccessorMetadata<P, out R>(val functionKind: FunctionKind, val accessor: FunctionAccessor<P, R>, val supportedType: Class<*>, val supportedTopics: Set<NamedAggregate>, val firstParameterKind: FirstParameterKind, val injectParameters: Array<InjectParameter>) : FunctionInfo, NamedBoundedContext

Metadata describing a message function's properties and access patterns.

Link copied to clipboard

Parser for extracting function metadata from Kotlin reflection.

Link copied to clipboard
data class InjectableMessageFunctionAccessor<P : Any, in M : MessageExchange<*, *>, out R>(val processor: P, val metadata: FunctionAccessorMetadata<P, R>) : MessageFunctionAccessor<P, M, R>

A message function accessor for functions with injectable parameters.

Link copied to clipboard
data class InjectParameter(val parameter: KParameter)

Represents a parameter that can be injected into a message function.

Link copied to clipboard

Error handler that logs errors and resumes with an empty Mono.

Link copied to clipboard

Represents a message function that processes messages within a message exchange. This interface defines the contract for functions that can handle specific message types and topics, providing a way to invoke processing logic on message exchanges.

Link copied to clipboard
interface MessageFunctionAccessor<P : Any, in M : MessageExchange<*, *>, out R> : MessageFunction<P, M, R>

An accessor-based implementation of MessageFunction that uses metadata to provide function information. This interface extends MessageFunction and provides implementations for various properties and methods by delegating to the underlying metadata.

Link copied to clipboard

Registry for message functions that can be registered and queried.

Link copied to clipboard
data class SimpleMessageFunctionAccessor<P : Any, in M : MessageExchange<*, *>, out R>(val processor: P, val metadata: FunctionAccessorMetadata<P, R>) : MessageFunctionAccessor<P, M, R>

A simple message function accessor for functions without injectable parameters.

Link copied to clipboard

Simple implementation of MessageFunctionRegistrar using a thread-safe set.

Functions

Link copied to clipboard
fun <T : Any> Mono<T>.logErrorResume(): Mono<T>

Extension function to log errors and resume with empty Mono.

Link copied to clipboard

Converts FunctionAccessorMetadata to a MessageFunctionAccessor. Creates either a SimpleMessageFunctionAccessor or InjectableMessageFunctionAccessor based on whether the function has injectable parameters.