Ejemplo n.º 1
0
 public virtual void HandleMessage(Pvr_Message msg)
 {
     if (messageCallback != null)
     {
         messageCallback(msg);
     }
 }
Ejemplo n.º 2
0
        virtual public void HandleMessage(Pvr_Message msg)
        {
            if (callback_ != null)
            {
                callback_(msg);
                return;
            }

            throw new UnityException("Request with no handler.  This should never happen.");
        }
Ejemplo n.º 3
0
        public Pvr_Request <T> OnComplete(Pvr_Message <T> .Callback callback)
        {
            if (callback_ != null)
            {
                throw new UnityException("Attempted to attach multiple handlers to a Request.  This is not allowed.");
            }

            callback_ = callback;
            Pvr_Callback.AddRequest(this);
            return(this);
        }
Ejemplo n.º 4
0
        internal static void RunLimitedCallbacks(uint limit)
        {
            for (var i = 0; i < limit; ++i)
            {
                var msg = Pvr_Message.PopMessage();
                if (msg == null)
                {
                    break;
                }

                HandleMessage(msg);
            }
        }
Ejemplo n.º 5
0
        internal static void RunCallbacks()
        {
            while (true)
            {
                var msg = Pvr_Message.PopMessage();
                if (msg == null)
                {
                    break;
                }

                HandleMessage(msg);
            }
        }
Ejemplo n.º 6
0
        override public void HandleMessage(Pvr_Message msg)
        {
            if (!(msg is Pvr_Message <T>))
            {
                Debug.LogError("Unable to handle message: " + msg.GetType());
                return;
            }

            if (callback_ != null)
            {
                callback_((Pvr_Message <T>)msg);
                return;
            }

            throw new UnityException("Request with no handler.  This should never happen.");
        }
Ejemplo n.º 7
0
        internal static void HandleMessage(Pvr_Message msg)
        {
            Request request;

            if (msg.RequestID != 0 && requestIDsToRequests.TryGetValue(msg.RequestID, out request))
            {
                try
                {
                    request.HandleMessage(msg);
                }
                finally
                {
                    requestIDsToRequests.Remove(msg.RequestID);
                }
                return;
            }

            RequestCallback callbackHolder;

            if (notificationCallbacks.TryGetValue(msg.Type, out callbackHolder))
            {
                callbackHolder.HandleMessage(msg);
            }
        }