Пример #1
0
        public void AddListener <TDataType>(string name, Delegates.DataListener <TDataType> listener) where TDataType : EventData
        {
            ValidateName(name);

            if (listener == null)
            {
                throw new ArgumentNullException(nameof(listener));
            }

            if (IsDispatching)
            {
                throw new InvalidOperationException("Cannot add listeners while dispatching");
            }

            InternalAddListener <TDataType>(name, new DataInvoker <TDataType>(listener));
        }
Пример #2
0
        public void AddListener <TDataType>(Delegates.DataListener <TDataType> listener) where TDataType : EventData
        {
            if (listener == null)
            {
                throw new ArgumentNullException(nameof(listener));
            }

            if (IsDispatching)
            {
                throw new InvalidOperationException("Cannot add listeners while dispatching");
            }

            var name = EventUtils.EventName <TDataType>();

            InternalAddListener <TDataType>(name, new DataInvoker <TDataType>(listener));
        }
Пример #3
0
 public DataInvoker(Delegates.DataListener <TDataType> listener)
 {
     Listener = listener ?? throw new ArgumentNullException(nameof(listener));
 }