using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Tango.Transport { /// /// Represents a transport component. /// public interface ITransportComponent : IDisposable { /// /// Gets or sets the name of the transport component. /// String ComponentName { get; set; } /// /// Connects the transport component. /// /// Task Connect(); /// /// Disconnects the transport component. /// /// Task Disconnect(); /// /// Occurs when component state changes. /// event EventHandler StateChanged; /// /// Gets the component state. /// TransportComponentState State { get; } } }