[
https://issues.apache.org/jira/browse/IGNITE-14090?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Anton Kalashnikov updated IGNITE-14090:
---------------------------------------
Description:
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}
was:
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}
> Networking API
> --------------
>
> Key: IGNITE-14090
> URL: https://issues.apache.org/jira/browse/IGNITE-14090
> Project: Ignite
> Issue Type: Sub-task
> Reporter: Anton Kalashnikov
> Priority: Major
>
> 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)