Class BrokerAddressFilter
java.lang.Object
io.kroxylicious.proxy.internal.filter.impl.BrokerAddressFilter
- All Implemented Interfaces:
io.kroxylicious.proxy.filter.DescribeClusterResponseFilter,io.kroxylicious.proxy.filter.FetchResponseFilter,io.kroxylicious.proxy.filter.Filter,io.kroxylicious.proxy.filter.FindCoordinatorResponseFilter,io.kroxylicious.proxy.filter.MetadataResponseFilter,io.kroxylicious.proxy.filter.ProduceResponseFilter,io.kroxylicious.proxy.filter.ShareAcknowledgeResponseFilter,io.kroxylicious.proxy.filter.ShareFetchResponseFilter
public class BrokerAddressFilter
extends Object
implements io.kroxylicious.proxy.filter.MetadataResponseFilter, io.kroxylicious.proxy.filter.FindCoordinatorResponseFilter, io.kroxylicious.proxy.filter.DescribeClusterResponseFilter, io.kroxylicious.proxy.filter.ProduceResponseFilter, io.kroxylicious.proxy.filter.FetchResponseFilter, io.kroxylicious.proxy.filter.ShareFetchResponseFilter, io.kroxylicious.proxy.filter.ShareAcknowledgeResponseFilter
An internal filter that rewrites broker addresses in all relevant responses to the corresponding proxy address. It also
is responsible for updating the virtual cluster's cache of upstream broker endpoints.
-
Constructor Summary
ConstructorsConstructorDescriptionBrokerAddressFilter(EndpointGateway listenerModel, EndpointReconciler reconciler) -
Method Summary
Modifier and TypeMethodDescriptionCompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onDescribeClusterResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.DescribeClusterResponseData data, io.kroxylicious.proxy.filter.FilterContext context) CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onFetchResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.FetchResponseData response, io.kroxylicious.proxy.filter.FilterContext context) CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onFindCoordinatorResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.FindCoordinatorResponseData data, io.kroxylicious.proxy.filter.FilterContext context) CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onMetadataResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.MetadataResponseData data, io.kroxylicious.proxy.filter.FilterContext context) CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onProduceResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.ProduceResponseData response, io.kroxylicious.proxy.filter.FilterContext context) CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onShareAcknowledgeResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.ShareAcknowledgeResponseData response, io.kroxylicious.proxy.filter.FilterContext context) CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onShareFetchResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.ShareFetchResponseData response, io.kroxylicious.proxy.filter.FilterContext context) booleanshouldHandleFetchResponse(short apiVersion) booleanshouldHandleProduceResponse(short apiVersion) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.kroxylicious.proxy.filter.DescribeClusterResponseFilter
shouldHandleDescribeClusterResponseMethods inherited from interface io.kroxylicious.proxy.filter.FindCoordinatorResponseFilter
shouldHandleFindCoordinatorResponseMethods inherited from interface io.kroxylicious.proxy.filter.MetadataResponseFilter
shouldHandleMetadataResponseMethods inherited from interface io.kroxylicious.proxy.filter.ShareAcknowledgeResponseFilter
shouldHandleShareAcknowledgeResponseMethods inherited from interface io.kroxylicious.proxy.filter.ShareFetchResponseFilter
shouldHandleShareFetchResponse
-
Constructor Details
-
BrokerAddressFilter
-
-
Method Details
-
onMetadataResponse
public CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onMetadataResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.MetadataResponseData data, io.kroxylicious.proxy.filter.FilterContext context) - Specified by:
onMetadataResponsein interfaceio.kroxylicious.proxy.filter.MetadataResponseFilter
-
onDescribeClusterResponse
public CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onDescribeClusterResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.DescribeClusterResponseData data, io.kroxylicious.proxy.filter.FilterContext context) - Specified by:
onDescribeClusterResponsein interfaceio.kroxylicious.proxy.filter.DescribeClusterResponseFilter
-
onFindCoordinatorResponse
public CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onFindCoordinatorResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.FindCoordinatorResponseData data, io.kroxylicious.proxy.filter.FilterContext context) - Specified by:
onFindCoordinatorResponsein interfaceio.kroxylicious.proxy.filter.FindCoordinatorResponseFilter
-
shouldHandleProduceResponse
public boolean shouldHandleProduceResponse(short apiVersion) - Specified by:
shouldHandleProduceResponsein interfaceio.kroxylicious.proxy.filter.ProduceResponseFilter
-
onProduceResponse
public CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onProduceResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.ProduceResponseData response, io.kroxylicious.proxy.filter.FilterContext context) - Specified by:
onProduceResponsein interfaceio.kroxylicious.proxy.filter.ProduceResponseFilter
-
shouldHandleFetchResponse
public boolean shouldHandleFetchResponse(short apiVersion) - Specified by:
shouldHandleFetchResponsein interfaceio.kroxylicious.proxy.filter.FetchResponseFilter
-
onFetchResponse
public CompletionStage<io.kroxylicious.proxy.filter.ResponseFilterResult> onFetchResponse(short apiVersion, org.apache.kafka.common.message.ResponseHeaderData header, org.apache.kafka.common.message.FetchResponseData response, io.kroxylicious.proxy.filter.FilterContext context) - Specified by:
onFetchResponsein interfaceio.kroxylicious.proxy.filter.FetchResponseFilter
-