// Copyright © 2020 The CefSharp Authors. All rights reserved. // // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. //NOTE:Classes in the CefSharp.Core namespace have been hidden from intellisnse so users don't use them directly using System; namespace CefSharp { /// public class UrlRequest : IUrlRequest { private CefSharp.Core.UrlRequest urlRequest; /// /// Create a new URL request that is not associated with a specific browser or frame. /// Use instead if you want the /// request to have this association, in which case it may be handled differently. /// For requests originating from the browser process: It may be intercepted by the client via or . /// POST data may only contain only a single element of type PDE_TYPE_FILE or PDE_TYPE_BYTES. /// Uses the Global RequestContext /// /// request /// url request client public UrlRequest(IRequest request, IUrlRequestClient urlRequestClient) : this(request, urlRequestClient, null) { } /// /// Create a new URL request that is not associated with a specific browser or frame. /// Use instead if you want the /// request to have this association, in which case it may be handled differently. /// For requests originating from the browser process: It may be intercepted by the client via or . /// POST data may only contain only a single element of type PDE_TYPE_FILE or PDE_TYPE_BYTES. /// /// request /// url request client /// request context associated with this requets. public UrlRequest(IRequest request, IUrlRequestClient urlRequestClient, IRequestContext requestContext) { if (request == null) { throw new ArgumentNullException(nameof(request)); } if (urlRequestClient == null) { throw new ArgumentNullException(nameof(urlRequestClient)); } urlRequest = new CefSharp.Core.UrlRequest(request.UnWrap(), urlRequestClient, requestContext?.UnWrap()); } /// public bool ResponseWasCached { get { return urlRequest.ResponseWasCached; } } /// public IResponse Response { get { return urlRequest.Response; } } /// public UrlRequestStatus RequestStatus { get { return urlRequest.RequestStatus; } } /// public void Dispose() { urlRequest.Dispose(); } /// /// Create a new URL request that is not associated with a specific browser or frame. /// Use instead if you want the /// request to have this association, in which case it may be handled differently. /// For requests originating from the browser process: It may be intercepted by the client via or . /// POST data may only contain only a single element of type PDE_TYPE_FILE or PDE_TYPE_BYTES. /// Uses the Global RequestContext /// /// request /// url request client public IUrlRequest Create(IRequest request, IUrlRequestClient urlRequestClient) { return new CefSharp.Core.UrlRequest(request, urlRequestClient); } /// /// Create a new URL request that is not associated with a specific browser or frame. /// Use instead if you want the /// request to have this association, in which case it may be handled differently. /// For requests originating from the browser process: It may be intercepted by the client via or . /// POST data may only contain only a single element of type PDE_TYPE_FILE or PDE_TYPE_BYTES. /// /// request /// url request client /// request context associated with this requets. public IUrlRequest Create(IRequest request, IUrlRequestClient urlRequestClient, IRequestContext requestContext) { return new CefSharp.Core.UrlRequest(request, urlRequestClient, requestContext); } } }