aqhome: more work on http server.
This commit is contained in:
@@ -28,16 +28,34 @@ static void GWENHYWFAR_CB _freeData(void *bp, void *p);
|
||||
|
||||
|
||||
|
||||
void AQH_HttpService_Extend(AQH_SERVICE *sv)
|
||||
AQH_SERVICE *AQH_HttpService_new(const char *configFolder, const char *sourceFolder)
|
||||
{
|
||||
AQH_SERVICE *sv;
|
||||
|
||||
sv=AQH_Service_new();
|
||||
AQH_HttpService_Extend(sv, configFolder, sourceFolder);
|
||||
|
||||
return sv;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void AQH_HttpService_Extend(AQH_SERVICE *sv, const char *configFolder, const char *sourceFolder)
|
||||
{
|
||||
AQH_HTTP_SERVICE *xsv;
|
||||
|
||||
GWEN_NEW_OBJECT(AQH_HTTP_SERVICE, xsv);
|
||||
GWEN_INHERIT_SETDATA(AQH_SERVICE, AQH_HTTP_SERVICE, sv, xsv, _freeData);
|
||||
|
||||
AQH_HttpService_SetConfigFolder(sv, configFolder);
|
||||
AQH_HttpService_SetSourceFolder(sv, sourceFolder);
|
||||
|
||||
xsv->moduleMutex=GWEN_Mutex_new();
|
||||
xsv->userMutex=GWEN_Mutex_new();
|
||||
xsv->sessionMutex=GWEN_Mutex_new();
|
||||
|
||||
xsv->urlHandlerList=AQH_HttpUrlHandler_List_new(sv);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -48,6 +66,8 @@ void _freeData(void *bp, void *p)
|
||||
|
||||
xsv=(AQH_HTTP_SERVICE*) p;
|
||||
|
||||
AQH_HttpUrlHandler_List_free(xsv->urlHandlerList);
|
||||
|
||||
GWEN_Mutex_free(xsv->moduleMutex);
|
||||
GWEN_Mutex_free(xsv->userMutex);
|
||||
GWEN_Mutex_free(xsv->sessionMutex);
|
||||
@@ -61,25 +81,6 @@ void _freeData(void *bp, void *p)
|
||||
|
||||
|
||||
|
||||
AQH_HTTP_SERVICE_HANDLEREQUEST_FN AQH_HttpService_SetHandleRequestFn(AQH_SERVICE *sv, AQH_HTTP_SERVICE_HANDLEREQUEST_FN fn)
|
||||
{
|
||||
if (sv) {
|
||||
AQH_HTTP_SERVICE *xsv;
|
||||
|
||||
xsv=GWEN_INHERIT_GETDATA(AQH_SERVICE, AQH_HTTP_SERVICE, sv);
|
||||
if (xsv) {
|
||||
AQH_HTTP_SERVICE_HANDLEREQUEST_FN oldFn;
|
||||
|
||||
oldFn=xsv->handleRequestFn;
|
||||
xsv->handleRequestFn=fn;
|
||||
return oldFn;
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
const char *AQH_HttpService_GetConfigFolder(const AQH_SERVICE *sv)
|
||||
{
|
||||
if (sv) {
|
||||
|
||||
Reference in New Issue
Block a user