Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.google.gson
Class JsonStreamParser

    java.lang.Object
      com.google.gson.JsonStreamParser

All Implemented Interfaces:
  Iterator<JsonElement>

    public final class JsonStreamParser

extends Object
implements Iterator<JsonElement>

A streaming parser that allows reading of multiple `JsonElement`s from the specified reader asynchronously.

This class is conditionally thread-safe (see Item 70, Effective Java second edition). To properly use this class across multiple threads, you will need to add some external synchronization. For example:

     JsonStreamParser parser = new JsonStreamParser("['first'] {'second':10} 'third'");
     JsonElement element;
     synchronized (parser) {  // synchronize on an object shared by threads
       if (parser.hasNext()) {
         element = parser.next();
       }
     }

Since:
  1.4
Author:
  Inderjeet Singh, Joel Leitch

Constructor Summary
`JsonStreamParser(Reader reader)`
`JsonStreamParser(String json)`

Method Summary
`boolean` | `hasNext()` Returns true if a `JsonElement` is available on the input for consumption
`JsonElement` | `next()` Returns the next available `JsonElement` on the reader.
`void` | `remove()` This optional `Iterator` method is not relevant for stream parsing and hence is not implemented.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### JsonStreamParser

    public JsonStreamParser(String json)

Parameters:
  `json` - The string containing JSON elements concatenated to each other.
Since:
  1.4

### JsonStreamParser

    public JsonStreamParser(Reader reader)

Parameters:
  `reader` - The data stream containing JSON elements concatenated to each other.
Since:
  1.4

Method Detail

### next

    public JsonElement next()
                     throws JsonParseException

  Returns the next available `JsonElement` on the reader. Null if none available.

  Specified by:
    `next` in interface `Iterator<JsonElement>`
  Returns:
    the next available `JsonElement` on the reader. Null if none available.
  Throws:
    `JsonParseException` - if the incoming stream is malformed JSON.
  Since:
    1.4

### hasNext

    public boolean hasNext()

  Returns true if a `JsonElement` is available on the input for consumption

  Specified by:
    `hasNext` in interface `Iterator<JsonElement>`
  Returns:
    true if a `JsonElement` is available on the input, false otherwise
  Since:
    1.4

### remove

    public void remove()

  This optional `Iterator` method is not relevant for stream parsing and hence is not implemented.

  Specified by:
    `remove` in interface `Iterator<JsonElement>`
  Since:
    1.4

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2008–2014 Google, Inc.. All rights reserved.