- Enclosing interface:
- ObjectInputFilter
public static interface ObjectInputFilter.FilterInfo
FilterInfo provides access to information about the current object
being deserialized and the status of the
ObjectInputStream
.- Since:
- 9
-
Method Summary
Modifier and Type Method Description long
arrayLength()
The number of array elements when deserializing an array of the class.long
depth()
The current depth.long
references()
The current number of object references.Class<?>
serialClass()
The class of an object being deserialized.long
streamBytes()
The current number of bytes consumed.
-
Method Details
-
serialClass
Class<?> serialClass()The class of an object being deserialized. For arrays, it is the array type. For example, the array class name of a 2 dimensional array of strings is "[[Ljava.lang.String;
". To check the array's element type, iteratively useClass.getComponentType
while the result is an array and then check the class. TheserialClass is null
in the case where a new object is not being created and to give the filter a chance to check the depth, number of references to existing objects, and the stream size.- Returns:
- class of an object being deserialized; may be null
-
arrayLength
long arrayLength()The number of array elements when deserializing an array of the class.- Returns:
- the non-negative number of array elements when deserializing an array of the class, otherwise -1
-
depth
long depth()The current depth. The depth starts at1
and increases for each nested object and decrements when each nested object returns.- Returns:
- the current depth
-
references
long references()The current number of object references.- Returns:
- the non-negative current number of object references
-
streamBytes
long streamBytes()The current number of bytes consumed.- Implementation Requirements:
streamBytes
is implementation specific and may not be directly related to the object in the stream that caused the callback.- Returns:
- the non-negative current number of bytes consumed
-