On Tue, Nov 24, 2015 at 11:23 AM, Vladimir Ozerov <
[hidden email]>
wrote:
> Folks,
>
> Recently we revealed an inconsistency in our binary serialization when
> BinaryObject.field() is called (*IGNITE-1956*):
> - When field is an object, BinaryObject is returned, i.e. it is not
> deserialized.
> - When field is enum, we always try to deserialize it. This way, user
> cannot work with enums if corresponding class is not loaded to JVM (or type
> is not loaded to .NET).
>
> The problem can be solved using three new methods:
> 1) BinaryType.isEnum() - to let user know whether type is enum or not.
> 2) BinaryObject.enumOrdinal() - to get ordinal is this object is enum.
> Exception will be thrown otherwise.
> 3) IgniteBinaries.createEnum(String typeName, int ordinal) - to create
> enums when there is not matching class/type in runtime.
>
> Thoughts?
>
I think it makes sense. Would be nice to see the updated javadoc. Can you
please send the links whenever the javadoc is updated?
>
> Vladimir.
>