Class ReceiveMessageAction

java.lang.Object
org.citrusframework.actions.AbstractTestAction
org.citrusframework.actions.ReceiveMessageAction
All Implemented Interfaces:
org.citrusframework.common.Described, org.citrusframework.common.Named, org.citrusframework.message.MessageAwareTestAction, org.citrusframework.TestAction, org.citrusframework.TestActorAware

public class ReceiveMessageAction extends AbstractTestAction implements org.citrusframework.message.MessageAwareTestAction
This action receives messages from a service destination. Action uses a Endpoint to receive the message, this means that this action is independent of any message transport.

The received message is validated using a MessageValidator supporting expected control message payload and header templates.

Since:
2008
  • Constructor Details

  • Method Details

    • doExecute

      public void doExecute(org.citrusframework.context.TestContext context)
      Method receives a message via Endpoint instance constructs a validation context and starts the message validation via MessageValidator.
      Specified by:
      doExecute in class AbstractTestAction
    • validateMessage

      protected void validateMessage(org.citrusframework.message.Message message, org.citrusframework.context.TestContext context)
      Override this message if you want to add additional message validation
    • createControlMessage

      protected org.citrusframework.message.Message createControlMessage(org.citrusframework.context.TestContext context, String messageType)
      Create control message that is expected. Apply global and local message processors and data dictionaries.
    • isDisabled

      public boolean isDisabled(org.citrusframework.context.TestContext context)
      Description copied from class: AbstractTestAction
      Checks if this test action is disabled. Delegates to test actor defined for this test action by default. Subclasses may add additional disabled logic here.
      Specified by:
      isDisabled in interface org.citrusframework.TestAction
      Overrides:
      isDisabled in class AbstractTestAction
      Parameters:
      context - the current test context.
    • getOrCreateEndpoint

      public org.citrusframework.endpoint.Endpoint getOrCreateEndpoint(org.citrusframework.context.TestContext context)
      Creates or gets the endpoint instance.
    • getMessage

      public Optional<org.citrusframework.message.Message> getMessage()
      Get message sent by this test action. Reads message from message store with saved message id.
      Specified by:
      getMessage in interface org.citrusframework.message.MessageAwareTestAction
    • getEndpoint

      public org.citrusframework.endpoint.Endpoint getEndpoint()
    • getEndpointUri

      public String getEndpointUri()
    • getVariableExtractors

      public List<org.citrusframework.variable.VariableExtractor> getVariableExtractors()
    • getMessageProcessors

      public List<org.citrusframework.message.MessageProcessor> getMessageProcessors()
    • getControlMessageProcessors

      public List<org.citrusframework.message.MessageProcessor> getControlMessageProcessors()
    • getMessageType

      public String getMessageType()
    • getMessageSelectorMap

      public Map<String,Object> getMessageSelectorMap()
    • getMessageSelector

      public String getMessageSelector()
    • getReceiveTimeout

      public long getReceiveTimeout()
    • getValidators

      public List<org.citrusframework.validation.MessageValidator<? extends org.citrusframework.validation.context.ValidationContext>> getValidators()
    • getValidationContexts

      public List<org.citrusframework.validation.context.ValidationContext> getValidationContexts()
    • getValidationProcessor

      public org.citrusframework.validation.ValidationProcessor getValidationProcessor()
    • getDataDictionary

      public org.citrusframework.variable.dictionary.DataDictionary<?> getDataDictionary()
    • getMessageBuilder

      public org.citrusframework.message.MessageBuilder getMessageBuilder()