using System.Threading.Tasks;
namespace Plane.Communication
{
///
/// 的空白实现。
///
public class EmptyConnection : ExceptionThrownEventSource, IConnection
{
private EmptyConnection()
{
}
public static EmptyConnection Instance { get; } = new EmptyConnection();
public bool IsOpen { get; private set; }
public void Close()
{
IsOpen = false;
}
public int BytesToRead()
{
return 0;
}
public Task OpenAsync()
{
IsOpen = true;
return TaskUtils.CompletedTask;
}
public Task ReadAsync(byte[] buffer, int offset, int count)
{
return Task.FromResult(count);
}
public Task WriteAsync(byte[] buffer, int offset, int count)
{
return TaskUtils.CompletedTask;
}
}
}