Esempio n. 1
0
 /// <summary>非同期イベント エントリ削除</summary>
 /// <param name="aee">非同期イベント エントリ</param>
 /// <returns>
 /// ・成功:true
 /// ・失敗:false
 /// </returns>
 /// <remarks>メッセージID付きのエントリは自動的に削除される。</remarks>
 public static bool UnRegisterAsyncEvent(AsyncEventEntry aee)
 {
     lock (AsyncEventFx._lock) // staticなのでロックする。
     {
         return(AsyncEventFx.NPS.UnRegisterAsyncEvent(aee));
     }
 }
Esempio n. 2
0
            /// <summary>非同期イベント エントリ登録</summary>
            /// <param name="aee">非同期イベント エントリ</param>
            public void RegisterAsyncEvent(AsyncEventEntry aee)
            {
                // 非同期イベント エントリのリスト
                // (1つの機能IDに対して複数のエントリを登録可能)
                List <AsyncEventEntry> aee_lst = null;

                if (this.AEES.ContainsKey(aee.FuncID))
                {
                    // 既に登録済み

                    // 非同期イベント エントリのリストを取得
                    aee_lst = this.AEES[aee.FuncID];
                }
                else
                {
                    // 未登録

                    // 非同期イベント エントリのリストを生成して追加
                    aee_lst = new List <AsyncEventEntry>();
                    this.AEES.Add(aee.FuncID, aee_lst);
                }

                // 非同期イベント エントリのリストにエントリを追加
                aee_lst.Add(aee);
            }
Esempio n. 3
0
        /// <summary>非同期イベント登録</summary>
        /// <param name="aee">非同期イベント エントリ</param>
        /// <returns>
        /// ・成功:true
        /// ・失敗:false
        /// </returns>
        public static bool RegisterAsyncEvent(AsyncEventEntry aee)
        {
            lock (AsyncEventFx._lock) // staticなのでロックする。
            {
                AsyncEventFx.NPS.RegisterAsyncEvent(aee);
            }

            return(true); // 将来的にfalse対応があるかもしれないので。
        }
Esempio n. 4
0
            /// <summary>非同期イベント エントリ削除</summary>
            /// <param name="aee">非同期イベント エントリ</param>
            /// <returns>
            /// ・成功:true
            /// ・失敗:false
            /// </returns>
            /// <remarks>メッセージID付きのエントリは自動的に削除される。</remarks>
            public bool UnRegisterAsyncEvent(AsyncEventEntry aee)
            {
                // 非同期イベント エントリのリスト
                List <AsyncEventEntry> aee_lst = null;

                if (this.AEES.ContainsKey(aee.FuncID))
                {
                    // 既に登録済み

                    // 非同期イベント エントリのリストを取得
                    aee_lst = this.AEES[aee.FuncID];

                    // 非同期イベント エントリを削除
                    // IEquatable対応済み。
                    return(aee_lst.Remove(aee));
                }
                else
                {
                    // 未登録
                    return(false);
                }
            }