Github user ansell commented on the issue:
https://github.com/apache/commons-rdf/pull/43
Having ``Optional`` fields isn't impossible to serialise (as I said
erroneously in the referenced comment), as you could always write custom
serialise/deserialise code to support it, but it isn't supported by default,
intentionally:
http://mail.openjdk.java.net/pipermail/jdk8-dev/2013-September/003274.html
I haven't looked at the code/framework for a long time, but my recollection
was that the parser was based on a single-threaded model after it came out of
the multi-thread callable factory. If you are only expecting to run on a single
thread, you may not have the support structures in place to run over multiple
machines in a typical fashion, which is what ``Serializable`` has as one of its
implied meanings. That would be a broader discussion though and shouldn't stop
users from benefiting from serialisation in cases where they know it is
safe/possible.
Overall, changing the instance variables to nullable raw types, and then
using their accessors to see them as ``Optional`` is a compromise that allows
serialisation without custom coding for it, and hence this PR looks good to me.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]