de.odysseus.staxon.json.stream.util
Class AutoArrayTarget

java.lang.Object
  extended by de.odysseus.staxon.json.stream.util.AutoArrayTarget
All Implemented Interfaces:
JsonStreamTarget, Closeable, Flushable

public class AutoArrayTarget
extends Object
implements JsonStreamTarget

Target filter to auto-insert array boundaries. Note: this class caches all events and flushes to the underlying target after receiving the last close-object event, which may cause memory issues for large documents. Also, auto-recognition of array boundaries never creates arrays with a single element. It is recommended to handle array boundaries via the JsonXMLStreamWriter.writeStartArray(String) and JsonXMLStreamWriter.writeEndArray() methods or by producing <?xml-muliple ...?> processing instructions.


Constructor Summary
AutoArrayTarget(JsonStreamTarget delegate)
           
 
Method Summary
 void close()
           
 void endArray()
          End array.
 void endObject()
          End object.
 void flush()
           
 void name(String name)
          Write name.
 void startArray()
          Start array.
 void startObject()
          Start object
 void value(Object value)
          Write value.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AutoArrayTarget

public AutoArrayTarget(JsonStreamTarget delegate)
Method Detail

name

public void name(String name)
          throws IOException
Description copied from interface: JsonStreamTarget
Write name.

Specified by:
name in interface JsonStreamTarget
Throws:
IOException

value

public void value(Object value)
           throws IOException
Description copied from interface: JsonStreamTarget
Write value.

Specified by:
value in interface JsonStreamTarget
Throws:
IOException

startObject

public void startObject()
                 throws IOException
Description copied from interface: JsonStreamTarget
Start object

Specified by:
startObject in interface JsonStreamTarget
Throws:
IOException

endObject

public void endObject()
               throws IOException
Description copied from interface: JsonStreamTarget
End object.

Specified by:
endObject in interface JsonStreamTarget
Throws:
IOException

startArray

public void startArray()
                throws IOException
Description copied from interface: JsonStreamTarget
Start array.

Specified by:
startArray in interface JsonStreamTarget
Throws:
IOException

endArray

public void endArray()
              throws IOException
Description copied from interface: JsonStreamTarget
End array.

Specified by:
endArray in interface JsonStreamTarget
Throws:
IOException

close

public void close()
           throws IOException
Specified by:
close in interface Closeable
Throws:
IOException

flush

public void flush()
           throws IOException
Specified by:
flush in interface Flushable
Throws:
IOException


Copyright © 2011-2012. All Rights Reserved.