private Subscription SetupSubscription() { var sub_uri = new ChannelUriStringBuilder() .Reliable(true) .Media("udp") .Endpoint(this.local_address.ToString()) .Build(); return(this.aeron.AddSubscription(sub_uri, ECHO_STREAM_ID)); }
private Publication SetupPublication() { var pub_uri = new ChannelUriStringBuilder() .Reliable(true) .Media("udp") .Endpoint(this.remote_address.ToString()) .Build(); return(this.aeron.AddPublication(pub_uri, ECHO_STREAM_ID)); }
private Subscription SetupSubscription() { var sub_uri = new ChannelUriStringBuilder() .Reliable(true) .Media("udp") .Endpoint(this.local_address.ToString()) .Build(); Log?.WriteLine($"subscription URI: {sub_uri}"); return(this.aeron.AddSubscription(sub_uri, ECHO_STREAM_ID, OnClientConnected, OnClientDisconnected)); }
private void OnReceiveMessageInitial(string message) { var matcher = HELLO_PATTERN.Match(message); if (!matcher.Success) { Log?.WriteLine($"client sent malformed HELLO message: {message}"); return; } string n = matcher.Groups[1].Value; int port = int.Parse(n); var source_id = image.SourceIdentity; try { var source_uri = new Uri("fake://" + source_id); var sb = new StringBuilder(); sb.Append(source_uri.Host); sb.Append(":"); sb.Append(port); var address = sb.ToString(); var pub_uri = new ChannelUriStringBuilder() .Reliable(true) .Media("udp") .Endpoint(address) .Build(); this.publication = this.aeron.AddPublication(pub_uri, ECHO_STREAM_ID); this.state = State.CONNECTED; } catch (UriFormatException ex) { Log?.WriteLine($"UriFormatException Message: {ex.Message}"); } }