Class BaseRepresenter

  • Direct Known Subclasses:
    StandardRepresenter

    public abstract class BaseRepresenter
    extends Object
    Represent basic YAML structures: scalar, sequence, mapping
    • Field Detail

      • representers

        protected final Map<Class<?>,​RepresentToNode> representers
        Keep representers which must match the class exactly
      • nullRepresenter

        protected RepresentToNode nullRepresenter
        in Java 'null' is not a type. So we have to keep the null representer separately otherwise it will coincide with the default representer which is stored with the key null.
      • parentClassRepresenters

        protected final Map<Class<?>,​RepresentToNode> parentClassRepresenters
        Keep representers which match a parent of the class to be represented
      • defaultScalarStyle

        protected ScalarStyle defaultScalarStyle
      • defaultFlowStyle

        protected FlowStyle defaultFlowStyle
      • representedObjects

        protected final Map<Object,​Node> representedObjects
      • objectToRepresent

        protected Object objectToRepresent
    • Constructor Detail

      • BaseRepresenter

        public BaseRepresenter()
    • Method Detail

      • represent

        public Node represent​(Object data)
        Represent the provided Java instance to a Node
        Parameters:
        data - - Java instance to be represented
        Returns:
        The Node to be serialized
      • findRepresenterFor

        protected Optional<RepresentToNode> findRepresenterFor​(Object data)
        Find the representer which is suitable to represent the internal structure of the provided instance to a Node
        Parameters:
        data - - the data to be serialized
        Returns:
        RepresentToNode to call to create a Node
      • representData

        protected final Node representData​(Object data)
      • representScalar

        protected Node representScalar​(Tag tag,
                                       String value)
      • representMapping

        protected Node representMapping​(Tag tag,
                                        Map<?,​?> mapping,
                                        FlowStyle flowStyle)