Class Representer

    • Constructor Detail

    • Method Detail

      • representJavaBean

        protected MappingNode representJavaBean​(Set<Property> properties,
                                                Object javaBean)
        Tag logic: - explicit root tag is set in serializer - if there is a predefined class tag it is used - a global tag with class name is always used as tag. The JavaBean parent of the specified JavaBean may set another tag (tag:yaml.org,2002:map) when the property class is the same as runtime class
        Parameters:
        properties - JavaBean getters
        javaBean - instance for Node
        Returns:
        Node to get serialized
      • representJavaBeanProperty

        protected NodeTuple representJavaBeanProperty​(Object javaBean,
                                                      Property property,
                                                      Object propertyValue,
                                                      Tag customTag)
        Represent one JavaBean property.
        Parameters:
        javaBean - - the instance to be represented
        property - - the property of the instance
        propertyValue - - value to be represented
        customTag - - user defined Tag
        Returns:
        NodeTuple to be used in a MappingNode. Return null to skip the property
      • checkGlobalTag

        protected void checkGlobalTag​(Property property,
                                      Node node,
                                      Object object)
        Remove redundant global tag for a type safe (generic) collection if it is the same as defined by the JavaBean property
        Parameters:
        property - - JavaBean property
        node - - representation of the property
        object - - instance represented by the node
      • getProperties

        protected Set<Property> getProperties​(Class<? extends Object> type)
        Get JavaBean properties to be serialised. The order is respected. This method may be overridden to provide custom property selection or order.
        Parameters:
        type - - JavaBean to inspect the properties
        Returns:
        properties to serialise
      • getTag

        protected Tag getTag​(Class<?> clazz,
                             Tag defaultTag)
      • addClassTag

        public Tag addClassTag​(Class<? extends Object> clazz,
                               Tag tag)
        Define a tag for the Class to serialize.
        Parameters:
        clazz - Class which tag is changed
        tag - new tag to be used for every instance of the specified Class
        Returns:
        the previous tag associated with the Class
      • getTimeZone

        public TimeZone getTimeZone()
      • setTimeZone

        public void setTimeZone​(TimeZone timeZone)