Anton Kalashnikov created IGNITE-14090:
------------------------------------------
Summary: Networking API
Key: IGNITE-14090
URL: https://issues.apache.org/jira/browse/IGNITE-14090
Project: Ignite
Issue Type: Sub-task
Reporter: Anton Kalashnikov
It needs to design convinient public API for networking module which allow to
get information about network members and send/receive messages from them.
Draft:
{noformat}
public interface NetworkService \{ static NetworkService
create(NetworkConfiguration cfg); void shutdown() throws ???; NetworkMember
localMember(); Collection<NetworkMember> remoteMembers(); void
weakSend(NetworkMember member, Message msg); Future<?>
guaranteedSend(NetworkMember member, Message msg); void
listenMembers(MembershipListener lsnr); void
listenMessages(Consumer<MessagingEvent> lsnr); } public interface
MembershipListener \{ void onAppeared(NetworkMember member); void
onDisappeared(NetworkMember member); void onAcceptedByGroup(List<NetworkMember>
remoteMembers); } public interface NetworkMember \{ UUID id(); }
{noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)