コード例 #1
0
        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);
        }
コード例 #2
0
 public void RegisterORNGCallbackResponder(string channel, ORNGCallbackResponder responder)
 {
     if (callbackResponders.ContainsKey(channel))
     {
         callbackResponders.Remove(channel);
     }
     if (responder != null)
     {
         callbackResponders.Add(channel, responder);
     }
 }