Package io.kroxylicious.proxy.router
@ReturnValuesAreNonnullByDefault
@DefaultAnnotationForParameters(edu.umd.cs.findbugs.annotations.NonNull.class)
@DefaultAnnotation(edu.umd.cs.findbugs.annotations.NonNull.class)
package io.kroxylicious.proxy.router
The router API.
A Router is a plugin that decides which
route
should handle a given incoming Kafka request. Routes lead to targets —
either a backing Kafka cluster or another Router.
The routers defined in a proxy configuration are validated at startup
to ensure that all routes end in a defined target and to ensure the
router graph is acyclic.
Router implementations are discovered at runtime via
ServiceLoader using
RouterFactory as the service type.
-
InterfacesClassDescriptionCombined stage of the
RouterContextbuilder API that allows both closing the connection and building the result.Stage of theRouterContextbuilder API that allows requesting that the client connection be closed.A router decides which route should handle a given incoming Kafka request.Context passed toRouter.onRequest(org.apache.kafka.common.protocol.ApiKeys, short, org.apache.kafka.common.message.RequestHeaderData, org.apache.kafka.common.protocol.ApiMessage, io.kroxylicious.proxy.router.RouterContext)for issuing requests to named routes and constructing the routing outcome.RouterFactory<C,I> A pluggable source ofRouterinstances.Context forRouterFactoryinitialisation and router creation, providing access to the plugin registry and router identity.Terminal stage of theRouterContextbuilder API.