Inherits System::Object.

Inherited by System::Net::FileWebRequest, System::Net::FtpWebRequest, and System::Net::HttpWebRequest.

Classes

class  HttpRequestCreator
 
class  WebRequestPrefixElement
 

Public Member Functions

virtual String get_Method ()=0
 
virtual void set_Method (String value)=0
 
virtual System::SharedPtr< Uriget_RequestUri ()=0
 
virtual System::SharedPtr< WebHeaderCollectionget_Headers ()=0
 
virtual void set_Headers (System::SharedPtr< WebHeaderCollection > value)=0
 
virtual String get_ContentType ()=0
 
virtual void set_ContentType (String value)=0
 
virtual System::SharedPtr< ICredentialsget_Credentials ()
 
virtual void set_Credentials (System::SharedPtr< ICredentials > value)
 
virtual bool get_UseDefaultCredentials ()
 
virtual void set_UseDefaultCredentials (bool value)
 
virtual System::SharedPtr< IWebProxyget_Proxy ()
 
virtual void set_Proxy (System::SharedPtr< IWebProxy > value)
 
virtual System::SharedPtr< IAsyncResultBeginGetResponse (AsyncCallback callback, System::SharedPtr< Object > state)=0
 
virtual System::SharedPtr< WebResponseEndGetResponse (System::SharedPtr< IAsyncResult > asyncResult)=0
 
virtual System::SharedPtr< IAsyncResultBeginGetRequestStream (AsyncCallback callback, System::SharedPtr< Object > state)=0
 
virtual System::SharedPtr< IO::StreamEndGetRequestStream (System::SharedPtr< IAsyncResult > asyncResult)=0
 
virtual void Abort ()=0
 Aborts the current request. More...
 
virtual ASPOSECPP_SHARED_API int64_t get_ContentLength ()
 
virtual ASPOSECPP_SHARED_API void set_ContentLength (int64_t value)
 
virtual ASPOSECPP_SHARED_API System::SharedPtr< System::Net::Cache::RequestCachePolicyget_CachePolicy ()
 
virtual ASPOSECPP_SHARED_API void set_CachePolicy (System::SharedPtr< System::Net::Cache::RequestCachePolicy > value)
 
virtual ASPOSECPP_SHARED_API System::String get_ConnectionGroupName ()
 
virtual ASPOSECPP_SHARED_API void set_ConnectionGroupName (System::String value)
 
virtual ASPOSECPP_SHARED_API bool get_PreAuthenticate ()
 
virtual ASPOSECPP_SHARED_API void set_PreAuthenticate (bool value)
 
virtual ASPOSECPP_SHARED_API int32_t get_Timeout ()
 
virtual ASPOSECPP_SHARED_API void set_Timeout (int32_t timeout)
 
virtual ASPOSECPP_SHARED_API System::SharedPtr< WebResponseGetResponse ()
 
virtual ASPOSECPP_SHARED_API System::SharedPtr< System::IO::StreamGetRequestStream ()
 
- Public Member Functions inherited from System::Object
ASPOSECPP_SHARED_API Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ASPOSECPP_SHARED_API ~Object ()
 Destroys object. Frees all internal data structures. More...
 
ASPOSECPP_SHARED_API Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared reference counter. More...
 
ASPOSECPP_SHARED_API void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
ASPOSECPP_SHARED_API void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual ASPOSECPP_SHARED_API bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual ASPOSECPP_SHARED_API int32_t GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual ASPOSECPP_SHARED_API String ToString () const
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ASPOSECPP_SHARED_API ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual ASPOSECPP_SHARED_API const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual ASPOSECPP_SHARED_API bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual ASPOSECPP_SHARED_API void SetTemplateWeakPtr (uint32_t argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
virtual ASPOSECPP_SHARED_API bool FastCast (const Details::FastRttiBase &helper, void **out_ptr) const
 For internal purposes only. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Static Public Member Functions

static System::SharedPtr< Collections::Generic::List< System::SharedPtr< WebRequest::WebRequestPrefixElement > > > get_PrefixList ()
 
static void set_PrefixList (System::SharedPtr< Collections::Generic::List< System::SharedPtr< WebRequest::WebRequestPrefixElement >>> value)
 
static System::SharedPtr< IWebProxyget_DefaultWebProxy ()
 
static void set_DefaultWebProxy (System::SharedPtr< IWebProxy > value)
 
static ASPOSECPP_SHARED_API System::SharedPtr< WebRequestCreate (String requestUriString)
 
static ASPOSECPP_SHARED_API System::SharedPtr< WebRequestCreate (System::SharedPtr< Uri > requestUri)
 
static System::SharedPtr< WebRequestCreateDefault (System::SharedPtr< Uri > requestUri)
 
static System::SharedPtr< HttpWebRequestCreateHttp (String requestUriString)
 
static System::SharedPtr< HttpWebRequestCreateHttp (System::SharedPtr< Uri > requestUri)
 
static bool RegisterPrefix (String prefix, System::SharedPtr< IWebRequestCreate > creator)
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Implements C# typeof(System.Object) construct. More...
 

Protected Member Functions

ASPOSECPP_SHARED_API WebRequest ()
 Constructs a new instance. More...
 

Additional Inherited Members

- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 

Detailed Description

Represents a web request. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

Constructor & Destructor Documentation

◆ WebRequest()

ASPOSECPP_SHARED_API System::Net::WebRequest::WebRequest ( )
protected

Constructs a new instance.

Member Function Documentation

◆ Abort()

virtual void System::Net::WebRequest::Abort ( )
pure virtual

Aborts the current request.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ BeginGetRequestStream()

virtual System::SharedPtr<IAsyncResult> System::Net::WebRequest::BeginGetRequestStream ( AsyncCallback  callback,
System::SharedPtr< Object state 
)
pure virtual

Initiates an asynchronous operation to get a stream for writing data to the resource.

Parameters
callbackA callback to be called when the operation completes.
stateUser-provided data used to uniquely identify each asynchronous operation.
Returns
An IAsyncResult object representing the initiated asynchronous operation.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ BeginGetResponse()

virtual System::SharedPtr<IAsyncResult> System::Net::WebRequest::BeginGetResponse ( AsyncCallback  callback,
System::SharedPtr< Object state 
)
pure virtual

Initiates an asynchronous request for the resource.

Parameters
callbackA callback to be called when the operation completes.
stateUser-provided data used to uniquely identify each asynchronous operation.
Returns
An IAsyncResult object representing the initiated asynchronous operation.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ Create() [1/2]

static ASPOSECPP_SHARED_API System::SharedPtr<WebRequest> System::Net::WebRequest::Create ( String  requestUriString)
static

Creates a new instance of the WebRequest class using the specified URI.

Parameters
requestUriStringThe URI that is used to create a new instance of the WebRequest class.
Returns
A newly created WebRequest-class instance.

◆ Create() [2/2]

static ASPOSECPP_SHARED_API System::SharedPtr<WebRequest> System::Net::WebRequest::Create ( System::SharedPtr< Uri requestUri)
static

Creates a new instance of the WebRequest class using the specified URI.

Parameters
requestUriThe URI that is used to create a new instance of the WebRequest class.
Returns
A newly created WebRequest-class instance.

◆ CreateDefault()

static System::SharedPtr<WebRequest> System::Net::WebRequest::CreateDefault ( System::SharedPtr< Uri requestUri)
static

Creates a WebRequest descendant for the specified URI scheme.

Parameters
requestUriThe URI that is used to create a new instance of the WebRequest class.
Returns
A newly created WebRequest-class instance.

◆ CreateHttp() [1/2]

static System::SharedPtr<HttpWebRequest> System::Net::WebRequest::CreateHttp ( String  requestUriString)
static

Creates a new instance of the WebRequest class using the specified URI.

Parameters
requestUriStringThe URI that is used to create a new instance of the WebRequest class.
Returns
A newly created WebRequest-class instance.
Remarks
NotSupportedException will be thrown when the specified URI begins with any scheme except for http:// or https://.

◆ CreateHttp() [2/2]

static System::SharedPtr<HttpWebRequest> System::Net::WebRequest::CreateHttp ( System::SharedPtr< Uri requestUri)
static

Creates a new instance of the WebRequest class using the specified URI.

Parameters
requestUriThe URI that is used to create a new instance of the WebRequest class.
Returns
A newly created WebRequest-class instance.
Remarks
NotSupportedException will be thrown when the specified URI begins with any scheme except for http:// or https://.

◆ EndGetRequestStream()

virtual System::SharedPtr<IO::Stream> System::Net::WebRequest::EndGetRequestStream ( System::SharedPtr< IAsyncResult asyncResult)
pure virtual

Waits until the specified asynchronous operation to get a stream completes.

Parameters
asyncResultAn IAsyncResult object that represents an asynchronous operation to get a stream.
Returns
The stream for writing data to the resource.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ EndGetResponse()

virtual System::SharedPtr<WebResponse> System::Net::WebRequest::EndGetResponse ( System::SharedPtr< IAsyncResult asyncResult)
pure virtual

Waits until the specified asynchronous request for the resource completes.

Parameters
asyncResultAn IAsyncResult object that represents an asynchronous request for the resource.
Returns
The web response.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ get_CachePolicy()

virtual ASPOSECPP_SHARED_API System::SharedPtr<System::Net::Cache::RequestCachePolicy> System::Net::WebRequest::get_CachePolicy ( )
virtual

Gets the cache policy.

Returns
The cache policy.

◆ get_ConnectionGroupName()

virtual ASPOSECPP_SHARED_API System::String System::Net::WebRequest::get_ConnectionGroupName ( )
virtual

Gets the name of the connection group.

Returns
The name of the connection group.

Reimplemented in System::Net::HttpWebRequest.

◆ get_ContentLength()

virtual ASPOSECPP_SHARED_API int64_t System::Net::WebRequest::get_ContentLength ( )
virtual

Gets the number of bytes of the request data to sent.

Returns
The number of bytes of the request data to sent.

Reimplemented in System::Net::HttpWebRequest.

◆ get_ContentType()

virtual String System::Net::WebRequest::get_ContentType ( )
pure virtual

Gets the MIME type of the request.

Returns
The MIME type of the request.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ get_Credentials()

virtual System::SharedPtr<ICredentials> System::Net::WebRequest::get_Credentials ( )
virtual

Gets authentication information that is associated with the current request.

Returns
Authentication information that is associated with the current request.

Reimplemented in System::Net::HttpWebRequest.

◆ get_DefaultWebProxy()

static System::SharedPtr<IWebProxy> System::Net::WebRequest::get_DefaultWebProxy ( )
static

Gets the global HTTP proxy.

Returns
The global HTTP proxy.

◆ get_Headers()

virtual System::SharedPtr<WebHeaderCollection> System::Net::WebRequest::get_Headers ( )
pure virtual

Gets the collection of the HTTP headers.

Returns
The collection of the HTTP headers.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ get_Method()

virtual String System::Net::WebRequest::get_Method ( )
pure virtual

Gets the HTTP method.

Returns
The HTTP method.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ get_PreAuthenticate()

virtual ASPOSECPP_SHARED_API bool System::Net::WebRequest::get_PreAuthenticate ( )
virtual

Gets a value that indicates if the request must be pre-authenticated.

Returns
A value that indicates if the request must be pre-authenticated.

Reimplemented in System::Net::HttpWebRequest.

◆ get_PrefixList()

static System::SharedPtr<Collections::Generic::List<System::SharedPtr<WebRequest::WebRequestPrefixElement> > > System::Net::WebRequest::get_PrefixList ( )
static

Gets the prefix list.

Returns
The prefix list.

◆ get_Proxy()

virtual System::SharedPtr<IWebProxy> System::Net::WebRequest::get_Proxy ( )
virtual

Gets the HTTP proxy.

Returns
The HTTP proxy.

Reimplemented in System::Net::HttpWebRequest.

◆ get_RequestUri()

virtual System::SharedPtr<Uri> System::Net::WebRequest::get_RequestUri ( )
pure virtual

Returns the request URI.

Returns
The request URI.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ get_Timeout()

virtual ASPOSECPP_SHARED_API int32_t System::Net::WebRequest::get_Timeout ( )
virtual

Gets an amount of time in milliseconds after which the request will be timed out.

Returns
An amount of time in milliseconds after which the request will be timed out.

Reimplemented in System::Net::HttpWebRequest.

◆ get_UseDefaultCredentials()

virtual bool System::Net::WebRequest::get_UseDefaultCredentials ( )
virtual

Gets a value that indicates if the 'Credential' property is equal to the 'DefaultCredentials' property.

Returns
The value that indicates if the 'Credential' property is equal to the 'DefaultCredentials' property.
Exceptions
System::NotImplementedException

Reimplemented in System::Net::HttpWebRequest.

◆ GetRequestStream()

virtual ASPOSECPP_SHARED_API System::SharedPtr<System::IO::Stream> System::Net::WebRequest::GetRequestStream ( )
virtual

Returns the stream for writing data to the resource.

Returns
The stream for writing data to the resource.

Reimplemented in System::Net::HttpWebRequest.

◆ GetResponse()

virtual ASPOSECPP_SHARED_API System::SharedPtr<WebResponse> System::Net::WebRequest::GetResponse ( )
virtual

Returns the web response associated with the current web request.

Returns
The web response associated with the current web request.

Reimplemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ RegisterPrefix()

static bool System::Net::WebRequest::RegisterPrefix ( String  prefix,
System::SharedPtr< IWebRequestCreate creator 
)
static

Registers the WebRequest descendant for the specified URI.

Parameters
prefixThe URI or the URI prefix.
creatorCreates new instances of the WebRequest class.
Returns
True when the WebRequest descendant is successfully registered for the specified URI, otherwise false.

◆ set_CachePolicy()

virtual ASPOSECPP_SHARED_API void System::Net::WebRequest::set_CachePolicy ( System::SharedPtr< System::Net::Cache::RequestCachePolicy value)
virtual

Sets the cache policy.

Parameters
valueThe cache policy to set.

◆ set_ConnectionGroupName()

virtual ASPOSECPP_SHARED_API void System::Net::WebRequest::set_ConnectionGroupName ( System::String  value)
virtual

Sets the name of the connection group.

Parameters
valueThe name of the connection group to set.

Reimplemented in System::Net::HttpWebRequest.

◆ set_ContentLength()

virtual ASPOSECPP_SHARED_API void System::Net::WebRequest::set_ContentLength ( int64_t  value)
virtual

Sets the number of bytes of the request data to sent.

Parameters
valueThe number of bytes to set.

Reimplemented in System::Net::HttpWebRequest.

◆ set_ContentType()

virtual void System::Net::WebRequest::set_ContentType ( String  value)
pure virtual

Sets the MIME type of the request.

Parameters
valueThe MIME type to set.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ set_Credentials()

virtual void System::Net::WebRequest::set_Credentials ( System::SharedPtr< ICredentials value)
virtual

Sets authentication information that is associated with the current request.

Parameters
valueAuthentication information to set.

Reimplemented in System::Net::HttpWebRequest.

◆ set_DefaultWebProxy()

static void System::Net::WebRequest::set_DefaultWebProxy ( System::SharedPtr< IWebProxy value)
static

Sets the global HTTP proxy.

Parameters
valueThe proxy to set.

◆ set_Headers()

virtual void System::Net::WebRequest::set_Headers ( System::SharedPtr< WebHeaderCollection value)
pure virtual

Sets the collection of the HTTP headers.

Parameters
valueThe collection of the HTTP headers to set.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ set_Method()

virtual void System::Net::WebRequest::set_Method ( String  value)
pure virtual

Sets the HTTP method.

Parameters
valueThe HTTP method to set.

Implemented in System::Net::HttpWebRequest, and System::Net::FileWebRequest.

◆ set_PreAuthenticate()

virtual ASPOSECPP_SHARED_API void System::Net::WebRequest::set_PreAuthenticate ( bool  value)
virtual

Sets a value that indicates if the request must be pre-authenticated.

Parameters
valueA value to set.

Reimplemented in System::Net::HttpWebRequest.

◆ set_PrefixList()

static void System::Net::WebRequest::set_PrefixList ( System::SharedPtr< Collections::Generic::List< System::SharedPtr< WebRequest::WebRequestPrefixElement >>>  value)
static

Sets the prefix list.

Parameters
valueThe prefix list to set.

◆ set_Proxy()

virtual void System::Net::WebRequest::set_Proxy ( System::SharedPtr< IWebProxy value)
virtual

Sets the HTTP proxy.

Parameters
valueThe proxy to set.

Reimplemented in System::Net::HttpWebRequest.

◆ set_Timeout()

virtual ASPOSECPP_SHARED_API void System::Net::WebRequest::set_Timeout ( int32_t  timeout)
virtual

Sets an amount of time in milliseconds after which the request will be timed out.

Parameters
timeoutA timeout to set.

◆ set_UseDefaultCredentials()

virtual void System::Net::WebRequest::set_UseDefaultCredentials ( bool  value)
virtual

Sets a value that indicates if the 'Credential' property is equal to the 'DefaultCredentials' property.

Parameters
valueA value to set.

Reimplemented in System::Net::HttpWebRequest.