Package com.consol.citrus.actions
Class ReceiveMessageAction.ReceiveMessageActionBuilder<T extends ReceiveMessageAction,M extends ReceiveMessageBuilderSupport<T,B,M>,B extends ReceiveMessageAction.ReceiveMessageActionBuilder<T,M,B>>
- java.lang.Object
-
- com.consol.citrus.AbstractTestActionBuilder<T,B>
-
- com.consol.citrus.actions.ReceiveMessageAction.ReceiveMessageActionBuilder<T,M,B>
-
- All Implemented Interfaces:
com.consol.citrus.spi.ReferenceResolverAware
,com.consol.citrus.TestActionBuilder<T>
- Direct Known Subclasses:
ReceiveMessageAction.Builder
- Enclosing class:
- ReceiveMessageAction
public abstract static class ReceiveMessageAction.ReceiveMessageActionBuilder<T extends ReceiveMessageAction,M extends ReceiveMessageBuilderSupport<T,B,M>,B extends ReceiveMessageAction.ReceiveMessageActionBuilder<T,M,B>> extends AbstractTestActionBuilder<T,B> implements com.consol.citrus.spi.ReferenceResolverAware
-
-
Field Summary
Fields Modifier and Type Field Description protected M
messageBuilderSupport
-
Fields inherited from class com.consol.citrus.AbstractTestActionBuilder
self
-
-
Constructor Summary
Constructors Constructor Description ReceiveMessageActionBuilder()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description T
build()
protected abstract T
doBuild()
Build method implemented by subclasses.B
endpoint(com.consol.citrus.endpoint.Endpoint messageEndpoint)
Sets the message endpoint to receive messages from.B
endpoint(String messageEndpointUri)
Sets the message endpoint uri to receive messages from.com.consol.citrus.validation.context.HeaderValidationContext
getHeaderValidationContext()
Creates new header validation context if not done before and gets the header validation context.M
getMessageBuilderSupport()
protected Optional<String>
getMessagePayload()
Gets message payload String representation from configured message builder.List<com.consol.citrus.validation.context.ValidationContext.Builder<?,?>>
getValidationContextBuilders()
Obtains the validationContext builders.List<com.consol.citrus.validation.context.ValidationContext>
getValidationContexts()
Obtains the validationContexts.M
message()
Construct the control message for this receive action.M
message(com.consol.citrus.message.Message controlMessage)
Expect a control message in this receive action.M
message(com.consol.citrus.message.MessageBuilder messageBuilder)
Sets the control message for this receive action.B
process(com.consol.citrus.message.MessageProcessor processor)
Adds message processor on the received message.B
process(com.consol.citrus.message.MessageProcessor.Builder<?,?> builder)
Adds message processor on the received message as fluent builder.B
process(com.consol.citrus.message.MessageProcessorAdapter adapter)
Adds message processor on the received message as fluent builder.protected void
reconcileValidationContexts()
Revisit configured validation context list and automatically add context based on message payload and path expression contexts if any.B
selector(String messageSelector)
Sets message selector string.B
selector(Map<String,String> messageSelector)
Sets message selector elements.void
setReferenceResolver(com.consol.citrus.spi.ReferenceResolver referenceResolver)
Specifies the referenceResolver.B
timeout(long receiveTimeout)
Adds a custom timeout to this message receiving action.B
transform(com.consol.citrus.message.MessageProcessor processor)
Adds message processor on the received message.B
transform(com.consol.citrus.message.MessageProcessor.Builder<?,?> builder)
Adds message processor on the received message as fluent builder.B
transform(com.consol.citrus.message.MessageProcessorAdapter adapter)
Adds message processor on the received message.B
validate(com.consol.citrus.validation.context.ValidationContext validationContext)
Adds a validation context.B
validate(com.consol.citrus.validation.context.ValidationContext.Builder<?,?> validationContext)
Adds a validation context.B
validate(com.consol.citrus.validation.context.ValidationContext.Builder<?,?>... validationContexts)
Sets validation contexts.B
validate(com.consol.citrus.validation.ValidationContextAdapter adapter)
Adds an expression based validation context.B
validate(com.consol.citrus.validation.ValidationProcessor processor)
Adds validation processor to the receive action for validating the received message with Java code.B
validate(List<com.consol.citrus.validation.context.ValidationContext.Builder<?,?>> validationContexts)
Sets validation contexts.B
validator(com.consol.citrus.validation.HeaderValidator... validators)
Sets explicit header validator for this receive action.B
validator(com.consol.citrus.validation.MessageValidator<? extends com.consol.citrus.validation.context.ValidationContext> validator)
Sets explicit message validators for this receive action.B
validator(String... validatorNames)
Sets explicit message validators by name.B
validators(com.consol.citrus.validation.MessageValidator<? extends com.consol.citrus.validation.context.ValidationContext>... validators)
Sets explicit message validators for this receive action.B
validators(List<com.consol.citrus.validation.MessageValidator<? extends com.consol.citrus.validation.context.ValidationContext>> validators)
Sets explicit message validators for this receive action.B
withReferenceResolver(com.consol.citrus.spi.ReferenceResolver referenceResolver)
Sets the bean reference resolver.-
Methods inherited from class com.consol.citrus.AbstractTestActionBuilder
actor, description, getActor, getDescription, getName, name
-
-
-
-
Field Detail
-
messageBuilderSupport
protected M extends ReceiveMessageBuilderSupport<T,B,M> messageBuilderSupport
-
-
Method Detail
-
endpoint
public B endpoint(com.consol.citrus.endpoint.Endpoint messageEndpoint)
Sets the message endpoint to receive messages from.- Parameters:
messageEndpoint
-- Returns:
-
endpoint
public B endpoint(String messageEndpointUri)
Sets the message endpoint uri to receive messages from.- Parameters:
messageEndpointUri
-- Returns:
-
timeout
public B timeout(long receiveTimeout)
Adds a custom timeout to this message receiving action.- Parameters:
receiveTimeout
-- Returns:
-
message
public M message()
Construct the control message for this receive action.- Returns:
-
message
public M message(com.consol.citrus.message.MessageBuilder messageBuilder)
Sets the control message for this receive action.- Parameters:
messageBuilder
-- Returns:
-
message
public M message(com.consol.citrus.message.Message controlMessage)
Expect a control message in this receive action.- Parameters:
controlMessage
-- Returns:
-
validate
public B validate(com.consol.citrus.validation.context.ValidationContext.Builder<?,?> validationContext)
Adds a validation context.- Parameters:
validationContext
-- Returns:
-
validate
public B validate(com.consol.citrus.validation.context.ValidationContext validationContext)
Adds a validation context.- Parameters:
validationContext
-- Returns:
-
validate
public B validate(com.consol.citrus.validation.ValidationContextAdapter adapter)
Adds an expression based validation context.- Parameters:
adapter
-- Returns:
-
validate
public B validate(List<com.consol.citrus.validation.context.ValidationContext.Builder<?,?>> validationContexts)
Sets validation contexts.- Parameters:
validationContexts
-- Returns:
-
validate
public B validate(com.consol.citrus.validation.context.ValidationContext.Builder<?,?>... validationContexts)
Sets validation contexts.- Parameters:
validationContexts
-- Returns:
-
selector
public B selector(String messageSelector)
Sets message selector string.- Parameters:
messageSelector
-- Returns:
-
selector
public B selector(Map<String,String> messageSelector)
Sets message selector elements.- Parameters:
messageSelector
-- Returns:
-
validator
public B validator(com.consol.citrus.validation.MessageValidator<? extends com.consol.citrus.validation.context.ValidationContext> validator)
Sets explicit message validators for this receive action.- Parameters:
validator
-- Returns:
-
validators
@SafeVarargs public final B validators(com.consol.citrus.validation.MessageValidator<? extends com.consol.citrus.validation.context.ValidationContext>... validators)
Sets explicit message validators for this receive action.- Parameters:
validators
-- Returns:
-
validators
public B validators(List<com.consol.citrus.validation.MessageValidator<? extends com.consol.citrus.validation.context.ValidationContext>> validators)
Sets explicit message validators for this receive action.- Parameters:
validators
-- Returns:
-
validator
public B validator(String... validatorNames)
Sets explicit message validators by name.- Parameters:
validatorNames
-- Returns:
-
validator
public B validator(com.consol.citrus.validation.HeaderValidator... validators)
Sets explicit header validator for this receive action.- Parameters:
validators
-- Returns:
-
validate
public B validate(com.consol.citrus.validation.ValidationProcessor processor)
Adds validation processor to the receive action for validating the received message with Java code.- Parameters:
processor
-- Returns:
-
transform
public B transform(com.consol.citrus.message.MessageProcessor processor)
Adds message processor on the received message.- Parameters:
processor
-- Returns:
-
transform
public B transform(com.consol.citrus.message.MessageProcessorAdapter adapter)
Adds message processor on the received message.- Parameters:
adapter
-- Returns:
-
transform
public B transform(com.consol.citrus.message.MessageProcessor.Builder<?,?> builder)
Adds message processor on the received message as fluent builder.- Parameters:
builder
-- Returns:
-
process
public B process(com.consol.citrus.message.MessageProcessor processor)
Adds message processor on the received message.- Parameters:
processor
-- Returns:
-
process
public B process(com.consol.citrus.message.MessageProcessor.Builder<?,?> builder)
Adds message processor on the received message as fluent builder.- Parameters:
builder
-- Returns:
-
process
public B process(com.consol.citrus.message.MessageProcessorAdapter adapter)
Adds message processor on the received message as fluent builder.- Parameters:
adapter
-- Returns:
-
withReferenceResolver
public B withReferenceResolver(com.consol.citrus.spi.ReferenceResolver referenceResolver)
Sets the bean reference resolver.- Parameters:
referenceResolver
-
-
setReferenceResolver
public void setReferenceResolver(com.consol.citrus.spi.ReferenceResolver referenceResolver)
Specifies the referenceResolver.- Specified by:
setReferenceResolver
in interfacecom.consol.citrus.spi.ReferenceResolverAware
- Parameters:
referenceResolver
-
-
getMessageBuilderSupport
public M getMessageBuilderSupport()
-
build
public final T build()
- Specified by:
build
in interfacecom.consol.citrus.TestActionBuilder<T extends ReceiveMessageAction>
-
doBuild
protected abstract T doBuild()
Build method implemented by subclasses.- Returns:
-
getHeaderValidationContext
public com.consol.citrus.validation.context.HeaderValidationContext getHeaderValidationContext()
Creates new header validation context if not done before and gets the header validation context.
-
reconcileValidationContexts
protected void reconcileValidationContexts()
Revisit configured validation context list and automatically add context based on message payload and path expression contexts if any. This method makes sure that validation contexts are configured. If no validation context has been set yet the method automatically adds proper validation contexts for Json and XML message payloads. In case a path expression (JsonPath, XPath) context is set but no proper message validation context (Json, Xml) the method automatically adds the proper message validation context. Only when validation contexts are set properly according to the message type and content the message validation steps will execute later on.
-
getMessagePayload
protected Optional<String> getMessagePayload()
Gets message payload String representation from configured message builder.- Returns:
-
getValidationContexts
public List<com.consol.citrus.validation.context.ValidationContext> getValidationContexts()
Obtains the validationContexts.- Returns:
-
getValidationContextBuilders
public List<com.consol.citrus.validation.context.ValidationContext.Builder<?,?>> getValidationContextBuilders()
Obtains the validationContext builders.- Returns:
-
-