Uses of Interface org.codehaus.jackson.PrettyPrinter (Jackson JSON Processor)
Date: 2013-07-14

## Uses of Interface
org.codehaus.jackson.PrettyPrinter

- Packages that use PrettyPrinter
  Package | Description
  --- | ---
  org.codehaus.jackson | Main public API classes of the core streaming JSON processor: most importantly `JsonFactory` used for constructing JSON parser (`JsonParser`) and generator (`JsonParser`) instances.
  org.codehaus.jackson.map | Contains basic mapper (conversion) functionality that allows for converting between regular streaming json content and Java objects (beans or Tree Model: support for both is via `ObjectMapper` class, as well as convenience methods included in `JsonParser`
  org.codehaus.jackson.smile | Package that contains experimental implementation of "Binary-Encoded JSON-Like" data format handlers (parser, generator, factory produce both, supporting constants).
  org.codehaus.jackson.util | Utility classes used by Jackson Core functionality.

- - ### Uses of PrettyPrinter in org.codehaus.jackson

    Fields in org.codehaus.jackson declared as PrettyPrinter
    Modifier and Type | Field and Description
    --- | ---
    `protected PrettyPrinter` | JsonGenerator.`_cfgPrettyPrinter` Object that handles pretty-printing (usually additional white space to make results more human-readable) during output.

    Methods in org.codehaus.jackson with parameters of type PrettyPrinter
    Modifier and Type | Method and Description
    --- | ---
    `JsonGenerator` | JsonGenerator.`setPrettyPrinter(PrettyPrinter pp)` Method for setting a custom pretty printer, which is usually used to add indentation for improved human readability.

  - ### Uses of PrettyPrinter in org.codehaus.jackson.map

    Fields in org.codehaus.jackson.map declared as PrettyPrinter
    Modifier and Type | Field and Description
    --- | ---
    `protected PrettyPrinter` | ObjectWriter.`_prettyPrinter` To allow for dynamic enabling/disabling of pretty printing, pretty printer can be optionally configured for writer as well
    `protected static PrettyPrinter` | ObjectWriter.`NULL_PRETTY_PRINTER` We need to keep track of explicit disabling of pretty printing; easiest to do by a token value.

    Methods in org.codehaus.jackson.map that return PrettyPrinter
    Modifier and Type | Method and Description
    --- | ---
    `protected PrettyPrinter` | ObjectMapper.`_defaultPrettyPrinter()` Helper method that should return default pretty-printer to use for generators constructed by this mapper, when instructed to use default pretty printer.

    Methods in org.codehaus.jackson.map with parameters of type PrettyPrinter
    Modifier and Type | Method and Description
    --- | ---
    `ObjectWriter` | ObjectMapper.`prettyPrintingWriter(PrettyPrinter pp)` Deprecated. Since 1.9, use `ObjectMapper.writer(FilterProvider)` instead.
    `ObjectWriter` | ObjectWriter.`withPrettyPrinter(PrettyPrinter pp)` Method that will construct a new instance that will use specified pretty printer (or, if null, will not do any pretty-printing)
    `ObjectWriter` | ObjectMapper.`writer(PrettyPrinter pp)` Factory method for constructing `ObjectWriter` that will serialize objects using specified pretty printer for indentation (or if null, no pretty printer)

    Constructors in org.codehaus.jackson.map with parameters of type PrettyPrinter
    Constructor and Description
    `ObjectWriter(ObjectMapper mapper, SerializationConfig config, JavaType rootType, PrettyPrinter pp)` Constructor used by `ObjectMapper` for initial instantiation
    `ObjectWriter(ObjectWriter base, SerializationConfig config, JavaType rootType, PrettyPrinter pp, FormatSchema s)` Copy constructor used for building variations.

  - ### Uses of PrettyPrinter in org.codehaus.jackson.smile

    Methods in org.codehaus.jackson.smile with parameters of type PrettyPrinter
    Modifier and Type | Method and Description
    --- | ---
    `JsonGenerator` | SmileGenerator.`setPrettyPrinter(PrettyPrinter pp)` No way (or need) to indent anything, so let's block any attempts.

  - ### Uses of PrettyPrinter in org.codehaus.jackson.util

    Classes in org.codehaus.jackson.util that implement PrettyPrinter
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DefaultPrettyPrinter` Default `PrettyPrinter` implementation that uses 2-space indentation with platform-default linefeeds.
    `class` | `MinimalPrettyPrinter` `PrettyPrinter` implementation that adds no indentation, just implements everything necessary for value output to work as expected, and provide simpler extension points to allow for creating simple custom implementations that add specific decoration or overrides.