Interface JaxbUtil

  • All Known Implementing Classes:
    JaxbUtilImpl

    public interface JaxbUtil
    Utility functions for JAXB.
    • Method Detail

      • extractElement

        <T> Optional<T> extractElement​(Object element,
                                       Class<T> typeClass)
        Tries to cast the element to given type object and returns it as an Optional.
        Type Parameters:
        T - the casted generic type.
        Parameters:
        element - the element to inspect.
        typeClass - the QName type specification.
        Returns:
        JAXBElement.getValue() or Optional.empty() on error.
      • extractElement

        <T> Optional<T> extractElement​(Object element,
                                       QName elementType)
        Tries to cast the element to a JAXBElement object with given QName type and returns it as an Optional.
        Type Parameters:
        T - the generic type to cast to.
        Parameters:
        element - the element to inspect.
        elementType - the QName type specification.
        Returns:
        JAXBElement.getValue() or Optional.empty() on error.
      • extractElement

        <T> Optional<T> extractElement​(Object element,
                                       QName elementType,
                                       Class<T> typeClass)
        Same as extractElement(Object, QName) but with QName JAXB type class in addition.
        Type Parameters:
        T - the generic type to cast to.
        Parameters:
        element - the element to inspect.
        elementType - the QName type specification.
        typeClass - Java JAXB class that matches elementType.
        Returns:
        JAXBElement.getValue() or Optional.empty() on error.
      • extractFirstElementFromAny

        <T> Optional<T> extractFirstElementFromAny​(List<Object> anyList,
                                                   QName elementType,
                                                   Class<T> typeClass)
        From a list of JAXBElement objects, this function retrieves the first element in the list

        Additionally, it tries to cast it to the QName type given by elementType.

        Type Parameters:
        T - the generic type to cast to.
        Parameters:
        anyList - a list of JAXBElement objects.
        elementType - the QName type specification.
        typeClass - Java JAXB class that matches elementType.
        Returns:
        Optional of the first element's JAXBElement.getValue() or Optional.empty() if the list is empty or an error occurred.
      • extractFirstElementFromAny

        <T> Optional<T> extractFirstElementFromAny​(List<Object> anyList,
                                                   Class<T> typeClass)
        Same as extractFirstElementFromAny(List, QName, Class), but without comparing QName in advance.
        Type Parameters:
        T - the generic type to cast to.
        Parameters:
        anyList - a list of JAXBElement objects.
        typeClass - Java JAXB class that matches elementType.
        Returns:
        Optional of the first element's JAXBElement.getValue() or Optional.empty() if the list is empty or an error occurred.