azure-core
Public Member Functions | List of all members
Azure::Core::Http::RawResponse Class Referencefinal

After receiving and interpreting a request message, a server responds with an HTTP response message.

#include <raw_response.hpp>

Public Member Functions

 RawResponse (int32_t majorVersion, int32_t minorVersion, HttpStatusCode statusCode, std::string const &reasonPhrase)
 Constructs RawResponse. More...
 
 RawResponse (RawResponse const &response)
 Constructs RawResponse from another. More...
 
 RawResponse (RawResponse &&response)=default
 Constructs RawResponse by moving in another instance. More...
 
RawResponseoperator= (RawResponse const &)=delete
 RawResponse cannot be assigned. More...
 
RawResponseoperator= (RawResponse &&)=delete
 RawResponse cannot be moved into. More...
 
 ~RawResponse ()=default
 Destructs RawResponse. More...
 
void SetHeader (std::string const &name, std::string const &value)
 Set an HTTP header to the #RawResponse. More...
 
void SetBodyStream (std::unique_ptr< Azure::Core::IO::BodyStream > stream)
 Set Azure::Core::IO::BodyStream for this HTTP response. More...
 
void SetBody (std::vector< uint8_t > body)
 Set HTTP response body for this HTTP response. More...
 
HttpStatusCode GetStatusCode () const
 Get HTTP status code of the HTTP response. More...
 
std::string const & GetReasonPhrase () const
 Get HTTP reason phrase code of the HTTP response. More...
 
CaseInsensitiveMap const & GetHeaders () const
 Get HTTP response headers. More...
 
std::unique_ptr< Azure::Core::IO::BodyStreamExtractBodyStream ()
 Get HTTP response body as Azure::Core::IO::BodyStream. More...
 
std::vector< uint8_t > & GetBody ()
 Get HTTP response body as vector of bytes. More...
 
std::vector< uint8_t > const & GetBody () const
 Get HTTP response body as vector of bytes. More...
 

Constructor & Destructor Documentation

◆ RawResponse() [1/3]

Azure::Core::Http::RawResponse::RawResponse ( int32_t  majorVersion,
int32_t  minorVersion,
HttpStatusCode  statusCode,
std::string const &  reasonPhrase 
)
inlineexplicit
Parameters
majorVersionHTTP protocol version major number.
minorVersionHTTP protocol version minor number.
statusCodeHTTP status code.
reasonPhraseHTTP reason phrase.

◆ RawResponse() [2/3]

Azure::Core::Http::RawResponse::RawResponse ( RawResponse const &  response)
inline
Remarks
The body stream won't be copied.
Parameters
responseA reference for copying the raw response.

◆ RawResponse() [3/3]

Azure::Core::Http::RawResponse::RawResponse ( RawResponse &&  response)
default
Parameters
responseAnother RawResponse to move in.

◆ ~RawResponse()

Azure::Core::Http::RawResponse::~RawResponse ( )
default

Member Function Documentation

◆ ExtractBodyStream()

std::unique_ptr<Azure::Core::IO::BodyStream> Azure::Core::Http::RawResponse::ExtractBodyStream ( )
inline

◆ GetBody() [1/2]

std::vector<uint8_t>& Azure::Core::Http::RawResponse::GetBody ( )
inline

◆ GetBody() [2/2]

std::vector<uint8_t> const& Azure::Core::Http::RawResponse::GetBody ( ) const
inline

◆ GetHeaders()

Azure::Core::CaseInsensitiveMap const & RawResponse::GetHeaders ( ) const

◆ GetReasonPhrase()

std::string const & RawResponse::GetReasonPhrase ( ) const

◆ GetStatusCode()

HttpStatusCode RawResponse::GetStatusCode ( ) const

◆ operator=() [1/2]

RawResponse& Azure::Core::Http::RawResponse::operator= ( RawResponse &&  )
delete

◆ operator=() [2/2]

RawResponse& Azure::Core::Http::RawResponse::operator= ( RawResponse const &  )
delete

◆ SetBody()

void Azure::Core::Http::RawResponse::SetBody ( std::vector< uint8_t >  body)
inline
Parameters
bodyHTTP response body bytes.

◆ SetBodyStream()

void RawResponse::SetBodyStream ( std::unique_ptr< Azure::Core::IO::BodyStream stream)
Parameters
streamAzure::Core::IO::BodyStream.

◆ SetHeader()

void RawResponse::SetHeader ( std::string const &  name,
std::string const &  value 
)
Remarks
The name must contain valid header name characters (RFC 7230).
Parameters
nameThe name for the header to be set or added.
valueThe value for the header to be set or added.
Exceptions
ifname contains invalid characters.

The documentation for this class was generated from the following files: