コード例 #1
0
ファイル: BaseReceptor.cs プロジェクト: babann/HOPE
        /// <summary>
        /// Add a receive protocol that is qualified by a function and specifies the action when qualified.
        /// </summary>
        protected virtual void AddReceiveProtocol(string p, Func <dynamic, bool> q, Action <dynamic> a)
        {
            bool cachedEnableState;

            cachedReceiveProtocolConfig.TryGetValue(p, out cachedEnableState).Else(() => cachedEnableState = true);
            receiveProtocols.Add(new ReceiveQualifier(p, q, a)
            {
                Enabled = cachedEnableState
            });
            ReceiveProtocolsChanged.Fire(this, EventArgs.Empty);
        }
コード例 #2
0
ファイル: BaseReceptor.cs プロジェクト: babann/HOPE
 /// <summary>
 /// Remove all receive protocols.
 /// </summary>
 protected virtual void RemoveReceiveProtocols()
 {
     receiveProtocols.Clear();
     ReceiveProtocolsChanged.Fire(this, EventArgs.Empty);
 }
コード例 #3
0
ファイル: BaseReceptor.cs プロジェクト: babann/HOPE
 /// <summary>
 /// Remove a specific receive protocol.
 /// </summary>
 protected virtual void RemoveReceiveProtocol(string p)
 {
     receiveProtocols.Remove(receiveProtocols.Single(rp => rp.Protocol == p));
     ReceiveProtocolsChanged.Fire(this, EventArgs.Empty);
 }
コード例 #4
0
 /// <summary>
 /// Add a receive protocol that is qualified by a function and specifies the action when qualified.
 /// </summary>
 protected virtual void AddReceiveProtocol(string p, Func <dynamic, bool> q, Action <dynamic> a)
 {
     receiveProtocols.Add(new ReceiveQualifier(p, q, a));
     ReceiveProtocolsChanged.Fire(this, EventArgs.Empty);
 }
コード例 #5
0
 /// <summary>
 /// Add an unqualified receive protocol.  Override ProcessCarrier to handle this protocol.
 /// </summary>
 protected virtual void AddReceiveProtocol(string p)
 {
     receiveProtocols.Add(new ReceiveQualifier(p));
     ReceiveProtocolsChanged.Fire(this, EventArgs.Empty);
 }