public void CreateReceiver(IObjectListener listener) { // only one listener per subject allowed for point to point connection IMessageConsumer consumer = null; if (receivers.ContainsKey(receiveQueue)) { consumer = receivers[receiveQueue]; } else { IDestination dest = session.GetQueue(receiveQueue); consumer = session.CreateConsumer(dest); receivers.Add(receiveQueue, consumer); } if (listener == null) { consumer.Listener -= Consumer_Listener1; } else { this.objRecListener = listener; consumer.Listener += new MessageListener(Consumer_Listener1); } }
public void RemoveSubscriber(IObjectListener listener) { // many listeners per subject allowed for publish/subscribe if (!objSubscribers.ContainsKey(subscribeTopic)) { return; } List <IObjectListener> listeners = objSubscribers[subscribeTopic]; if (listeners.Contains(listener)) { if (!objConsumers.ContainsKey(listener)) { return; } IMessageConsumer consumer = objConsumers[listener]; consumer.Listener -= Consumer_Listener2; objConsumers.Remove(listener); listeners.Remove(listener); } }
public void CreateSubscriber(IObjectListener listener) { // many listeners per subject allowed for publish/subscribe List <IObjectListener> listeners = null; if (objSubscribers.ContainsKey(subscribeTopic)) { listeners = objSubscribers[subscribeTopic]; } else { listeners = new List <IObjectListener>(); objSubscribers.Add(subscribeTopic, listeners); } if (!listeners.Contains(listener)) { IDestination dest = session.GetTopic(subscribeTopic); IMessageConsumer consumer = session.CreateConsumer(dest); ISerialization serialization = getSerializationInstance(subscribeTopic); consumer.Listener += new MessageListener(Consumer_Listener2); listeners.Add(listener); objConsumers.Add(listener, consumer); } }
private void SetObjectListener() { IObjectListener objectListener = gameObject.GetComponent <IObjectListener>(); objectListener.SetListeners(); }
public void Receive(IObjectListener listener) { transport.CreateReceiver(listener); }
public void Subscribe(IObjectListener listener) { transport.CreateSubscriber(listener); }