Interface ElementInfo<T,​C>

  • All Superinterfaces:
    Element<T,​C>, Locatable, TypeInfo<T,​C>
    All Known Subinterfaces:
    RuntimeElementInfo
    All Known Implementing Classes:
    CElementInfo

    public interface ElementInfo<T,​C>
    extends Element<T,​C>
    A particular use (specialization) of JAXBElement. TODO: is ElementInfo adaptable?
    Author:
    Kohsuke Kawaguchi
    • Method Detail

      • getProperty

        ElementPropertyInfo<T,​C> getProperty()
        Gets the object that represents the value property.
        Returns:
        non-null.
      • getContentType

        NonElement<T,​C> getContentType()
        Short for getProperty().ref().get(0). The type of the value this element holds. Normally, this is the T of JAXBElement<T>. But if the property is adapted, this is the on-the-wire type. Or if the element has a list of values, then this field represents the type of the individual item.
        See Also:
        getContentInMemoryType()
      • getContentInMemoryType

        T getContentInMemoryType()
        T of JAXBElement<T>.

        This is tied to the in-memory representation.

        See Also:
        getContentType()
      • getType

        T getType()
        Returns the representation for JAXBElement<contentInMemoryType>.

        This returns the signature in Java and thus isn't affected by the adapter.

        Specified by:
        getType in interface TypeInfo<T,​C>
        Returns:
        always non-null.
      • getSubstitutionHead

        ElementInfo<T,​C> getSubstitutionHead()
        If this element can substitute another element, return that element.

        Substitutability of elements are transitive. ElementInfo can only substitute ElementInfo.

        Specified by:
        getSubstitutionHead in interface Element<T,​C>
        Returns:
        null if no such element exists.