On Mon, 24 May 2021 08:22:57 GMT, Chris Hegarty <che...@openjdk.org> wrote:

>> In previous versions, calling OIS.setObjectInputFilter determined exactly 
>> the filter used for the stream.
>> With the filter factory enhancement, the current filter factory determines 
>> how the argument to OIS.setObjectInputFilter is used. There are plenty of 
>> cases where the filter factory will combine it with other filters and the 
>> composite will becomes the filter for the stream.
>
> Here is the source of my confusion. The bulleted list is enumerating how a 
> stream-specific filter is determined, but I see an extra step in that which 
> should be unnecessary. It is currently:
> 
> 1. Check JVM-wide filter factory
> 2. If no JVM-wide, check built-in factory
> 3. setSerialFilterFactory
> 
> , but 1 and 2 are not separate and distinct cases - there is always a 
> JVM-wide deserialization filter factory. The JVM-wide deserialization filter 
> factory is either i) set through a property, or ii) set explicitly by an API 
> call, or iii) the built-in implementation.
> 
> If the initialisation of the JVM-wide deserialization filter factory is 
> separated out from how the stream-specific factory is determined, then I 
> believe that it will be easier to follow.

Yes, I will describe the filter factory selection and separately the filter 
composition by the factory.

-------------

PR: https://git.openjdk.java.net/jdk/pull/3996

Reply via email to