MythTV master
Public Slots | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
MythSocketManager Class Reference

#include <libmythprotoserver/mythsocketmanager.h>

Inheritance diagram for MythSocketManager:
[legend]
Collaboration diagram for MythSocketManager:
[legend]

Public Slots

void newConnection (qintptr sd)
 

Public Member Functions

 MythSocketManager ()
 
 ~MythSocketManager () override
 
void readyRead (MythSocket *socket) override
 
void connectionClosed (MythSocket *socket) override
 
void connectionFailed (MythSocket *socket) override
 
void connected (MythSocket *socket) override
 
void SetThreadCount (uint count)
 
void AddSocketHandler (SocketHandler *socket)
 
SocketHandlerGetConnectionBySocket (MythSocket *socket)
 
void ProcessRequest (MythSocket *socket)
 
void RegisterHandler (SocketRequestHandler *handler)
 
bool Listen (int port)
 
- Public Member Functions inherited from MythSocketCBs
virtual ~MythSocketCBs ()=default
 
virtual void connected (MythSocket *)=0
 
virtual void error (MythSocket *, int)
 
virtual void readyRead (MythSocket *)=0
 
virtual void connectionFailed (MythSocket *)=0
 
virtual void connectionClosed (MythSocket *)=0
 

Private Member Functions

void ProcessRequestWork (MythSocket *socket)
 

Static Private Member Functions

static void HandleVersion (MythSocket *socket, const QStringList &slist)
 
static void HandleDone (MythSocket *socket)
 

Private Attributes

QMap< MythSocket *, SocketHandler * > m_socketMap
 
QReadWriteLock m_socketLock
 
QMap< QString, SocketRequestHandler * > m_handlerMap
 
QReadWriteLock m_handlerLock
 
MythServerm_server { nullptr }
 
MThreadPool m_threadPool
 
QMutex m_socketListLock
 
QSet< MythSocket * > m_socketList
 

Detailed Description

Definition at line 21 of file mythsocketmanager.h.

Constructor & Destructor Documentation

◆ MythSocketManager()

MythSocketManager::MythSocketManager ( )

Definition at line 49 of file mythsocketmanager.cpp.

◆ ~MythSocketManager()

MythSocketManager::~MythSocketManager ( )
override

Definition at line 54 of file mythsocketmanager.cpp.

Member Function Documentation

◆ AddSocketHandler()

void MythSocketManager::AddSocketHandler ( SocketHandler socket)

◆ connected()

void MythSocketManager::connected ( MythSocket socket)
inlineoverridevirtual

Implements MythSocketCBs.

Definition at line 31 of file mythsocketmanager.h.

◆ connectionClosed()

void MythSocketManager::connectionClosed ( MythSocket socket)
overridevirtual

Implements MythSocketCBs.

Definition at line 155 of file mythsocketmanager.cpp.

◆ connectionFailed()

void MythSocketManager::connectionFailed ( MythSocket socket)
inlineoverridevirtual

Implements MythSocketCBs.

Definition at line 30 of file mythsocketmanager.h.

◆ GetConnectionBySocket()

SocketHandler * MythSocketManager::GetConnectionBySocket ( MythSocket socket)

◆ HandleDone()

void MythSocketManager::HandleDone ( MythSocket socket)
staticprivate

Definition at line 372 of file mythsocketmanager.cpp.

Referenced by HandleVersion(), and ProcessRequestWork().

◆ HandleVersion()

void MythSocketManager::HandleVersion ( MythSocket socket,
const QStringList &  slist 
)
staticprivate

Definition at line 328 of file mythsocketmanager.cpp.

Referenced by ProcessRequestWork().

◆ Listen()

bool MythSocketManager::Listen ( int  port)

Definition at line 75 of file mythsocketmanager.cpp.

◆ newConnection

void MythSocketManager::newConnection ( qintptr  sd)
slot

Definition at line 97 of file mythsocketmanager.cpp.

Referenced by Listen().

◆ ProcessRequest()

void MythSocketManager::ProcessRequest ( MythSocket socket)

Definition at line 178 of file mythsocketmanager.cpp.

Referenced by ProcessRequestRunnable::run().

◆ ProcessRequestWork()

void MythSocketManager::ProcessRequestWork ( MythSocket socket)
private

Definition at line 189 of file mythsocketmanager.cpp.

Referenced by ProcessRequest().

◆ readyRead()

void MythSocketManager::readyRead ( MythSocket socket)
overridevirtual

Implements MythSocketCBs.

Definition at line 148 of file mythsocketmanager.cpp.

◆ RegisterHandler()

void MythSocketManager::RegisterHandler ( SocketRequestHandler handler)

Definition at line 107 of file mythsocketmanager.cpp.

◆ SetThreadCount()

void MythSocketManager::SetThreadCount ( uint  count)

Member Data Documentation

◆ m_handlerLock

QReadWriteLock MythSocketManager::m_handlerLock
private

◆ m_handlerMap

QMap<QString, SocketRequestHandler*> MythSocketManager::m_handlerMap
private

◆ m_server

MythServer* MythSocketManager::m_server { nullptr }
private

Definition at line 57 of file mythsocketmanager.h.

Referenced by Listen().

◆ m_socketList

QSet<MythSocket*> MythSocketManager::m_socketList
private

Definition at line 61 of file mythsocketmanager.h.

Referenced by newConnection(), and ~MythSocketManager().

◆ m_socketListLock

QMutex MythSocketManager::m_socketListLock
private

Definition at line 60 of file mythsocketmanager.h.

Referenced by newConnection(), and ~MythSocketManager().

◆ m_socketLock

QReadWriteLock MythSocketManager::m_socketLock
private

◆ m_socketMap

QMap<MythSocket*, SocketHandler*> MythSocketManager::m_socketMap
private

◆ m_threadPool

MThreadPool MythSocketManager::m_threadPool
private

Definition at line 58 of file mythsocketmanager.h.

Referenced by readyRead(), and ~MythSocketManager().


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