This commit is contained in:
Pierre-Olivier Latour
2014-04-07 23:33:54 -07:00
parent 715d985475
commit 3401206279

View File

@@ -26,9 +26,12 @@
*/
#import "GCDWebServer.h"
#import "GCDWebServerDataRequest.h"
#import "GCDWebServerURLEncodedFormRequest.h"
#import "GCDWebServerDataResponse.h"
#import "GCDWebServerStreamingResponse.h"
#import "GCDWebDAVServer.h"
@@ -36,7 +39,7 @@
int main(int argc, const char* argv[]) {
BOOL success = NO;
int mode = (argc == 2 ? MIN(MAX(atoi(argv[1]), 0), 4) : 0);
int mode = (argc == 2 ? MIN(MAX(atoi(argv[1]), 0), 5) : 0);
@autoreleasepool {
GCDWebServer* webServer = nil;
switch (mode) {
@@ -103,6 +106,29 @@ int main(int argc, const char* argv[]) {
break;
}
case 5: {
webServer = [[GCDWebServer alloc] init];
[webServer addHandlerForMethod:@"GET"
path:@"/"
requestClass:[GCDWebServerRequest class]
processBlock:^GCDWebServerResponse *(GCDWebServerRequest* request) {
__block int countDown = 10;
return [GCDWebServerStreamingResponse responseWithContentType:@"text/plain" streamBlock:^NSData *(NSError** error) {
usleep(100 * 1000);
if (countDown) {
return [[NSString stringWithFormat:@"%i\n", countDown--] dataUsingEncoding:NSUTF8StringEncoding];
} else {
return [NSData data];
}
}];
}];
break;
}
}
success = [webServer runWithPort:8080];
#if !__has_feature(objc_arc)