Class BinaryNode

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

public final class BinaryNode extends ValueNode
Value node that contains Base64 encoded binary value, which will be output and stored as Json String value.
  • Constructor Details

    • BinaryNode

      public BinaryNode(byte[] data)
    • BinaryNode

      public BinaryNode(byte[] data, int offset, int length)
  • Method Details

    • valueOf

      public static BinaryNode valueOf(byte[] data)
    • valueOf

      public static BinaryNode valueOf(byte[] data, int offset, int length)
    • 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
    • isBinary

      public boolean isBinary()
      Description copied from class: JsonNode
      Method that can be used to check if this node represents binary data (Base64 encoded). Although this will be externally written as Json String value, JsonNode.isTextual() will return false if this method returns true.
      Overrides:
      isBinary in class JsonNode
      Returns:
      True if this node represents base64 encoded binary data
    • getBinaryValue

      public byte[] getBinaryValue()

      Note: caller is not to modify returned array in any way, since it is not a copy but reference to the underlying byte array.

      Overrides:
      getBinaryValue in class JsonNode
      Returns:
      Binary data this node contains, iff it is a binary node; null otherwise
    • asText

      public String asText()
      Hmmh. This is not quite as efficient as using serialize(org.codehaus.jackson.JsonGenerator, org.codehaus.jackson.map.SerializerProvider), but will work correctly.
      Specified by:
      asText 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
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Different from other values, since contents need to be surrounded by (double) quotes.
      Overrides:
      toString in class ValueNode