Ejemplo n.º 1
0
        public void OnWireReceived(UnsafeReader reader)
        {
            if (RdReactiveBase.LogReceived.IsTraceEnabled())
            {
                RdReactiveBase.LogReceived.Trace($"{myParent.Location}.{RdId} received cancellation");
            }

            reader.ReadVoid(); //nothing just a void signal
            myDefinition.Terminate();
        }
Ejemplo n.º 2
0
 public override void OnWireReceived(UnsafeReader reader)
 {
     using (myCall.UsingDebugInfo())
     {
         //we are on endpoint side, so listening for cancellation
         Trace(RdReactiveBase.ourLogReceived, "received cancellation");
         reader.ReadVoid(); //nothing just a void value
         ResultInternal.SetIfEmpty(RdTaskResult <TRes> .Cancelled());
         myDef.Terminate();
     }
 }
Ejemplo n.º 3
0
        //received response from wire
        public void OnWireReceived(UnsafeReader reader)
        {
            using (myCall.UsingDebugInfo())
            {
                if (myIsEndpoint) //we are on endpoint side, so listening for cancellation
                {
                    Trace(RdReactiveBase.ourLogReceived, "received cancellation");
                    reader.ReadVoid(); //nothing just a void value
                    ResultInternal.SetIfEmpty(RdTaskResult <TRes> .Cancelled());
                }

                else // we are at call side, so listening no response and bind it if it's bindable
                {
                    var resultFromWire = RdTaskResult <TRes> .Read(myCall.ReadResponseDelegate, myCall.SerializationContext, reader);

                    Trace(RdReactiveBase.ourLogReceived, "received response", resultFromWire);

                    if (!ResultInternal.SetIfEmpty(resultFromWire))
                    {
                        Trace(RdReactiveBase.ourLogReceived, "response from wire was rejected because task already has result");
                    }
                }
            }
        }