public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders headers, Stream stream)
        {
            IMethodCallMessage mcm = (IMethodCallMessage)state;
            IMessage           msg = this.DeserializeMessage(mcm, headers, stream);

            sinkStack.DispatchReplyMessage(msg);
        }
Example #2
0
        public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders headers, Stream stream)
        {
            IMethodCallMessage methodCallMessage = state as IMethodCallMessage;
            IMessage           message           = DeserializeResponse(methodCallMessage, headers, stream);

            sinkStack.DispatchReplyMessage(message);
        }
        public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, Object state,
                                         ITransportHeaders headers, Stream stream)
        {
            // previously we stored the outgoing message in state
            IMethodCallMessage mcm    = (IMethodCallMessage)state;
            IMessage           retMsg = DeserializeMessage(mcm, headers, stream);

            sinkStack.DispatchReplyMessage(retMsg);
        } // AsyncProcessRequest
Example #4
0
        public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack,
                                         object state,
                                         ITransportHeaders headers,
                                         Stream stream)
        {
            IMessage replyMessage = (IMessage)_binaryCore.Deserializer.DeserializeMethodResponse(stream, null, (IMethodCallMessage)state);

            sinkStack.DispatchReplyMessage(replyMessage);
        }
Example #5
0
        public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack,
                                         object state,
                                         ITransportHeaders headers,
                                         Stream stream)
        {
            IMessage reqMessage   = (IMessage)state;
            IMessage replyMessage = (IMessage)IceChannelUtils.ProtocolReplyToMessage(stream, reqMessage);

            stream.Close();

            sinkStack.DispatchReplyMessage(replyMessage);
        }
        public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack,
                                         object state,
                                         ITransportHeaders headers,
                                         Stream stream)
        {
            CallData             data             = (CallData)state;
            SoapMessageFormatter soapMsgFormatter = data.Formatter;
            IMessage             replyMessage     = (IMessage)DeserializeMessage(
                stream, headers, (IMethodCallMessage)data.Msg,
                soapMsgFormatter);

            sinkStack.DispatchReplyMessage(replyMessage);
        }
Example #7
0
        public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state,
                                         ITransportHeaders headers, Stream stream)
        {
            // client side formatter is the last sink in the chain accessing the serialised message, therefore this method is called on the return path
            AsyncProcessingData asyncData  = (AsyncProcessingData)state; // retrieve the request msg stored on the channelSinkStack
            IMessage            requestMsg = asyncData.RequestMsg;

            try {
                IMessage responseMsg;
                try {
                    GiopClientConnectionDesc conDesc = (GiopClientConnectionDesc)asyncData.ConDesc;
                    responseMsg = DeserialiseResponse(stream, headers,
                                                      requestMsg, conDesc);
                } finally {
                    m_conManager.RequestOnConnectionCompleted(requestMsg); // release the connection, because this interaction is complete
                }
                sinkStack.DispatchReplyMessage(responseMsg);               // dispatch the result message to the message handling reply sink chain
            } catch (Exception e) {
                sinkStack.DispatchException(e);                            // dispatch the exception to the message handling reply sink chain
            }
        }
Example #8
0
        public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders responseHeaders, Stream responseStream)
        {
            // parameters validation
            if (sinkStack == null)
            {
                throw new ArgumentNullException("sinkStack");
            }
            if (responseHeaders == null)
            {
                throw new ArgumentNullException("responseHeaders");
            }
            if (responseStream == null)
            {
                throw new ArgumentNullException("responseStream");
            }

            IMethodCallMessage methodCall = state as IMethodCallMessage;

            if (methodCall == null)
            {
                throw new NotSupportedException();
            }

            IMethodReturnMessage methodReturn;

            try
            {
                // deserialize response
                methodReturn = _formatter.DeserializeResponse(methodCall, responseHeaders, responseStream);
                responseStream.Close();
            }
            catch (Exception ex)
            {
                methodReturn = new ReturnMessage(ex, methodCall);
            }

            // dispatch response
            sinkStack.DispatchReplyMessage(methodReturn);
        }
 public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, Object state,
                                  ITransportHeaders headers, Stream stream)
 {
     // previously we stored the outgoing message in state
     IMethodCallMessage mcm = (IMethodCallMessage)state;  
     IMessage retMsg = DeserializeMessage(mcm, headers, stream);
     sinkStack.DispatchReplyMessage(retMsg);
 } // AsyncProcessRequest
		public void AsyncProcessResponse (IClientResponseChannelSinkStack sinkStack,
						  object state,
						  ITransportHeaders headers,
						  Stream stream)
		{
			IMessage replyMessage = (IMessage)_binaryCore.Deserializer.DeserializeMethodResponse (stream, null, (IMethodCallMessage)state);
			sinkStack.DispatchReplyMessage (replyMessage);
		}
 public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack
     , object state
     , ITransportHeaders headers
     , Stream stream)
 {
     var methodCallMessage = (IMethodCallMessage)state;
     var responseMessage = DeserializeResponseMessage(methodCallMessage, headers, stream);
     sinkStack.DispatchReplyMessage(responseMessage);
 }
		public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders responseHeaders, Stream responseStream)
		{
			// parameters validation
			if (sinkStack == null)
				throw new ArgumentNullException("sinkStack");
			if (responseHeaders == null)
				throw new ArgumentNullException("responseHeaders");
			if (responseStream == null)
				throw new ArgumentNullException("responseStream");

			IMethodCallMessage methodCall = state as IMethodCallMessage;
			if (methodCall == null)
				throw new NotSupportedException();

			IMethodReturnMessage methodReturn;
			try
			{
				// deserialize response
				methodReturn = _formatter.DeserializeResponse(methodCall, responseHeaders, responseStream);
				responseStream.Close();
			}
			catch (Exception ex)
			{
				methodReturn = new ReturnMessage(ex, methodCall);
			}

			// dispatch response
			sinkStack.DispatchReplyMessage(methodReturn);
		}
Example #13
0
    public void AsyncProcessResponse (IClientResponseChannelSinkStack sinkStack,
                                      object state,
                                      ITransportHeaders headers,
                                      Stream stream)
    {
      IMessage reqMessage = (IMessage) state;
      IMessage replyMessage = (IMessage) IceChannelUtils.ProtocolReplyToMessage (stream, reqMessage);
      stream.Close();

      sinkStack.DispatchReplyMessage (replyMessage);
    }
Example #14
0
		public void AsyncProcessResponse (IClientResponseChannelSinkStack sinkStack,
						  object state,
						  ITransportHeaders headers,
						  Stream stream)
		{
			CallData data = (CallData) state;
			SoapMessageFormatter soapMsgFormatter = data.Formatter;
			IMessage replyMessage = (IMessage) DeserializeMessage (
				stream, headers, (IMethodCallMessage) data.Msg,
				soapMsgFormatter);
			sinkStack.DispatchReplyMessage (replyMessage);
			
		}
 public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state, ITransportHeaders headers, Stream stream)
 {
     IMethodCallMessage mcm = (IMethodCallMessage) state;
     IMessage msg = this.DeserializeMessage(mcm, headers, stream);
     sinkStack.DispatchReplyMessage(msg);
 }
 public void AsyncProcessResponse(IClientResponseChannelSinkStack sinkStack, object state,
                                  ITransportHeaders headers, Stream stream) {
     // client side formatter is the last sink in the chain accessing the serialised message, therefore this method is called on the return path
     AsyncProcessingData asyncData = (AsyncProcessingData) state; // retrieve the request msg stored on the channelSinkStack
     IMessage requestMsg = asyncData.RequestMsg;
     try {
         IMessage responseMsg;
         try {
             GiopClientConnectionDesc conDesc = (GiopClientConnectionDesc)asyncData.ConDesc;
             responseMsg = DeserialiseResponse(stream, headers,
                                               requestMsg, conDesc);
         } finally {
             m_conManager.RequestOnConnectionCompleted(requestMsg); // release the connection, because this interaction is complete
         }
         sinkStack.DispatchReplyMessage(responseMsg); // dispatch the result message to the message handling reply sink chain
     } catch (Exception e) {
         sinkStack.DispatchException(e); // dispatch the exception to the message handling reply sink chain
     }
 }