Hello, Igniters.

Currently, in case of usage .Net platform client it’s required for the user to 
explicitly register each custom type.

```
_marsh = new Marshaller(new BinaryConfiguration
{
    TypeConfigurations = new List<BinaryTypeConfiguration>
    {
        new BinaryTypeConfiguration(typeof (Address)),
        new BinaryTypeConfiguration(typeof (TestModel))
    }
});
```

Note, we have a special public interface to map java type to .net types - 
`IBinaryNameMapper`

```
    public interface IBinaryNameMapper
    {
        string GetTypeName(string name);
        string GetFieldName(string name);
    }
}
```

Users found this approach annoying and not convenient.
So, recently we made a several improvements for the Service API to implicitly 
register each custom type from service method arguments. [1], [2], [3]
For now, user can just call Java service from .Net without any additional 
configuration in case FQN NameMapper used.

I propose to extends approach with the implicit binary type registration to all 
APIs and prepare PR for it [4].

What do you think?

[1] 
https://github.com/apache/ignite/commit/35f551c023a12b3570d65c803d10c89480f7d5e4
[2] 
https://github.com/apache/ignite/commit/6d02e32e7f049e4f78f7abd37f4ff91d77f738c2
[3] 
https://github.com/apache/ignite/commit/c2204cda29e70294cc93756eabc844b64e07a42e
[4] https://github.com/apache/ignite/pull/8635

Reply via email to