123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- using System;
- using Wayne.Lib;
- namespace Wayne.ForecourtControl.OptBridge
- {
- /// <summary>
- /// Root object for the Opt communication using a application-layer bridge. The interface provides functionality to
- /// get access to single Opts, and change the configuration.
- /// </summary>
- public interface IOptBridge : IConnectable, IIdentifiableEntity, IDisposable
- {
- #region Properties
- /// <summary>
- /// Collection of the currently configured Opts.
- /// </summary>
- System.Collections.ObjectModel.ReadOnlyCollection<IOpt> Opts { get;}
- /// <summary>
- /// The Client id that was specified in the connection string when connecting.
- /// </summary>
- int ClientId { get;}
- /// <summary>
- /// The Client name that was specified in the connection string when connecting.
- /// </summary>
- string ClientName { get;}
- #endregion
- #region Events
- /// <summary>
- /// Event that notifies clients that a Opt has been added or removed.
- /// </summary>
- event EventHandler OnConfigurationChanged;
- #endregion
- #region Methods
- /// <summary>
- /// Configure that the specified opt should be handled and polled. If the request completes sucessfully, the new
- /// Opt is added to the Opts collection.
- /// </summary>
- /// <param name="optId"></param>
- /// <param name="requestCompleted"></param>
- /// <param name="userToken"></param>
- void AddOptAsync(int optId, EventHandler<AsyncCompletedEventArgs> requestCompleted, object userToken);
- /// <summary>
- /// Remove the specified opt from the list of connected opts. If the request completes successfully, the
- /// Opts collection is modified.
- /// </summary>
- /// <param name="optId"></param>
- /// <param name="requestCompleted"></param>
- /// <param name="userToken"></param>
- void RemoveOptAsync(int optId, EventHandler<AsyncCompletedEventArgs> requestCompleted, object userToken);
- #endregion
- }
- }
|