Interface Block<T,​C>

  • All Superinterfaces:
    OMDataSource, OMDataSourceExt
    All Known Subinterfaces:
    DataSourceBlock, JAXBBlock, OMBlock, SOAPEnvelopeBlock, SourceBlock, XMLStringBlock
    All Known Implementing Classes:
    BlockImpl, DataSourceBlockImpl, JAXBBlockImpl, OMBlockImpl, SOAPEnvelopeBlockImpl, SourceBlockImpl, XMLStringBlockImpl

    public interface Block<T,​C>
    extends OMDataSourceExt
    Block A Block represents an xml element and associated sub-tree. The name of the element must be defined by a root element in a schema. All prefixes within the subtree must correspond to namespace declarations defined within the tree. Many specifications refer to this as a "embedded document" or "xml block". I chose the term, block, for simplicity.

    The block can be exposed as: * BusinessObject * StAX object

    Note that the whole Message can also be thought of as a Block. Thus a Message can be createFrom a Block and written as a Block.

    In addition, each of the accessors has a consume parameter. If consume is true, the Block is no longer valid after the message is called. (i.e. the implementation does not need to cache the information)

    • Method Detail

      • getBusinessContext

        Object getBusinessContext()
        GetBusinesContext Some business objects have an associated context object (i.e. JAXBContext)
        Returns:
        Context Object or null
      • isConsumed

        boolean isConsumed()
        isConsumed Return true if the block is consumed. Once consumed, the information in the block is no longer available.
        Returns:
        true if the block is consumed (a method was called with consume=true)
      • traceString

        String traceString​(String indent)
        Get a traceString...the trace string dumps the contents of the Block without forcing an underlying ill-performant transformation of the message.
        Returns:
        String containing trace information
      • isQNameAvailable

        boolean isQNameAvailable()
        Returns:
        If QName is available without doing an expensive parse of the business object, then return true Otherwise return false Note: This method should be used in situations where it would be nice to know the qname (like logging or a special check) but we don't want to cause an ill-performant parse.
      • getBlockFactory

        BlockFactory getBlockFactory()
        Get BlockFactory
        Returns:
        BlockFactory that created the Block
      • getParent

        Message getParent()
        Get the Message associated with this block
        Returns:
        Message
      • setParent

        void setParent​(Message parent)
        Set the Message associated with this block (This method is intended to be called by the Message Implementation only)
        Parameters:
        parent -
      • isElementData

        boolean isElementData()
        Returns:
        true if data is always an element; false if possibly mixed content or multiple elements