public void Unsubscribe(String topicName) { try { ParentBroker.Unsubscribe(Header, topicName); } catch (SocketException) { Crash(); } }
public override void ConnectToParentBroker(String parentBrokerURL) { base.ConnectToParentBroker(parentBrokerURL); try { ParentBroker.RegisterSubscriber(Header); } catch (SocketException) { Crash(); } }
public void ReceiveEvent(Event @event) { Console.WriteLine("New event received!\n" + @event); try { ParentBroker.AckDelivery(Header, @event.PublisherHeader); } catch (SocketException) { Crash(); } }
public void ForwardToParent(EventContainer eventContainer) { //Console.WriteLine("ForwardToBrokers Thread: " + Thread.CurrentThread.ManagedThreadId + "\n"); EventContainer newEventContainer = eventContainer.Clone(); if (ParentBroker != null) { Task.Run(() => ParentBroker.UnicastEvent(newEventContainer)); } else { newEventContainer.NewSeqNumber = rootSeqNumber++; newEventContainer.SenderBroker = Header; Task.Run(() => this.MulticastEvent(newEventContainer)); } }
public override void ConnectToParentBroker(String parentBrokerURL) { base.ConnectToParentBroker(parentBrokerURL); ParentBroker.RegisterBroker(Header); adjacentBrokerList.Add(ParentBroker.Header, ParentBroker); }