You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Anton Kalashnikov (Jira)" <ji...@apache.org> on 2021/01/28 13:52:00 UTC

[jira] [Updated] (IGNITE-14090) Networking API

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