Package org.bukkit.util.io

# Class BukkitObjectInputStream

java.lang.Object
java.io.InputStream
java.io.ObjectInputStream
org.bukkit.util.io.BukkitObjectInputStream

All Implemented Interfaces:
  `Closeable`, `DataInput`, `ObjectInput`, `ObjectStreamConstants`, `AutoCloseable`

public class BukkitObjectInputStream extends ObjectInputStream
This class is designed to be used in conjunction with the `ConfigurationSerializable` API. It translates objects back to their original implementation after being serialized by `BukkitObjectInputStream`.

Behavior of implementations extending this class is not guaranteed across future versions.

## Nested Class Summary

## Nested classes/interfaces inherited from class java.io.ObjectInputStream

`ObjectInputStream.GetField`

## Field Summary

### Fields inherited from interface java.io.ObjectStreamConstants

`baseWireHandle, PROTOCOL_VERSION_1, PROTOCOL_VERSION_2, SC_BLOCK_DATA, SC_ENUM, SC_EXTERNALIZABLE, SC_SERIALIZABLE, SC_WRITE_METHOD, SERIAL_FILTER_PERMISSION, STREAM_MAGIC, STREAM_VERSION, SUBCLASS_IMPLEMENTATION_PERMISSION, SUBSTITUTION_PERMISSION, TC_ARRAY, TC_BASE, TC_BLOCKDATA, TC_BLOCKDATALONG, TC_CLASS, TC_CLASSDESC, TC_ENDBLOCKDATA, TC_ENUM, TC_EXCEPTION, TC_LONGSTRING, TC_MAX, TC_NULL, TC_OBJECT, TC_PROXYCLASSDESC, TC_REFERENCE, TC_RESET, TC_STRING`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`BukkitObjectInputStream()`
Constructor provided to mirror super functionality.
``
`BukkitObjectInputStream(InputStream in)`
Object input stream decoration constructor.

## Method Summary

Modifier and Type
Method
Description
`protected Object`
`resolveObject(Object obj)`

### Methods inherited from class java.io.ObjectInputStream

`available, close, defaultReadObject, enableResolveObject, getObjectInputFilter, read, read, readBoolean, readByte, readChar, readClassDescriptor, readDouble, readFields, readFloat, readFully, readFully, readInt, readLine, readLong, readObject, readObjectOverride, readShort, readStreamHeader, readUnshared, readUnsignedByte, readUnsignedShort, readUTF, registerValidation, resolveClass, resolveProxyClass, setObjectInputFilter, skipBytes`

### Methods inherited from class java.io.InputStream

`mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, 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.ObjectInput

`read, skip`

## Constructor Details

### BukkitObjectInputStream

protected BukkitObjectInputStream() throws IOException, SecurityException
Constructor provided to mirror super functionality.

Throws:
  `IOException` - if an I/O error occurs while creating this stream
  `SecurityException` - if a security manager exists and denies enabling subclassing
See Also:
  - `ObjectInputStream()`

### BukkitObjectInputStream

public BukkitObjectInputStream(InputStream in) throws IOException
Object input stream decoration constructor.

Parameters:
  `in` - the input stream to wrap
Throws:
  `IOException` - if an I/O error occurs while reading stream header
See Also:
  - `ObjectInputStream(InputStream)`

## Method Details

### resolveObject

protected Object resolveObject(Object obj) throws IOException

Overrides:
  `resolveObject` in class `ObjectInputStream`
Throws:
  `IOException`