[ https://issues.apache.org/jira/browse/IGNITE-3689?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15968968#comment-15968968 ]
Pavel Tupitsyn commented on IGNITE-3689: ---------------------------------------- IgniteProxy removed, running tests to see if we actually ever needed it. I'm not sure about use cases: why would user want to serialize injected fields? Why would user even want to serialize the class which is eligible for injection? We currently inject resources in the following cases: * cache filters and listeners * compute actions and jobs * message and event listeners * plugin context It is very unlikely that these entities are going to be serialized by the user manually. We should just skip {{Ignite}} fields during serialization. > .NET: Remove IgniteProxy > ------------------------ > > Key: IGNITE-3689 > URL: https://issues.apache.org/jira/browse/IGNITE-3689 > Project: Ignite > Issue Type: Improvement > Components: platforms > Reporter: Pavel Tupitsyn > Assignee: Pavel Tupitsyn > Labels: .NET, breaking > Fix For: 2.0 > > > IgniteProxy exists to handle serialization of injected IIgnite fields in user > classes. > As a result, we write a type id and a null flag in place of injected fields. > Instead we should just skip injected fields altogether. > There are two cases: > * Binarizable. In this case we can use a special no-op serializer or add a > check to BinaryWriter. > * Serializable. Override ISerializable in Ignite and don't write anything. -- This message was sent by Atlassian JIRA (v6.3.15#6346)