@@ -47,23 +47,23 @@ initWithConfigPath: @"ObjWebServer.xml"]; modules = [OFMutableArray array]; for (OFXMLElement *config in [_config modules]) { OFString *path = - [[config attributeForName: @"path"] stringValue]; + [config attributeForName: @"path"].stringValue; OFString *prefix = - [[config attributeForName: @"prefix"] stringValue]; + [config attributeForName: @"prefix"].stringValue; OFPlugin *module = [self loadModuleAtPath: path withConfig: config]; [modules addObject: [OFPair pairWithFirstObject: prefix secondObject: module]]; } [modules makeImmutable]; _modules = [modules copy]; - for (ListenConfig *listenConfig in [_config listenConfigs]) + for (ListenConfig *listenConfig in _config.listenConfigs) [self startWebserverWithListenConfig: listenConfig]; } - (OFPlugin *)loadModuleAtPath: (OFString *)path withConfig: (OFXMLElement *)config @@ -79,43 +79,43 @@ } - (void)startWebserverWithListenConfig: (ListenConfig *)listenConfig { OFHTTPServer *server = [OFHTTPServer server]; - [server setHost: [listenConfig host]]; - [server setPort: [listenConfig port]]; - - if ([listenConfig TLSCertificateFile] != nil && - [listenConfig TLSKeyFile] != nil) { - [server setUsesTLS: true]; - [server setCertificateFile: [listenConfig TLSCertificateFile]]; - [server setPrivateKeyFile: [listenConfig TLSKeyFile]]; - } - - [server setNumberOfThreads: [OFSystemInfo numberOfCPUs] + 1]; - [server setDelegate: self]; - - of_log(@"Starting server on host %@ port %" PRIu16, - [listenConfig host], [listenConfig port]); + server.host = listenConfig.host; + server.port = listenConfig.port; + + if (listenConfig.TLSCertificateFile != nil && + listenConfig.TLSKeyFile != nil) { + server.usesTLS = true; + server.certificateFile = listenConfig.TLSCertificateFile; + server.privateKeyFile = listenConfig.TLSKeyFile; + } + + server.numberOfThreads = [OFSystemInfo numberOfCPUs] + 1; + server.delegate = self; + + of_log(@"Starting server on host %@ port %" PRIu16, + listenConfig.host, listenConfig.port); [server start]; } - (void)server: (OFHTTPServer *)server didReceiveRequest: (OFHTTPRequest *)request requestBody: (OFStream *)requestBody response: (OFHTTPResponse *)response { - OFString *path = [[request URL] path]; + OFString *path = request.URL.path; of_log(@"Request: %@", request); for (OFPair OF_GENERIC(OFString *, id ) *module in _modules) - if ([path hasPrefix: [module firstObject]]) - if ([[module secondObject] handleRequest: request - requestBody: requestBody - response: response]) + if ([path hasPrefix: module.firstObject]) + if ([module.secondObject handleRequest: request + requestBody: requestBody + response: response]) return; } - (bool)server: (OFHTTPServer *)server didReceiveExceptionOnListeningSocket: (id)exception