In the distributed case, the different types of servers need to transfer
objects that implement a unified interface,
but each type of server implementation mechanisms are not the same, to achieve
the object's class will realize Externalizable interface.
Like this:
interface A extends Externalizable {
void a();
void b();
}
class B implement A {
void a(){
do something
}
void b(){
throw new unsupporte execution;
}
implement Externalizable read and write….
}
class C implement A {
void a(){
throw new unsupporte execution;
}
void b(){
do something
}
implement Externalizable read and write….
}
Then do this for other type servers:
IgniteCompute.call(new IgniteCallable() { A.a() or A.b() });
> 在 2015年11月4日,下午9:19,Denis Magda <[email protected]> 写道:
>
> Hi wmz7year (sorry, don't know your real name),
>
> Thanks for showing the interest in Ignite and contributing to it but I'm
> afraid that we can't accept this particular contribution.
>
> The reason is that the checksum verification is essential for objects
> serialized with OptimizedMarshaller. It helps to prevent ClassCastException
> and other weird stuff.
>
> Please share with us your use case that made you to modify
> OptimizedMarshaller. Probably we will able to help you with this.
>
> P.S.
> If you haven't subscribed to dev and user lists please do this.
>
> --
> Denis
>
>
> On 11/4/2015 12:52 PM, wmz7year wrote:
>> GitHub user wmz7year opened a pull request:
>>
>> https://github.com/apache/ignite/pull/200
>>
>> IGNITE-1854
>>
>>
>> You can merge this pull request into a Git repository by running:
>>
>> $ git pull https://github.com/wmz7year/ignite ignite-1854
>>
>> Alternatively you can review and apply these changes as the patch at:
>>
>> https://github.com/apache/ignite/pull/200.patch
>>
>> To close this pull request, make a commit to your master/trunk branch
>> with (at least) the following in the commit message:
>>
>> This closes #200
>> ----
>> commit 940db9ffc8e83149c2177de35dc7322fa972bd6e
>> Author: wmz7year <[email protected]>
>> Date: 2015-11-04T09:51:28Z
>>
>> IGNITE-1854
>>
>> ----
>>
>>
>> ---
>> If your project is set up for it, you can reply to this email and have your
>> reply appear on GitHub as well. If your project does not have this feature
>> enabled and wishes so, or if the feature is enabled but not working, please
>> contact infrastructure at [email protected] or file a JIRA ticket
>> with INFRA.
>> ---
>