Caffa  1.1.0
C++ Application Framework for Embedded Systems with introspection
Public Member Functions | Static Public Member Functions | List of all members
caffa::rpc::RestServerApplication Class Reference

#include <cafRestServerApplication.h>

Inheritance diagram for caffa::rpc::RestServerApplication:
Inheritance graph
[legend]
Collaboration diagram for caffa::rpc::RestServerApplication:
Collaboration graph
[legend]

Public Member Functions

 RestServerApplication (const std::string &clientHost, unsigned short portNumber, int threads, std::shared_ptr< const RestAuthenticator > authenticator)
 
int portNumber () const override
 
void run () override
 
void quit () override
 
bool running () const override
 
- Public Member Functions inherited from caffa::rpc::ServerApplication
 ServerApplication (unsigned capability)
 
 ServerApplication (AppInfo::AppCapability capability)
 
virtual std::shared_ptr< Documentdocument (const std::string &documentId, const caffa::Session *session)=0
 
virtual std::shared_ptr< const Documentdocument (const std::string &documentId, const caffa::Session *session) const =0
 
virtual std::list< std::shared_ptr< Document > > documents (const caffa::Session *session)=0
 
virtual std::list< std::shared_ptr< const Document > > documents (const caffa::Session *session) const =0
 
virtual std::list< std::shared_ptr< caffa::Document > > defaultDocuments () const =0
 
bool requiresValidSession () const
 
void setRequiresValidSession (bool requiresValidSession)
 
virtual bool readyForSession (caffa::Session::Type type) const =0
 
virtual caffa::SessionMaintainer createSession (caffa::Session::Type type)=0
 
virtual bool hasActiveSessions () const =0
 
virtual caffa::SessionMaintainer getExistingSession (const std::string &sessionUuid)=0
 
virtual caffa::ConstSessionMaintainer getExistingSession (const std::string &sessionUuid) const =0
 
virtual void changeSession (caffa::not_null< caffa::Session *> session, caffa::Session::Type newType)=0
 
virtual void destroySession (const std::string &sessionUuid)=0
 
- Public Member Functions inherited from caffa::rpc::RpcApplication
 RpcApplication (unsigned int capabilities)
 
 RpcApplication (AppInfo::AppCapability capability)
 
- Public Member Functions inherited from caffa::Application
 Application (unsigned int capabilities)
 
 Application (AppInfo::AppCapability capability)
 
virtual std::string name () const =0
 
bool hasCapability (AppInfo::AppCapability typeToCheck) const
 
AppInfo appInfo () const
 
virtual int majorVersion () const =0
 
virtual int minorVersion () const =0
 
virtual int patchVersion () const =0
 
virtual std::string description () const =0
 
virtual std::string contactEmail () const =0
 

Static Public Member Functions

static RestServerApplicationinstance ()
 
- Static Public Member Functions inherited from caffa::rpc::ServerApplication
static ServerApplicationinstance ()
 
- Static Public Member Functions inherited from caffa::rpc::RpcApplication
static RpcApplicationinstance ()
 
static std::string readKeyOrCertificate (const std::string &path)
 
- Static Public Member Functions inherited from caffa::Application
static Applicationinstance ()
 
static void registerInstance (Application *instance)
 
static void assertCapability (AppInfo::AppCapability typeToAssert)
 

Additional Inherited Members

- Protected Member Functions inherited from caffa::rpc::ServerApplication
virtual void onStartup ()
 
virtual void onShutdown ()
 

Detailed Description

A base class for a REST server application. Sub-class to create your REST application.

Constructor & Destructor Documentation

◆ RestServerApplication()

RestServerApplication::RestServerApplication ( const std::string &  clientHost,
unsigned short  portNumber,
int  threads,
std::shared_ptr< const RestAuthenticator authenticator 
)

Constructor.

Parameters
portNumberPort number
threadsThe number of accept threads
authenticatorThe authenticator used to determine if a client is allowed to access the server.

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