public interface IonLoader
IonReader
will parse one top-level value at a time, and is better
suited for streaming protocols or large inputs.
WARNING: This interface should not be implemented or extended by code outside of this library.
Implementations of this interface are safe for use by multiple threads.
IonReader
Modifier and Type | Method and Description |
---|---|
IonCatalog |
getCatalog()
Gets the
IonCatalog being used by this loader. |
IonSystem |
getSystem()
Gets the
IonSystem from which this loader was created. |
IonDatagram |
load(byte[] ionData)
Loads a block of Ion data into a single datagram,
detecting whether it's text or binary data.
|
IonDatagram |
load(File ionFile)
Loads an entire file of Ion data into a single datagram,
detecting whether it's text or binary data.
|
IonDatagram |
load(InputStream ionData)
Loads an entire stream of Ion data into a single datagram,
detecting whether it's text or binary data.
|
IonDatagram |
load(Reader ionText)
Loads a stream of Ion text into a single datagram.
|
IonDatagram |
load(String ionText)
Loads Ion text in its entirety.
|
IonSystem getSystem()
IonSystem
from which this loader was created.null
.IonCatalog getCatalog()
IonCatalog
being used by this loader.IonDatagram load(File ionFile) throws IonException, IOException
ionFile
- a file containing Ion data.IonException
- if there's a syntax error in the Ion content.IOException
- if reading from the specified file results
in an IOException
.IonDatagram load(String ionText) throws IonException
ionText
- must not be null.NullPointerException
- if ionText
is null.IonException
- if there's a syntax error in the Ion content.IonDatagram load(Reader ionText) throws IonException, IOException
The specified reader remains open after this method returns.
Because this library performs its own buffering, it's recommended that you avoid adding additional buffering to the given stream.
ionText
- the reader from which to read Ion text.NullPointerException
- if ionText
is null.IonException
- if there's a syntax error in the Ion content.IOException
- if reading from the specified input stream results
in an IOException
.IonDatagram load(byte[] ionData) throws IonException
This method will auto-detect and uncompress GZIPped Ion data.
ionData
- may be either Ion binary data, or UTF-8 Ion text.
This method assumes ownership of the array and may modify it at
will.NullPointerException
- if ionData
is null.IonException
- if there's a syntax error in the Ion content.IonDatagram load(InputStream ionData) throws IonException, IOException
This method will auto-detect and uncompress GZIPped Ion data.
Because this library performs its own buffering, it's recommended that you avoid adding additional buffering to the given stream.
ionData
- the stream from which to read Ion data.NullPointerException
- if ionData
is null.IonException
- if there's a syntax error in the Ion content.IOException
- if reading from the specified input stream results
in an IOException
.