I think using the URI and being a property on the connection factory would
be a good idea.

On Thu, Feb 2, 2023 at 6:07 PM Scott Werner
<werner.sc...@protonmail.com.invalid> wrote:

> Hi,
>
> I have a need for a more advanced object message deserialization filter
> than the current black/whitelist functionality. Now that Artemis is Java
> 11+ compatible, there is now the ability to set an ObjectInputFilter on an
> ObjectInputStream. There are also built in methods to generate filters
> similar to the current syntax and offers many other features out of the
> box. This filter can be set on the `ois` within the getObject() call on the
> object message, where the black/whitelist is being set today.
>
> I have a concept working locally, and would like to contribute back, but
> it is not complete, and before submitting a PR could use some advice.
> Currently, the ConnectionFactoryOptions is used to pass down the
> black/whitelist through the various layers and implemented by the
> connection factory and other properties classes. As a user, after creating
> my connection factory, it would be ideal to set the object filter on it,
> then any object message received through one of it's sessions will use it
> for deserialization.
>
> My issue is the best way of passing down this object filter?
> ConnectionFactoryOptions and its implementations appear to only contain
> strings or primitives, populated from xml, -Ds or JNDI, and serialized. I
> don't see anywhere that an object such as this is passed down, usually
> constructed via configuration, so it feels dirty/violation to add like
> this. I can bypass these classes and add as a static to
> ObjectInputstreamWithClassLoader, if set, use. Downside, it affects
> anything within that classloader and feels equally dirty. Only thing I
> thought might be acceptable is adding the fully qualified name of the
> filter class as a string to the configs, and instantiate when necessary.
> This is not as convenient as setting an already constructed object, but it
> does avoid the config/serialization issues. Thoughts?
> Scott

-- 
Clebert Suconic

Reply via email to