internal HttpWebRequestMessage(Uri requestUri, string httpMethod, RequestInfo requestInfo) { this.requestUrl = requestUri; this.httpMethod = httpMethod; this.requestInfo = requestInfo; this.httpRequest = CreateRequest(httpMethod, requestUri, requestInfo); }
private static System.Net.HttpWebRequest CreateRequest(string method, Uri requestUrl, RequestInfo requestInfo) { System.Net.HttpWebRequest request = (System.Net.HttpWebRequest) WebRequest.Create(requestUrl); if (requestInfo.Credentials != null) { request.Credentials = requestInfo.Credentials; } if (requestInfo.Timeout != 0) { TimeSpan span = new TimeSpan(0, 0, requestInfo.Timeout); request.Timeout = (int) Math.Min(2147483647.0, span.TotalMilliseconds); } request.KeepAlive = true; request.UserAgent = "Microsoft ADO.NET Data Services"; if (((string.CompareOrdinal("GET", method) != 0) && requestInfo.UsePostTunneling) && (string.CompareOrdinal("POST", method) != 0)) { request.Headers["X-HTTP-Method"] = method; method = "POST"; } request.Method = method; request.Headers[HttpRequestHeader.AcceptCharset] = "UTF-8"; return request; }
internal static ODataRequestMessageWrapper CreateBatchPartRequestMessage(ODataBatchWriter batchWriter, string method, Uri requestUrl, RequestInfo requestInfo) { return new ODataRequestMessageWrapper(batchWriter.CreateOperationRequestMessage(method, requestUrl), requestInfo) { IsBatchPartRequest = true }; }
internal ODataRequestMessageWrapper(string httpMethod, Uri requestUrl, RequestInfo requestInfo) { this.requestMessage = new HttpWebRequestMessage(requestUrl, httpMethod, requestInfo); this.requestInfo = requestInfo; this.IsBatchPartRequest = false; }
private ODataRequestMessageWrapper(IODataRequestMessage message, RequestInfo requestInfo) { this.requestMessage = message; this.requestInfo = requestInfo; }
internal static ODataMessageWriter CreateMessageWriter(ODataRequestMessageWrapper requestMessage, RequestInfo requestInfo) { ODataMessageWriterSettings writerSettings = new ODataMessageWriterSettings { CheckCharacters = false, Indent = false, DisableMessageStreamDisposal = !requestMessage.IsBatchPartRequest }; if (requestInfo.HasWritingEventHandlers) { writerSettings.EnableWcfDataServicesClientBehavior(new Func<ODataEntry, XmlWriter, XmlWriter>(Serializer.StartEntryXmlCustomizer), new Action<ODataEntry, XmlWriter, XmlWriter>(Serializer.EndEntryXmlCustomizer), requestInfo.DataNamespace, requestInfo.TypeScheme.AbsoluteUri); } else { writerSettings.EnableWcfDataServicesClientBehavior(null, null, requestInfo.DataNamespace, requestInfo.TypeScheme.AbsoluteUri); } return requestMessage.CreateWriter(writerSettings); }
internal Serializer(RequestInfo requestInfo) { this.requestInfo = requestInfo; }
/// <summary>constructor</summary> /// <param name="source">source object of async request</param> /// <param name="method">async method name on source object</param> /// <param name="serviceRequest">Originating serviceRequest</param> /// <param name="request">Originating WebRequest</param> /// <param name="requestInfo">The request info of the originating request.</param> /// <param name="callback">user callback</param> /// <param name="state">user state</param> internal QueryResult(object source, string method, DataServiceRequest serviceRequest, ODataRequestMessageWrapper request, RequestInfo requestInfo, AsyncCallback callback, object state) : base(source, method, callback, state) { Debug.Assert(null != request, "null request"); this.ServiceRequest = serviceRequest; this.Request = request; this.RequestInfo = requestInfo; this.Abortable = request; }
/// <summary>constructor</summary> /// <param name="source">source object of async request</param> /// <param name="method">async method name on source object</param> /// <param name="serviceRequest">Originating serviceRequest</param> /// <param name="request">Originating WebRequest</param> /// <param name="requestInfo">The request info of the originating request.</param> /// <param name="callback">user callback</param> /// <param name="state">user state</param> /// <param name="requestContentStream">the stream containing the request data.</param> internal QueryResult(object source, string method, DataServiceRequest serviceRequest, ODataRequestMessageWrapper request, RequestInfo requestInfo, AsyncCallback callback, object state, ContentStream requestContentStream) : this(source, method, serviceRequest, request, requestInfo, callback, state) { Debug.Assert(null != requestContentStream, "null requestContentStream"); this.requestContentStream = requestContentStream; }
internal static ODataRequestMessageWrapper CreateBatchPartRequestMessage(ODataBatchWriter batchWriter, string method, Uri requestUrl, RequestInfo requestInfo) { return(new ODataRequestMessageWrapper(batchWriter.CreateOperationRequestMessage(method, requestUrl), requestInfo) { IsBatchPartRequest = true }); }