Class FormattingStyle

    • Field Detail

      • COMPACT

        public static final FormattingStyle COMPACT
        The default compact formatting style:
        • no newline
        • no indent
        • no space after ',' and ':'
      • PRETTY

        public static final FormattingStyle PRETTY
        The default pretty printing formatting style:
        • "\n" as newline
        • two spaces as indent
        • a space between ':' and the subsequent value
    • Method Detail

      • withNewline

        public FormattingStyle withNewline​(String newline)
        Creates a FormattingStyle with the specified newline setting.

        It can be used to accommodate certain OS convention, for example hardcode "\n" for Linux and macOS, "\r\n" for Windows, or call System.lineSeparator() to match the current OS.

        Only combinations of \n and \r are allowed.

        Parameters:
        newline - the string value that will be used as newline.
        Returns:
        a newly created FormattingStyle
      • withIndent

        public FormattingStyle withIndent​(String indent)
        Creates a FormattingStyle with the specified indent string.

        Only combinations of spaces and tabs allowed in indent.

        Parameters:
        indent - the string value that will be used as indent.
        Returns:
        a newly created FormattingStyle
      • withSpaceAfterSeparators

        public FormattingStyle withSpaceAfterSeparators​(boolean spaceAfterSeparators)
        Creates a FormattingStyle which either uses a space after the separators ',' and ':' in the JSON output, or not.

        This setting has no effect on the configured newline. If a non-empty newline is configured, it will always be added after ',' and no space is added after the ',' in that case.

        Parameters:
        spaceAfterSeparators - whether to output a space after ',' and ':'.
        Returns:
        a newly created FormattingStyle
      • getNewline

        public String getNewline()
        Returns the string value that will be used as a newline.
        Returns:
        the newline value.
      • getIndent

        public String getIndent()
        Returns the string value that will be used as indent.
        Returns:
        the indent value.
      • usesSpaceAfterSeparators

        public boolean usesSpaceAfterSeparators()
        Returns whether a space will be used after ',' and ':'.