SNode.C
Loading...
Searching...
No Matches
web::http::SocketContextUpgradeFactory< RequestT, ResponseT > Class Template Referenceabstract

#include <SocketContextUpgradeFactory.h>

Inheritance diagram for web::http::SocketContextUpgradeFactory< RequestT, ResponseT >:
Collaboration diagram for web::http::SocketContextUpgradeFactory< RequestT, ResponseT >:

Public Types

using Request = RequestT
 
using Response = ResponseT
 

Public Member Functions

virtual std::string name ()=0
 
- Public Member Functions inherited from core::socket::stream::SocketContextFactory
 SocketContextFactory (SocketContextFactory &)=delete
 
 SocketContextFactory (SocketContextFactory &&)=delete
 
SocketContextFactoryoperator= (SocketContextFactory &)=delete
 
SocketContextFactoryoperator= (SocketContextFactory &&)=delete
 

Protected Member Functions

 SocketContextUpgradeFactory ()=default
 
 ~SocketContextUpgradeFactory () override=default
 
void prepare (Request &request, Response &response)
 
- Protected Member Functions inherited from core::socket::stream::SocketContextFactory
 SocketContextFactory ()=default
 
virtual ~SocketContextFactory ()
 

Protected Attributes

std::size_t refCount = 0
 

Private Member Functions

virtual SocketContextUpgrade< Request, Response > * create (core::socket::stream::SocketConnection *socketConnection, Request *request, Response *response)=0
 
core::socket::stream::SocketContextcreate (core::socket::stream::SocketConnection *socketConnection) final
 
void incRefCount ()
 
void decRefCount ()
 
virtual void checkRefCount ()=0
 

Private Attributes

Requestrequest = nullptr
 
Responseresponse = nullptr
 
friend Response
 
friend Request
 

Friends

class SocketContextUpgrade< Request, Response >
 

Detailed Description

template<typename RequestT, typename ResponseT>
class web::http::SocketContextUpgradeFactory< RequestT, ResponseT >

Definition at line 32 of file SocketContextUpgrade.h.

Member Typedef Documentation

◆ Request

template<typename RequestT , typename ResponseT >
using web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::Request = RequestT

Definition at line 48 of file SocketContextUpgradeFactory.h.

◆ Response

template<typename RequestT , typename ResponseT >
using web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::Response = ResponseT

Definition at line 49 of file SocketContextUpgradeFactory.h.

Constructor & Destructor Documentation

◆ SocketContextUpgradeFactory()

template<typename RequestT , typename ResponseT >
web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::SocketContextUpgradeFactory ( )
protecteddefault

◆ ~SocketContextUpgradeFactory()

template<typename RequestT , typename ResponseT >
web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::~SocketContextUpgradeFactory ( )
overrideprotecteddefault

Member Function Documentation

◆ checkRefCount()

template<typename RequestT , typename ResponseT >
virtual void web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::checkRefCount ( )
privatepure virtual

Implemented in web::http::client::SocketContextUpgradeFactory, and web::http::server::SocketContextUpgradeFactory.

Referenced by web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::decRefCount().

Here is the caller graph for this function:

◆ create() [1/2]

template<typename Request , typename Response >
core::socket::stream::SocketContext * web::http::SocketContextUpgradeFactory< Request, Response >::create ( core::socket::stream::SocketConnection * socketConnection)
finalprivatevirtual

Implements core::socket::stream::SocketContextFactory.

Definition at line 36 of file SocketContextUpgradeFactory.hpp.

36 {
37 return create(socketConnection, request, response);
38 }
virtual SocketContextUpgrade< Request, Response > * create(core::socket::stream::SocketConnection *socketConnection, Request *request, Response *response)=0

References web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::request, and web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::response.

◆ create() [2/2]

template<typename RequestT , typename ResponseT >
virtual SocketContextUpgrade< Request, Response > * web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::create ( core::socket::stream::SocketConnection * socketConnection,
Request * request,
Response * response )
privatepure virtual

◆ decRefCount()

template<typename Request , typename Response >
void web::http::SocketContextUpgradeFactory< Request, Response >::decRefCount ( )
private

Definition at line 46 of file SocketContextUpgradeFactory.hpp.

References web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::checkRefCount(), and web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::refCount.

Here is the call graph for this function:

◆ incRefCount()

template<typename Request , typename Response >
void web::http::SocketContextUpgradeFactory< Request, Response >::incRefCount ( )
private

◆ name()

template<typename RequestT , typename ResponseT >
virtual std::string web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::name ( )
pure virtual

◆ prepare()

template<typename Request , typename Response >
void web::http::SocketContextUpgradeFactory< Request, Response >::prepare ( Request & request,
Response & response )
protected

Definition at line 29 of file SocketContextUpgradeFactory.hpp.

29 {
30 this->request = &request;
31 this->response = &response;
32 }

Friends And Related Symbol Documentation

◆ SocketContextUpgrade< Request, Response >

template<typename RequestT , typename ResponseT >
friend class SocketContextUpgrade< Request, Response >
friend

Definition at line 77 of file SocketContextUpgradeFactory.h.

Member Data Documentation

◆ refCount

template<typename RequestT , typename ResponseT >
std::size_t web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::refCount = 0
protected

◆ Request

template<typename RequestT , typename ResponseT >
friend web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::Request
private

Definition at line 77 of file SocketContextUpgradeFactory.h.

◆ request

template<typename RequestT , typename ResponseT >
Request* web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::request = nullptr
private

◆ Response

template<typename RequestT , typename ResponseT >
friend web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::Response
private

Definition at line 76 of file SocketContextUpgradeFactory.h.

◆ response

template<typename RequestT , typename ResponseT >
Response* web::http::SocketContextUpgradeFactory< RequestT, ResponseT >::response = nullptr
private

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