Git main push: Bug#406993 - xml, json, kryo, custom, serializers
https://bugs.eclipse.org/bugs/show_bug.cgi?id=406993
Design doc:
http://wiki.eclipse.org/EclipseLink/DesignDocs/406993
Adds support for custom serializers for cache coordination and serialized mappings.
Changes:
- Defined existing (serialized, class-instance) reserved Convert names as static variables, and added xml, json, kryo for other serialization types.
- Added @SerializedConverter, @SerializedConverters to allow specification of the Serializer to use for serialized converters.
- Added persistence unit property to define cache coordination serializer, "eclipselink.cache.coordination.serializer".
- Added some initial JGroups configuration.
- Added ClassNameConversionRequired to allow generic Converter class conversion.
- ObjectBuilder, ResultSetRecord, SimpleResultSetRecord: did some micro optimizations
- UnitOfWorkChangeSet: switched to serializing instead of converting to bytes in RCM command, convert entire command to bytes instead.
- CommandPropagator, RemoteCommandManager : allow command to be passed as bytes and support custom serialization.
- SerializedObjectConverter: added support for serializers.
- SessionProfiler: added profiling of cache coordination.
- KryoSerializer: changed to be thread safe.
- Added serializer tests to JPA lob model.
- Added JPA meta-data for serializers.