示例#1
0
 public static void RemoveTextEditValueChange(TextEdit editor, ComplicateEventHandler e)
 {
     if (eventDictionary.ContainsKey(editor))
     {
         List <ComplexEvent> eventList   = eventDictionary[editor];
         ComplexEvent        valueChange = null;
         foreach (ComplexEvent ce in eventList)
         {
             if (ce is TextEditValueChange)
             {
                 valueChange = ce;
                 break;
             }
         }
         if (valueChange != null)
         {
             if (valueChange.HasRegisteEventNumber() <= 0)
             {
                 eventList.Remove(valueChange);
             }
             else if (valueChange.HasRegisteEventNumber() == 1)
             {
                 valueChange.RemoveEventListener(e);
                 eventList.Remove(valueChange);
             }
         }
     }
 }
        /// <summary>
        /// Timer callback delegate.
        /// </summary>
        /// <param name="state">The state.</param>
        private void TimerCallback(object state)
        {
            // Every second alternately publish one of our two event types.
            ISignalREvent myEvent;

            if (_flip)
            {
                myEvent = new SimpleEvent
                {
                    MessageText = string.Format("Server says hi at {0}", DateTime.Now)
                };
            }
            else
            {
                var employee = new Employee
                {
                    Name      = "John Smith",
                    BirthDate = DateTime.Today
                };
                myEvent = new ComplexEvent
                {
                    Employee  = employee,
                    Timestamp = DateTime.Now
                };
            }

            // Publish the event via Prism's event aggregator (horrible syntax!)
            _prismEventAggregator.GetEvent <PubSubEvent <ISignalREvent> >().Publish(myEvent);

            _flip = !_flip;
        }
示例#3
0
 public static void AddTextEditValueChange(TextEdit editor, ComplicateEventHandler e)
 {
     if (eventDictionary.ContainsKey(editor))
     {
         List <ComplexEvent> eventList   = eventDictionary[editor];
         ComplexEvent        valueChange = null;
         foreach (ComplexEvent ce in eventList)
         {
             if (ce is TextEditValueChange)
             {
                 valueChange = ce;
                 break;
             }
         }
         if (valueChange != null)
         {
             valueChange.AddEventListener(e);
         }
         else
         {
             ComplexEvent editorChange = new TextEditValueChange(editor);
             editorChange.AddEventListener(e);
             eventList.Add(editorChange);
         }
     }
 }
示例#4
0
文件: DCEPNode.cs 项目: samieze/aMuSE
 public async Task RegisterComplexEventMatchAsync(ComplexEvent e, bool isDropped)
 {
     benchmarkMeter.registerNewComplexEvent(e);
     if (!isDropped)
     {
         locallyGeneratedComplexEventCount++;
         internalEventQueue.Data.Enqueue(e);
     }
     else
     {
         locallyDroppedComplexEvents++;
     }
 }
        public void SqlServerEventStore_Save_ComplexEvent_Should_Work()
        {
            var eventStore = new SqlServerEventStore(this.Settings, this.EventDispatcher);

            var stringList = new List <string> {
                "Hello", "Memento"
            };

            var myProp = new ComplexEvent.InternalProp(stringList);

            var complexEvent = new ComplexEvent(Guid.NewGuid(), Environment.TickCount, "PROV@", myProp, byte.MaxValue);

            var exception = Record.Exception(() => eventStore.Save(complexEvent));

            Assert.Null(exception);
        }
示例#6
0
 public void Handle(ComplexEvent @event) // This is another possible writing of the method. You decide!
 {
     Debug.Log("ComplexEvent with arguments: " + @event.myInt + " and '" + @event.myString + "'");
 }
示例#7
0
 /// <summary>
 /// Event subscriber delegate. Simply outputs details of the received events to the console.
 /// </summary>
 /// <param name="complexEvent">The event.</param>
 private static void ComplexEventSubscriber(ComplexEvent complexEvent)
 {
     Console.WriteLine("Complex event. Employee: {0} {1}", complexEvent.Employee.Name, complexEvent.Employee.BirthDate);
     Console.WriteLine("               Timestamp: {0}", complexEvent.Timestamp);
     Console.WriteLine();
 }
示例#8
0
 public void registerNewComplexEvent(ComplexEvent complexEvent)
 {
     currentRecord.processedComplexCount++;
 }
示例#9
0
 public void RegisterComplexEventMatchFork(ComplexEvent p_0, bool p_1) => node.RegisterComplexEventMatchAsync(p_0, p_1).Wait();
示例#10
0
 public Task RegisterComplexEventMatchAsync(ComplexEvent p_0, bool p_1) => node.RegisterComplexEventMatchAsync(p_0, p_1);
示例#11
0
 public virtual void RaiseComplexEvent()
 {
     ComplexEvent?.Invoke(this, new CustomEventArgs());
 }
示例#12
0
 public BaseResponse <Event> UpdateNonAuthorizeComplexEvent(ComplexEvent model)
 {
     return(calendarService.UpdateComplexEvent(model));
 }
示例#13
0
 public BaseResponse <Event> AddComplexEvent(ComplexEvent model)
 {
     return(calendarService.AddComplexEvent(model));
 }