Class DisruptableMockTransport
java.lang.Object
org.elasticsearch.test.transport.StubbableTransport
org.elasticsearch.test.transport.MockTransport
org.elasticsearch.test.disruption.DisruptableMockTransport
- All Implemented Interfaces:
Closeable
,AutoCloseable
,LifecycleComponent
,org.elasticsearch.core.Releasable
,Transport
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
Response type fromgetConnectionStatus(DiscoveryNode)
indicating whether, and how, messages should be disrupted on this transport.static interface
When simulating sending requests to another node which might have rebooted, it's not realistic just to drop the action if the node reboots; instead we need to simulate the error response that comes back.Nested classes/interfaces inherited from class org.elasticsearch.test.transport.StubbableTransport
StubbableTransport.OpenConnectionBehavior, StubbableTransport.RequestHandlingBehavior<Request extends TransportRequest>, StubbableTransport.SendRequestBehavior, StubbableTransport.WrappedConnection
Nested classes/interfaces inherited from interface org.elasticsearch.transport.Transport
Transport.Connection, Transport.RequestHandlers, Transport.ResponseContext<T extends TransportResponse>, Transport.ResponseHandlers
-
Constructor Summary
ConstructorDescriptionDisruptableMockTransport
(DiscoveryNode localNode, org.apache.logging.log4j.Logger logger, DeterministicTaskQueue deterministicTaskQueue) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addActionBlock
(String action) void
createTransportService
(Settings settings, ThreadPool threadPool, TransportInterceptor interceptor, Function<BoundTransportAddress, DiscoveryNode> localNodeFactory, ClusterSettings clusterSettings, Set<String> taskHeaders) boolean
protected abstract void
protected abstract DisruptableMockTransport.ConnectionStatus
getConnectionStatus
(DiscoveryNode destination) protected Runnable
getDisconnectException
(long requestId, String action, DiscoveryNode destination) protected abstract Optional<DisruptableMockTransport>
protected String
getRequestDescription
(long requestId, String action, DiscoveryNode destination) protected void
onBlackholedDuringSend
(long requestId, String action, DisruptableMockTransport destinationTransport) protected void
onConnectedDuringSend
(long requestId, String action, TransportRequest request, DisruptableMockTransport destinationTransport) protected void
onDisconnectedDuringSend
(long requestId, String action, DisruptableMockTransport destinationTransport) protected void
onSendRequest
(long requestId, String action, TransportRequest request, TransportRequestOptions options, DisruptableMockTransport destinationTransport) void
openConnection
(DiscoveryNode node, ConnectionProfile profile, ActionListener<Transport.Connection> listener) Methods inherited from class org.elasticsearch.test.transport.MockTransport
createConnection, handleError, handleLocalError, handleRemoteError, handleResponse, onSendRequest, setMessageListener, writeableRegistry
Methods inherited from class org.elasticsearch.test.transport.StubbableTransport
addLifecycleListener, addressesFromString, boundAddress, close, getDefaultSeedAddresses, getRequestHandlers, getResponseHandlers, getStats, lifecycleState, profileBoundAddresses, removeLifecycleListener, setDefaultConnectBehavior, start, stop
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.elasticsearch.transport.Transport
isSecure, registerRequestHandler, setSlowLogThreshold
-
Constructor Details
-
DisruptableMockTransport
public DisruptableMockTransport(DiscoveryNode localNode, org.apache.logging.log4j.Logger logger, DeterministicTaskQueue deterministicTaskQueue)
-
-
Method Details
-
getConnectionStatus
protected abstract DisruptableMockTransport.ConnectionStatus getConnectionStatus(DiscoveryNode destination) -
getDisruptableMockTransport
protected abstract Optional<DisruptableMockTransport> getDisruptableMockTransport(TransportAddress address) -
execute
-
getLocalNode
-
createTransportService
public TransportService createTransportService(Settings settings, ThreadPool threadPool, TransportInterceptor interceptor, Function<BoundTransportAddress, DiscoveryNode> localNodeFactory, @Nullable ClusterSettings clusterSettings, Set<String> taskHeaders) - Overrides:
createTransportService
in classMockTransport
-
openConnection
public void openConnection(DiscoveryNode node, ConnectionProfile profile, ActionListener<Transport.Connection> listener) - Specified by:
openConnection
in interfaceTransport
- Overrides:
openConnection
in classStubbableTransport
-
onSendRequest
protected void onSendRequest(long requestId, String action, TransportRequest request, TransportRequestOptions options, DisruptableMockTransport destinationTransport) -
getDisconnectException
-
getRequestDescription
-
onBlackholedDuringSend
protected void onBlackholedDuringSend(long requestId, String action, DisruptableMockTransport destinationTransport) -
onDisconnectedDuringSend
protected void onDisconnectedDuringSend(long requestId, String action, DisruptableMockTransport destinationTransport) -
onConnectedDuringSend
protected void onConnectedDuringSend(long requestId, String action, TransportRequest request, DisruptableMockTransport destinationTransport) -
deliverBlackholedRequests
public boolean deliverBlackholedRequests() -
addActionBlock
-
clearActionBlocks
public void clearActionBlocks()
-