Class ForwardChainExpectation
- java.lang.Object
-
- org.mockserver.client.ForwardChainExpectation
-
public class ForwardChainExpectation extends Object
- Author:
- jamesdbloom
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Expectation[]error(HttpError httpError)Return error when expectation is matchedExpectation[]forward(ExpectationForwardCallback expectationForwardCallback)Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matchedExpectation[]forward(ExpectationForwardCallback expectationForwardCallback, ExpectationForwardAndResponseCallback expectationForwardResponseCallback)Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matchedExpectation[]forward(ExpectationForwardCallback expectationForwardCallback, ExpectationForwardAndResponseCallback expectationForwardResponseCallback, Delay delay)Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matchedExpectation[]forward(ExpectationForwardCallback expectationForwardCallback, Delay delay)Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matchedExpectation[]forward(HttpClassCallback httpClassCallback)Call method on local class in same JVM implementing ExpectationResponseCallback to generate request to forward when expectation is matchedExpectation[]forward(HttpForward httpForward)Forward request to the specified host and port when expectation is matchedExpectation[]forward(HttpOverrideForwardedRequest httpOverrideForwardedRequest)Override fields, headers, and cookies etc in request being forwarded with specified fields, headers and cookies, etc in the specified request when expectation is matchedExpectation[]forward(HttpTemplate httpTemplate)Evaluate Velocity or JavaScript template to generate request to forward when expectation is matchedExpectation[]respond(List<HttpResponse> httpResponses)Set a list of responses to cycle through sequentially when expectation is matched.Expectation[]respond(ExpectationResponseCallback expectationResponseCallback)Call method on object locally or remotely (over web socket) to generate response to return when expectation is matchedExpectation[]respond(ExpectationResponseCallback expectationResponseCallback, Delay delay)Call method on object locally or remotely (over web socket) to generate response to return when expectation is matchedExpectation[]respond(HttpClassCallback httpClassCallback)Call method on local class in same JVM implementing ExpectationResponseCallback to generate response to return when expectation is matchedExpectation[]respond(HttpResponse httpResponse)Return response when expectation is matchedExpectation[]respond(HttpTemplate httpTemplate)Evaluate Velocity or JavaScript template to generate response to return when expectation is matchedExpectation[]respondWithBinary(BinaryResponse binaryResponse)Expectation[]respondWithDns(DnsResponse dnsResponse)Expectation[]respondWithGrpcStream(GrpcStreamResponse grpcStreamResponse)Expectation[]respondWithLlm(HttpLlmResponse httpLlmResponse)Expectation[]respondWithSse(HttpSseResponse httpSseResponse)Expectation[]respondWithWebSocket(HttpWebSocketResponse httpWebSocketResponse)ForwardChainExpectationwithAfterAction(AfterAction afterAction)Set a single after-action to execute after the primary action completesForwardChainExpectationwithAfterActions(AfterAction... afterActions)ForwardChainExpectationwithId(String id)Set id of this expectation which can be used to update this expectation later or for clearing or verifying by expectation id.ForwardChainExpectationwithNewScenarioState(String newScenarioState)ForwardChainExpectationwithPercentage(Integer percentage)Set percentage of requests this expectation should match (0-100).ForwardChainExpectationwithPriority(int priority)Set priority of this expectation which is used to determine the matching order of expectations when a request is received.ForwardChainExpectationwithResponseMode(ResponseMode responseMode)ForwardChainExpectationwithScenarioName(String scenarioName)Set the scenario name for stateful expectation matchingForwardChainExpectationwithScenarioState(String scenarioState)
-
-
-
Method Detail
-
withId
public ForwardChainExpectation withId(String id)
Set id of this expectation which can be used to update this expectation later or for clearing or verifying by expectation id.
Note: Each unique expectation must have a unique id otherwise this expectation will update a existing expectation with the same id.
- Parameters:
id- unique string for expectation's id
-
withPriority
public ForwardChainExpectation withPriority(int priority)
Set priority of this expectation which is used to determine the matching order of expectations when a request is received.
Matching is ordered by priority (highest first) then creation (earliest first).
- Parameters:
priority- expectation's priority
-
withPercentage
public ForwardChainExpectation withPercentage(Integer percentage)
Set percentage of requests this expectation should match (0-100).
When set, the expectation will only match the specified percentage of requests that structurally match, enabling probabilistic matching.
- Parameters:
percentage- percentage of requests to match (0-100), or null for all requests
-
withScenarioName
public ForwardChainExpectation withScenarioName(String scenarioName)
Set the scenario name for stateful expectation matching- Parameters:
scenarioName- the name of the scenario
-
withScenarioState
public ForwardChainExpectation withScenarioState(String scenarioState)
-
withNewScenarioState
public ForwardChainExpectation withNewScenarioState(String newScenarioState)
-
withResponseMode
public ForwardChainExpectation withResponseMode(ResponseMode responseMode)
-
withAfterActions
public ForwardChainExpectation withAfterActions(AfterAction... afterActions)
-
withAfterAction
public ForwardChainExpectation withAfterAction(AfterAction afterAction)
Set a single after-action to execute after the primary action completes- Parameters:
afterAction- the after-action to set
-
respond
public Expectation[] respond(HttpResponse httpResponse)
Return response when expectation is matched- Parameters:
httpResponse- response to return- Returns:
- added or updated expectations
-
respond
public Expectation[] respond(List<HttpResponse> httpResponses)
Set a list of responses to cycle through sequentially when expectation is matched. Each match returns the next response in the list, cycling back to the first after the last.- Parameters:
httpResponses- list of responses to cycle through- Returns:
- added or updated expectations
-
respond
public Expectation[] respond(HttpTemplate httpTemplate)
Evaluate Velocity or JavaScript template to generate response to return when expectation is matched- Parameters:
httpTemplate- Velocity or JavaScript template used to generate response- Returns:
- added or updated expectations
-
respond
public Expectation[] respond(HttpClassCallback httpClassCallback)
Call method on local class in same JVM implementing ExpectationResponseCallback to generate response to return when expectation is matchedThe callback class must: - implement org.mockserver.mock.action.ExpectationResponseCallback - have a zero argument constructor - be available in the classpath of the MockServer
- Parameters:
httpClassCallback- class to callback as a fully qualified class name, i.e. "com.foo.MyExpectationResponseCallback"- Returns:
- added or updated expectations
-
respond
public Expectation[] respond(ExpectationResponseCallback expectationResponseCallback)
Call method on object locally or remotely (over web socket) to generate response to return when expectation is matched- Parameters:
expectationResponseCallback- object to call locally or remotely to generate response- Returns:
- added or updated expectations
-
respond
public Expectation[] respond(ExpectationResponseCallback expectationResponseCallback, Delay delay)
Call method on object locally or remotely (over web socket) to generate response to return when expectation is matched- Parameters:
expectationResponseCallback- object to call locally or remotely to generate response- Returns:
- added or updated expectations
-
forward
public Expectation[] forward(HttpForward httpForward)
Forward request to the specified host and port when expectation is matched- Parameters:
httpForward- host and port to forward to- Returns:
- added or updated expectations
-
forward
public Expectation[] forward(HttpTemplate httpTemplate)
Evaluate Velocity or JavaScript template to generate request to forward when expectation is matched- Parameters:
httpTemplate- Velocity or JavaScript template used to generate response- Returns:
- added or updated expectations
-
forward
public Expectation[] forward(HttpClassCallback httpClassCallback)
Call method on local class in same JVM implementing ExpectationResponseCallback to generate request to forward when expectation is matchedThe callback class must: - implement org.mockserver.mock.action.ExpectationForwardCallback or org.mockserver.mock.action.ExpectationForwardAndResponseCallback - have a zero argument constructor - be available in the classpath of the MockServer
- Parameters:
httpClassCallback- class to callback as a fully qualified class name, i.e. "com.foo.MyExpectationResponseCallback"- Returns:
- added or updated expectations
-
forward
public Expectation[] forward(ExpectationForwardCallback expectationForwardCallback)
Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matched- Parameters:
expectationForwardCallback- object to call locally or remotely to generate request- Returns:
- added or updated expectations
-
forward
public Expectation[] forward(ExpectationForwardCallback expectationForwardCallback, ExpectationForwardAndResponseCallback expectationForwardResponseCallback)
Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matched- Parameters:
expectationForwardCallback- object to call locally or remotely to generate request- Returns:
- added or updated expectations
-
forward
public Expectation[] forward(ExpectationForwardCallback expectationForwardCallback, Delay delay)
Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matched- Parameters:
expectationForwardCallback- object to call locally or remotely to generate request- Returns:
- added or updated expectations
-
forward
public Expectation[] forward(ExpectationForwardCallback expectationForwardCallback, ExpectationForwardAndResponseCallback expectationForwardResponseCallback, Delay delay)
Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matched- Parameters:
expectationForwardCallback- object to call locally or remotely to generate request- Returns:
- added or updated expectations
-
forward
public Expectation[] forward(HttpOverrideForwardedRequest httpOverrideForwardedRequest)
Override fields, headers, and cookies etc in request being forwarded with specified fields, headers and cookies, etc in the specified request when expectation is matched- Parameters:
httpOverrideForwardedRequest- contains request to override request being forwarded- Returns:
- added or updated expectations
-
error
public Expectation[] error(HttpError httpError)
Return error when expectation is matched- Parameters:
httpError- error to return- Returns:
- added or updated expectations
-
respondWithSse
public Expectation[] respondWithSse(HttpSseResponse httpSseResponse)
-
respondWithLlm
public Expectation[] respondWithLlm(HttpLlmResponse httpLlmResponse)
-
respondWithWebSocket
public Expectation[] respondWithWebSocket(HttpWebSocketResponse httpWebSocketResponse)
-
respondWithGrpcStream
public Expectation[] respondWithGrpcStream(GrpcStreamResponse grpcStreamResponse)
-
respondWithBinary
public Expectation[] respondWithBinary(BinaryResponse binaryResponse)
-
respondWithDns
public Expectation[] respondWithDns(DnsResponse dnsResponse)
-
-