예제 #1
0
        /// <summary>
        /// Asynchronously sends a message to the remote lockdown client.
        /// </summary>
        /// <param name="message">
        /// The message to send.
        /// </param>
        /// <param name="cancellationToken">
        /// A <see cref="CancellationToken"/> which can be used to cancel the asynchronous operation.
        /// </param>
        /// <returns>
        /// A <see cref="Task"/> which represents the asynchronous operation.
        /// </returns>
        public virtual Task WriteMessageAsync(IPropertyList message, CancellationToken cancellationToken)
        {
            Verify.NotDisposed(this);

            if (message == null)
            {
                throw new ArgumentNullException(nameof(message));
            }

            return(this.WriteMessageAsync(message.ToDictionary(), cancellationToken));
        }