BooleanNode (Jackson JSON Processor)
Date: 2013-07-14

org.codehaus.jackson.node

## Class BooleanNode

- java.lang.Object
- - org.codehaus.jackson.JsonNode
  - - org.codehaus.jackson.node.BaseJsonNode
    - - org.codehaus.jackson.node.ValueNode
      - - org.codehaus.jackson.node.BooleanNode

- All Implemented Interfaces:
    Iterable<JsonNode>, JsonSerializable, JsonSerializableWithType

      public final class BooleanNode
      extends ValueNode

  This concrete value class is used to contain boolean (true / false) values. Only two instances are ever created, to minimize memory usage

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static BooleanNode` | `FALSE`
    `static BooleanNode` | `TRUE`

    - ### Fields inherited from class org.codehaus.jackson.JsonNode

      `NO_NODES, NO_STRINGS`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `asBoolean()` Method that will try to convert value of this node to a Java boolean.
    `boolean` | `asBoolean(boolean defaultValue)` Method that will try to convert value of this node to a Java boolean.
    `double` | `asDouble(double defaultValue)` Method that will try to convert value of this node to a Java double.
    `int` | `asInt(int defaultValue)` Method that will try to convert value of this node to a Java int.
    `long` | `asLong(long defaultValue)` Method that will try to convert value of this node to a Java long.
    `String` | `asText()` Method that will return valid String representation of the container value, if the node is a value node (method `JsonNode.isValueNode()` returns true), otherwise empty String.
    `JsonToken` | `asToken()` Method that can be used for efficient type detection when using stream abstraction for traversing nodes.
    `boolean` | `equals(Object o)` Equality for node objects is defined as full (deep) value equality.
    `boolean` | `getBooleanValue()` Method to use for accessing JSON boolean values (value literals 'true' and 'false').
    `static BooleanNode` | `getFalse()`
    `static BooleanNode` | `getTrue()`
    `boolean` | `isBoolean()` Method that can be used to check if this node was created from Json boolean value (literals "true" and "false").
    `void` | `serialize(JsonGenerator jg, SerializerProvider provider)` Method called to serialize node instances using given generator.
    `static BooleanNode` | `valueOf(boolean b)`

    - ### Methods inherited from class org.codehaus.jackson.node.ValueNode

      `isValueNode, path, path, serializeWithType, toString`

    - ### Methods inherited from class org.codehaus.jackson.node.BaseJsonNode

      `findParent, findParents, findPath, findValue, findValues, findValuesAsText, getNumberType, traverse`

    - ### Methods inherited from class org.codehaus.jackson.JsonNode

      `asDouble, asInt, asLong, findParents, findValues, findValuesAsText, get, get, getBigIntegerValue, getBinaryValue, getDecimalValue, getDoubleValue, getElements, getFieldNames, getFields, getIntValue, getLongValue, getNumberValue, getPath, getPath, getTextValue, getValueAsBoolean, getValueAsBoolean, getValueAsDouble, getValueAsDouble, getValueAsInt, getValueAsInt, getValueAsLong, getValueAsLong, getValueAsText, has, has, isArray, isBigDecimal, isBigInteger, isBinary, isContainerNode, isDouble, isFloatingPointNumber, isInt, isIntegralNumber, isLong, isMissingNode, isNull, isNumber, isObject, isPojo, isTextual, iterator, size, with`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### TRUE

          public static final BooleanNode TRUE

    - #### FALSE

          public static final BooleanNode FALSE

  - ### Method Detail

    - #### getTrue

          public static BooleanNode getTrue()

    - #### getFalse

          public static BooleanNode getFalse()

    - #### valueOf

          public static BooleanNode valueOf(boolean b)

    - #### asToken

          public JsonToken asToken()

      Description copied from class: `BaseJsonNode`
      Method that can be used for efficient type detection when using stream abstraction for traversing nodes. Will return the first `JsonToken` that equivalent stream event would produce (for most nodes there is just one token but for structured/container types multiple)
      Specified by:
        `asToken` in class `ValueNode`

    - #### isBoolean

          public boolean isBoolean()

      Description copied from class: `JsonNode`
      Method that can be used to check if this node was created from Json boolean value (literals "true" and "false").
      Overrides:
        `isBoolean` in class `JsonNode`

    - #### getBooleanValue

          public boolean getBooleanValue()

      Description copied from class: `JsonNode`
      Method to use for accessing JSON boolean values (value literals 'true' and 'false'). For other types, always returns false.
      Overrides:
        `getBooleanValue` in class `JsonNode`
      Returns:
        Textual value this node contains, iff it is a textual json node (comes from Json String value entry)

    - #### asText

          public String asText()

      Description copied from class: `JsonNode`
      Method that will return valid String representation of the container value, if the node is a value node (method `JsonNode.isValueNode()` returns true), otherwise empty String.
      Specified by:
        `asText` in class `JsonNode`

    - #### asBoolean

          public boolean asBoolean()

      Description copied from class: `JsonNode`
      Method that will try to convert value of this node to a Java boolean. JSON booleans map naturally; integer numbers other than 0 map to true, and 0 maps to false and Strings 'true' and 'false' map to corresponding values.

      If representation can not be converted to a boolean value (including structured types like Objects and Arrays), default value of false will be returned; no exceptions are thrown.

      Overrides:
        `asBoolean` in class `JsonNode`

    - #### asBoolean

          public boolean asBoolean(boolean defaultValue)

      Description copied from class: `JsonNode`
      Method that will try to convert value of this node to a Java boolean. JSON booleans map naturally; integer numbers other than 0 map to true, and 0 maps to false and Strings 'true' and 'false' map to corresponding values.

      If representation can not be converted to a boolean value (including structured types like Objects and Arrays), specified defaultValue will be returned; no exceptions are thrown.

      Overrides:
        `asBoolean` in class `JsonNode`

    - #### asInt

          public int asInt(int defaultValue)

      Description copied from class: `JsonNode`
      Method that will try to convert value of this node to a Java int. Numbers are coerced using default Java rules; booleans convert to 0 (false) and 1 (true), and Strings are parsed using default Java language integer parsing rules.

      If representation can not be converted to an int (including structured types like Objects and Arrays), specified defaultValue will be returned; no exceptions are thrown.

      Overrides:
        `asInt` in class `JsonNode`

    - #### asLong

          public long asLong(long defaultValue)

      Description copied from class: `JsonNode`
      Method that will try to convert value of this node to a Java long. Numbers are coerced using default Java rules; booleans convert to 0 (false) and 1 (true), and Strings are parsed using default Java language integer parsing rules.

      If representation can not be converted to an long (including structured types like Objects and Arrays), specified defaultValue will be returned; no exceptions are thrown.

      Overrides:
        `asLong` in class `JsonNode`

    - #### asDouble

          public double asDouble(double defaultValue)

      Description copied from class: `JsonNode`
      Method that will try to convert value of this node to a Java double. Numbers are coerced using default Java rules; booleans convert to 0.0 (false) and 1.0 (true), and Strings are parsed using default Java language integer parsing rules.

      If representation can not be converted to an int (including structured types like Objects and Arrays), specified defaultValue will be returned; no exceptions are thrown.

      Overrides:
        `asDouble` in class `JsonNode`

    - #### serialize

          public final void serialize(JsonGenerator jg,
                       SerializerProvider provider)
                               throws IOException,
                                      JsonProcessingException

      Description copied from class: `BaseJsonNode`
      Method called to serialize node instances using given generator.
      Specified by:
        `serialize` in interface `JsonSerializable`
      Specified by:
        `serialize` in class `BaseJsonNode`
      Throws:
        `IOException`
        `JsonProcessingException`

    - #### equals

          public boolean equals(Object o)

      Description copied from class: `JsonNode`
      Equality for node objects is defined as full (deep) value equality. This means that it is possible to compare complete JSON trees for equality by comparing equality of root nodes.

      Note: marked as abstract to ensure all implementation classes define it properly and not rely on definition from `Object`.

      Specified by:
        `equals` in class `JsonNode`