Class DomXmlMessageValidator

  • All Implemented Interfaces:
    com.consol.citrus.validation.MessageValidator<com.consol.citrus.validation.xml.XmlMessageValidationContext>
    Direct Known Subclasses:
    XhtmlMessageValidator

    public class DomXmlMessageValidator
    extends com.consol.citrus.validation.AbstractMessageValidator<com.consol.citrus.validation.xml.XmlMessageValidationContext>
    Default message validator implementation. Working on XML messages providing message payload, header and namespace validation.
    Since:
    2007
    Author:
    Christoph Deppisch
    • Field Summary

      • Fields inherited from class com.consol.citrus.validation.AbstractMessageValidator

        log
      • Fields inherited from interface com.consol.citrus.validation.MessageValidator

        RESOURCE_PATH, TYPE_RESOLVER
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected Class<com.consol.citrus.validation.xml.XmlMessageValidationContext> getRequiredValidationContextType()  
      void setNamespaceContextBuilder​(com.consol.citrus.xml.namespace.NamespaceContextBuilder namespaceContextBuilder)
      Sets the namespace context builder.
      boolean supportsMessageType​(String messageType, com.consol.citrus.message.Message message)  
      protected void validateDTD​(org.springframework.core.io.Resource dtdResource, com.consol.citrus.message.Message receivedMessage)
      Validate message with a DTD.
      void validateMessage​(com.consol.citrus.message.Message receivedMessage, com.consol.citrus.message.Message controlMessage, com.consol.citrus.context.TestContext context, com.consol.citrus.validation.xml.XmlMessageValidationContext validationContext)  
      protected void validateMessageContent​(com.consol.citrus.message.Message receivedMessage, com.consol.citrus.message.Message controlMessage, com.consol.citrus.validation.xml.XmlMessageValidationContext validationContext, com.consol.citrus.context.TestContext context)
      Validate message payloads by comparing to a control message.
      protected void validateNamespaces​(Map<String,​String> expectedNamespaces, com.consol.citrus.message.Message receivedMessage)
      Validate namespaces in message.
      protected void validateXMLSchema​(com.consol.citrus.message.Message receivedMessage, com.consol.citrus.context.TestContext context, com.consol.citrus.validation.xml.XmlMessageValidationContext validationContext)
      Validate message with a XML schema.
      • Methods inherited from class com.consol.citrus.validation.AbstractMessageValidator

        findValidationContext, validateMessage
    • Constructor Detail

      • DomXmlMessageValidator

        public DomXmlMessageValidator()
    • Method Detail

      • validateMessage

        public void validateMessage​(com.consol.citrus.message.Message receivedMessage,
                                    com.consol.citrus.message.Message controlMessage,
                                    com.consol.citrus.context.TestContext context,
                                    com.consol.citrus.validation.xml.XmlMessageValidationContext validationContext)
                             throws com.consol.citrus.exceptions.ValidationException
        Overrides:
        validateMessage in class com.consol.citrus.validation.AbstractMessageValidator<com.consol.citrus.validation.xml.XmlMessageValidationContext>
        Throws:
        com.consol.citrus.exceptions.ValidationException
      • validateDTD

        protected void validateDTD​(org.springframework.core.io.Resource dtdResource,
                                   com.consol.citrus.message.Message receivedMessage)
        Validate message with a DTD.
        Parameters:
        dtdResource -
        receivedMessage -
      • validateXMLSchema

        protected void validateXMLSchema​(com.consol.citrus.message.Message receivedMessage,
                                         com.consol.citrus.context.TestContext context,
                                         com.consol.citrus.validation.xml.XmlMessageValidationContext validationContext)
        Validate message with a XML schema.
        Parameters:
        receivedMessage -
        context -
        validationContext -
      • validateNamespaces

        protected void validateNamespaces​(Map<String,​String> expectedNamespaces,
                                          com.consol.citrus.message.Message receivedMessage)
        Validate namespaces in message. The method compares namespace declarations in the root element of the received message to expected namespaces. Prefixes are important too, so differing namespace prefixes will fail the validation.
        Parameters:
        expectedNamespaces -
        receivedMessage -
      • validateMessageContent

        protected void validateMessageContent​(com.consol.citrus.message.Message receivedMessage,
                                              com.consol.citrus.message.Message controlMessage,
                                              com.consol.citrus.validation.xml.XmlMessageValidationContext validationContext,
                                              com.consol.citrus.context.TestContext context)
        Validate message payloads by comparing to a control message.
        Parameters:
        receivedMessage -
        validationContext -
        context -
      • getRequiredValidationContextType

        protected Class<com.consol.citrus.validation.xml.XmlMessageValidationContext> getRequiredValidationContextType()
        Specified by:
        getRequiredValidationContextType in class com.consol.citrus.validation.AbstractMessageValidator<com.consol.citrus.validation.xml.XmlMessageValidationContext>
      • supportsMessageType

        public boolean supportsMessageType​(String messageType,
                                           com.consol.citrus.message.Message message)
      • setNamespaceContextBuilder

        public void setNamespaceContextBuilder​(com.consol.citrus.xml.namespace.NamespaceContextBuilder namespaceContextBuilder)
        Sets the namespace context builder.
        Parameters:
        namespaceContextBuilder -