private void HandleJoin(MasterMessageUnion wrapper,
                                MessageStreamWriter <MasterMessageUnion> writer)
        {
            var endpoint = wrapper.JoinRequest.EndpointJoining;
            var segments = master.Join(new NodeEndpoint
            {
                Async = new Uri(endpoint.Async),
                Sync  = new Uri(endpoint.Sync)
            });
            var joinResponse = new JoinResponseMessage.Builder
            {
                SegmentsList = { segments.Select(x => x.GetSegment()) }
            };

            writer.Write(new MasterMessageUnion.Builder
            {
                Type         = MasterMessageType.JoinResult,
                JoinResponse = joinResponse.Build()
            }.Build());
        }
 private void HandleJoin(MasterMessageUnion wrapper,
     MessageStreamWriter<MasterMessageUnion> writer)
 {
     var endpoint = wrapper.JoinRequest.EndpointJoining;
     var segments = master.Join(new NodeEndpoint
     {
         Async = new Uri(endpoint.Async),
         Sync = new Uri(endpoint.Sync)
     });
     var joinResponse = new JoinResponseMessage.Builder
     {
         SegmentsList = { segments.Select(x => x.GetSegment()) }
     };
     writer.Write(new MasterMessageUnion.Builder
     {
         Type = MasterMessageType.JoinResult,
         JoinResponse = joinResponse.Build()
     }.Build());
 }