コード例 #1
0
        public IMethodCallMessage DeserializeRequest(ITransportHeaders requestHeaders, Stream requestStream)
        {
            string           uri   = (string)requestHeaders["__RequestUri"];
            UriHeaderHandler uriHH = new UriHeaderHandler(uri);

            return((IMethodCallMessage)_deserializer.Deserialize(requestStream, new HeaderHandler(uriHH.HeaderHandler)));
        }
コード例 #2
0
		public IMethodCallMessage DeserializeRequest(ITransportHeaders requestHeaders, Stream requestStream)
		{
			string uri = (string)requestHeaders["__RequestUri"];
			UriHeaderHandler uriHH = new UriHeaderHandler(uri);

			return (IMethodCallMessage)_deserializer.Deserialize(requestStream, new HeaderHandler(uriHH.HeaderHandler));
		}
コード例 #3
0
        internal static IMessage DeserializeBinaryRequestMessage(string objectUri, Stream inputStream, bool bStrictBinding, TypeFilterLevel securityLevel)
        {
            BinaryFormatter formatter = CreateBinaryFormatter(false, bStrictBinding);

            formatter.FilterLevel = securityLevel;
            UriHeaderHandler handler = new UriHeaderHandler(objectUri);

            return((IMessage)formatter.UnsafeDeserialize(inputStream, new HeaderHandler(handler.HeaderHandler)));
        }
コード例 #4
0
ファイル: corechannel.cs プロジェクト: SSCLI/sscli_20021101
        } // DeserializeSoapResponseMessage

        internal static IMessage DeserializeBinaryRequestMessage(
            String objectUri,
            Stream inputStream,
            bool bStrictBinding)
        {
            BinaryFormatter fmt = CreateBinaryFormatter(false, bStrictBinding);

            UriHeaderHandler uriHH = new UriHeaderHandler(objectUri);

            IMessage reqMsg =
                (IMessage)fmt.Deserialize(inputStream, new HeaderHandler(uriHH.HeaderHandler));

            return(reqMsg);
        } // DeserializeBinaryRequestMessage
コード例 #5
0
        /// <summary>
        /// Constructor: Deserialises the information and recreates the instance.
        /// </summary>
        /// <param name="info">Standard <c>SerializationInfo</c> object</param>
        /// <param name="ctxt">Standard <c>StreamingContext</c> object</param>
        public StackHeader(SerializationInfo info, StreamingContext ctxt)
        {
            objectUri = info.GetString("objectUri");
            source    = (Address)info.GetValue("source", typeof(object));

            type = info.GetInt32("type");
            MemoryStream ms = (MemoryStream)info.GetValue("stream", typeof(object));

            if (type == REMOTE_RSP)
            {
                stream = ms;
            }
            else if (type == REMOTE_REQ)
            {
                ms.Position = 0;
                BinaryFormatter fmt = new BinaryFormatter();
                fmt.AssemblyFormat = FormatterAssemblyStyle.Full;
                UriHeaderHandler uriHH  = new UriHeaderHandler(objectUri);
                IMessage         reqMsg = (IMessage)fmt.Deserialize(ms, new HeaderHandler(uriHH.HeaderHandler));
                msg = reqMsg;
            }
        }
コード例 #6
0
        } // DeserializeSoapResponseMessage


        internal static IMessage DeserializeBinaryRequestMessage(
            String objectUri, 
            Stream inputStream,
            bool bStrictBinding,
            TypeFilterLevel securityLevel)
        {
            BinaryFormatter fmt = CreateBinaryFormatter(false, bStrictBinding);
            fmt.FilterLevel = securityLevel; 

            UriHeaderHandler uriHH = new UriHeaderHandler(objectUri);

            IMessage reqMsg = 
                (IMessage)fmt.UnsafeDeserialize(inputStream, new HeaderHandler(uriHH.HeaderHandler));

            return reqMsg;
        } // DeserializeBinaryRequestMessage
コード例 #7
0
 internal static IMessage DeserializeBinaryRequestMessage(string objectUri, Stream inputStream, bool bStrictBinding, TypeFilterLevel securityLevel)
 {
     BinaryFormatter formatter = CreateBinaryFormatter(false, bStrictBinding);
     formatter.FilterLevel = securityLevel;
     UriHeaderHandler handler = new UriHeaderHandler(objectUri);
     return (IMessage) formatter.UnsafeDeserialize(inputStream, new HeaderHandler(handler.HeaderHandler));
 }
コード例 #8
0
ファイル: StackHeader.cs プロジェクト: curasystems/externals
        /// <summary>
        /// Constructor: Deserialises the information and recreates the instance.
        /// </summary>
        /// <param name="info">Standard <c>SerializationInfo</c> object</param>
        /// <param name="ctxt">Standard <c>StreamingContext</c> object</param>
        public StackHeader(SerializationInfo info, StreamingContext ctxt)
        {
            objectUri = info.GetString("objectUri");
            source = (Address)info.GetValue("source", typeof(object));

            type = info.GetInt32("type");
            MemoryStream ms = (MemoryStream)info.GetValue("stream", typeof(object));

            if(type == REMOTE_RSP)
            {
                stream = ms;
            }
            else if(type == REMOTE_REQ)
            {
                ms.Position = 0;
                BinaryFormatter fmt = new BinaryFormatter();
                fmt.AssemblyFormat = FormatterAssemblyStyle.Full;
                UriHeaderHandler uriHH = new UriHeaderHandler(objectUri);
                IMessage reqMsg = (IMessage)fmt.Deserialize(ms, new HeaderHandler(uriHH.HeaderHandler));
                msg = reqMsg;
            }
        }