Class FormatIdInputStream
java.lang.Object
java.io.InputStream
java.io.FilterInputStream
java.io.DataInputStream
org.apache.derby.iapi.services.io.FormatIdInputStream
- All Implemented Interfaces:
Closeable
,DataInput
,ObjectInput
,AutoCloseable
,CloneableStream
,ErrorInfo
,ErrorObjectInput
,Resetable
public final class FormatIdInputStream
extends DataInputStream
implements ErrorObjectInput, Resetable, CloneableStream
A stream for reading objects with format id tags which was
produced by a FormatIdOutputStream.
Please see the documentation for FormatIdOutputStream for information about the streams format and capabilites.
-
Field Summary
FieldsFields inherited from class java.io.FilterInputStream
in
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionClone the stream.void
Close.(package private) ClassFactory
private static Context
getContextOrNull
(String contextID) Privileged lookup of a Context.private ObjectInputStream
private <T extends Throwable>
ThandleReadError
(T cause, ObjectInputStream stream) Handle an error that happened withinreadObject()
when reading aSerializable
object.void
Initialize.Read an object from this stream.void
Reset the stream to the beginning.private void
void
setInput
(InputStream in) Set the InputStream for this FormatIdInputStream to the stream provided.Methods inherited from class java.io.DataInputStream
read, read, readBoolean, readByte, readChar, readDouble, readFloat, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedShort, readUTF, readUTF, skipBytes
Methods inherited from class java.io.FilterInputStream
available, close, mark, markSupported, read, reset, skip
Methods inherited from class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.io.DataInput
readBoolean, readByte, readChar, readDouble, readFloat, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedShort, readUTF, skipBytes
-
Field Details
-
cf
-
errorInfo
-
myNestedException
-
-
Constructor Details
-
FormatIdInputStream
Constructor for a FormatIdInputStream- Parameters:
in
- bytes come from here.
-
-
Method Details
-
readObject
Read an object from this stream.- Specified by:
readObject
in interfaceObjectInput
- Returns:
- The read object.
- Throws:
IOException
- An IO or serialization error occurred.ClassNotFoundException
- A class for an object in the stream could not be found.
-
setInput
Set the InputStream for this FormatIdInputStream to the stream provided.- Parameters:
in
- The new input stream.
-
getInputStream
-
getErrorInfo
- Specified by:
getErrorInfo
in interfaceErrorInfo
- Specified by:
getErrorInfo
in interfaceErrorObjectInput
-
getNestedException
- Specified by:
getNestedException
in interfaceErrorInfo
- Specified by:
getNestedException
in interfaceErrorObjectInput
-
setErrorInfo
-
handleReadError
Handle an error that happened withinreadObject()
when reading aSerializable
object.- Type Parameters:
T
- the type of exception that was thrown- Parameters:
cause
- the thrown exceptionstream
- the stream from which the exception was thrown- Returns:
- the thrown exception
-
getClassFactory
ClassFactory getClassFactory() -
getObjectStream
- Throws:
IOException
-
resetStream
Description copied from interface:Resetable
Reset the stream to the beginning.- Specified by:
resetStream
in interfaceResetable
- Throws:
IOException
StandardException
- See Also:
-
initStream
Description copied from interface:Resetable
Initialize. Needs to be called first, before a resetable stream can be used.- Specified by:
initStream
in interfaceResetable
- Throws:
StandardException
- See Also:
-
closeStream
public void closeStream()Description copied from interface:Resetable
Close. Free resources (such as open containers and locks) associated with the stream.- Specified by:
closeStream
in interfaceResetable
- See Also:
-
cloneStream
Description copied from interface:CloneableStream
Clone the stream.To be used when a "deep" clone of a stream is required rather than multiple references to the same stream.
The resulting clone should support reads, resets, closes which do not affect the original stream source of the clone.
- Specified by:
cloneStream
in interfaceCloneableStream
- Returns:
- The cloned stream.
- See Also:
-
getContextOrNull
Privileged lookup of a Context. Must be private so that user code can't call this entry point.
-