Package com.fasterxml.jackson.core.io
Class InputDecorator
- java.lang.Object
-
- com.fasterxml.jackson.core.io.InputDecorator
-
- All Implemented Interfaces:
java.io.Serializable
public abstract class InputDecorator extends java.lang.Object implements java.io.SerializableHandler class that can be used to decorate input sources. Typical use is to use a filter abstraction (filtered stream, reader) around original input source, and apply additional processing during read operations.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description InputDecorator()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract java.io.InputStreamdecorate(IOContext ctxt, byte[] src, int offset, int length)Method called byJsonFactoryinstance when creating parser on given "raw" byte source.java.io.DataInputdecorate(IOContext ctxt, java.io.DataInput input)Method called byJsonFactoryinstance when creating parser given anDataInput, when this decorator has been registered.abstract java.io.InputStreamdecorate(IOContext ctxt, java.io.InputStream in)Method called byJsonFactoryinstance when creating parser given anInputStream, when this decorator has been registered.abstract java.io.Readerdecorate(IOContext ctxt, java.io.Reader r)Method called byJsonFactoryinstance when creating parser given anReader, when this decorator has been registered.
-
-
-
Method Detail
-
decorate
public abstract java.io.InputStream decorate(IOContext ctxt, java.io.InputStream in) throws java.io.IOException
Method called byJsonFactoryinstance when creating parser given anInputStream, when this decorator has been registered.- Parameters:
ctxt- IO context in use (provides access to declared encoding). NOTE: at this point context may not have all information initialized; specifically auto-detected encoding is only available once parsing starts, which may occur only after this method is called.in- Original input source- Returns:
- InputStream to use; either 'in' as is, or decorator version that typically delogates to 'in'
- Throws:
java.io.IOException- if construction ofInputStreamfails
-
decorate
public abstract java.io.InputStream decorate(IOContext ctxt, byte[] src, int offset, int length) throws java.io.IOException
Method called byJsonFactoryinstance when creating parser on given "raw" byte source. Method can either construct aInputStreamfor reading; or return null to indicate that no wrapping should occur.- Parameters:
ctxt- IO context in use (provides access to declared encoding) NOTE: at this point context may not have all information initialized; specifically auto-detected encoding is only available once parsing starts, which may occur only after this method is called.src- Input buffer that contains contents to parseoffset- Offset of the first available byte in the input bufferlength- Number of bytes available in the input buffer- Returns:
- Either
InputStreamto use as input source; or null to indicate that contents are to be processed as-is by caller - Throws:
java.io.IOException- if construction ofInputStreamfails
-
decorate
public java.io.DataInput decorate(IOContext ctxt, java.io.DataInput input) throws java.io.IOException
Method called byJsonFactoryinstance when creating parser given anDataInput, when this decorator has been registered.Default implementation simply throws
UnsupportedOperationException- Parameters:
ctxt- IO context in use (provides access to declared encoding). NOTE: at this point context may not have all information initialized; specifically auto-detected encoding is only available once parsing starts, which may occur only after this method is called.input- Original input source- Returns:
- InputStream to use; either 'input' as is, or decorator version that typically delogates to 'input'
- Throws:
java.io.IOException- if construction ofDataInputfails- Since:
- 2.8
-
decorate
public abstract java.io.Reader decorate(IOContext ctxt, java.io.Reader r) throws java.io.IOException
Method called byJsonFactoryinstance when creating parser given anReader, when this decorator has been registered.- Parameters:
ctxt- IO context in use (provides access to declared encoding) NOTE: at this point context may not have all information initialized; specifically auto-detected encoding is only available once parsing starts, which may occur only after this method is called.r- Original reader- Returns:
- Reader to use; either passed in argument, or something that
calls it (for example, a
FilterReader) - Throws:
java.io.IOException- if construction ofReaderfails
-
-