Daraja HTTP Framework 3.2.1-SNAPSHOT
HTTP server framework for Object Pascal
Loading...
Searching...
No Matches
TdjServerBase Class Reference

Base server implementation providing core HTTP server functionality. More...

Inheritance diagram for TdjServerBase:
TdjHandlerWrapper IHandlerContainer TdjAbstractHandlerContainer TdjServer

Public Member Functions

 TdjServerBase ()
 Create a ServerBase instance.
 ~TdjServerBase ()
 Destructor.
 AddHandler (const IHandler Handler)
 Add a handler to the container.
 RemoveHandler (const IHandler Handler)

Public Attributes

IHandler Handler

Protected Member Functions

 DoStart ()
 Start the server.
 DoStop ()
 Stop the server.
TIdHTTPSession GetSession (TdjServerContext Context, TdjRequest Request, TdjResponse Response, const Boolean Create)
 Get a HTTP session.
 Handle (const string Target, TdjServerContext Context, TdjRequest Request, TdjResponse Response)

Private Member Functions

 AddHandler (const IHandler Handler)
 Adds a handler to this container.
 RemoveHandler (const IHandler Handler)
 Removes a handler from this container.

Detailed Description

Base server implementation providing core HTTP server functionality.

This class serves as a foundation for HTTP servers in the Daraja framework, implementing both IHandlerContainer and basic request handling capabilities.

See also
IHandlerContainer
TdjHandlerWrapper

Constructor & Destructor Documentation

◆ TdjServerBase()

TdjServerBase::TdjServerBase ( )

Create a ServerBase instance.

Referenced by ~TdjServerBase(), and Handle().

◆ ~TdjServerBase()

TdjServerBase::~TdjServerBase ( )

Destructor.

References TdjServerBase().

Member Function Documentation

◆ AddHandler()

TdjHandlerWrapper::AddHandler ( const IHandler Handler)
inherited

Add a handler to the container.

This implementation of AddHandler calls SetHandler with the passed handler. If this HandlerWrapper had a previous wrapped handler, then it is passed to a call to AddHandler on the passed handler.

Parameters
Handlerthe handler to be added

Referenced by TdjWebComponentContextHandler::AddWebFilter(), TdjServer::GetConnector(), and GetSession().

◆ DoStart()

TdjServerBase::DoStart ( )
protected

Start the server.

Note
This method calls the inherited implementation and logs the server start.
Exceptions
EWebComponentExceptionif the server fails to start

Implements IHandler.

References Handle().

◆ DoStop()

TdjServerBase::DoStop ( )
protected

Stop the server.

Note
This method calls the inherited implementation and logs the server stop.
Exceptions
EWebComponentExceptionif the server fails to stop cleanly

Implements IHandler.

◆ GetSession()

TIdHTTPSession TdjHandlerWrapper::GetSession ( TdjServerContext Context,
TdjRequest Request,
TdjResponse Response,
const Boolean Create )
protectedinherited

Get a HTTP session.

References AddHandler(), and Handler.

◆ Handle()

TdjServerBase::Handle ( const string Target,
TdjServerContext Context,
TdjRequest Request,
TdjResponse Response )
protected

Implements IHandler.

References TdjServerBase().

Referenced by DoStart().

◆ RemoveHandler()

TdjHandlerWrapper::RemoveHandler ( const IHandler Handler)
inherited

Member Data Documentation

◆ Handler

IHandler TdjHandlerWrapper::Handler
inherited