[
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)