public static ORNGCallbackResponder GetORNGCallbackResponder(Guid guid, string request) { DebugLogging.Log("GetORNGCallbackResponder guid :" + guid + ":" + request); ORNGCallbackResponder retval = null; foreach (WeakReference wr in managers.ToArray <WeakReference>()) { if (wr.Target == null) { DebugLogging.Log("GetORNGCallbackResponder removing WeakReference :" + wr); managers.Remove(wr); } else if (request.Equals(((ORNGCallbackResponder)wr.Target).requestToRespondTo) && guid.Equals(((ORNGCallbackResponder)wr.Target).om.GetGuid())) { retval = wr.Target as ORNGCallbackResponder; } } return(retval); }
public void RegisterORNGCallbackResponder(string channel, ORNGCallbackResponder responder) { if (callbackResponders.ContainsKey(channel)) { callbackResponders.Remove(channel); } if (responder != null) { callbackResponders.Add(channel, responder); } }