/* * ITimeoutListener Interface Implementation */ public override void ActionTimedout(ActionProperties ap) { int actionID; DifundPublishEventProperties p = (DifundPublishEventProperties)ap; actionID = GetActionIDTS(p.Id); IncMissedACKs(p.TargetSite, p.TargetEntity); FMPublishEventRetransmission(p.E, p.TargetSite, p.OutSeqNumber, actionID, p.Id); }
public override void ActionTimedout(ActionProperties ap) { DifundPublishEventProperties p = (DifundPublishEventProperties) ap; IncMissedACKs(p.TargetSite, p.TargetEntity); this.Events.Produce(new ForwardPublishCommand(p.E, RemoteEntity.RemoteNetwork.SiteName, p.E.EventNr)); }
public abstract void ActionTimedout(ActionProperties properties);
public void ActionTimedout(ActionProperties properties) { Console.WriteLine("[INFO] Main Server Failed"); if (properties.GetType() == typeof(WaitHearthBeat)) { broker.PEventManager.PublishStoredEvents(this.storedEvents); if(broker.Sequencer.CheckIfPassiveSequencer()) { broker.Sequencer.DifundUnprocessedMessages(); } } this.storedEvents = new List<StoredEvent>(); }
private void PerformTimeoutAlert(ActionProperties ap) { if (ap.GetType() == typeof(DifundPublishEventProperties)) { DifundPublishEventProperties dp = (DifundPublishEventProperties)ap; this.MainEntity.ActionTimedout(dp); } else if (ap.GetType() == typeof(WaitHearthBeat)) { WaitHearthBeat sp = (WaitHearthBeat)ap; this.MainEntity.ActionTimedout(sp); } }