Example #1
0
        /// <summary>
        ///     Stop listening to the port
        /// </summary>
        public override void Disconnect()
        {
            _listenCompletionSource?.TrySetResult();

            _server?.Shutdown();
            _server = null;

            _client?.Disconnect();
            _client = null;
        }
Example #2
0
        /// <summary>
        ///     Connect to a server located at a provided uri
        /// </summary>
        /// <param name="uri">address of the server to connect to</param>
        /// <returns>The connection to the server</returns>
        /// <exception>If connection cannot be established</exception>
        public override async UniTask <IConnection> ConnectAsync(Uri uri)
        {
            _client = new Libuv2kConnection(NoDelay);

            UriBuilder connection = new UriBuilder {
                Scheme = uri.Scheme, Host = uri.Host, Port = Port
            };

            return(await _client.ConnectAsync(connection.Uri));
        }