#import "LocalHTTPServerManager.h"
#import "HTTPServer.h"
@interface LocalHTTPServerManager()
@property(nonatomic,strong) HTTPServer *httpServer;
@end
@implementation LocalHTTPServerManager
+ (instancetype)sharedInstance {
static LocalHTTPServerManager *instance = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
instance = [[LocalHTTPServerManager alloc] init];
});
return instance;
}
- (BOOL)startServer {
if (!_httpServer) {
_httpServer = [[HTTPServer alloc] init];
[_httpServer setType: @"_http._tcp."];
[_httpServer setPort: 8080];
[_httpServer setDocumentRoot:_desPath];
}
if (_httpServer && ![_httpServer isRunning]) {
NSError *error;
if ([_httpServer start: &error]) {
self.serverPort = [NSString stringWithFormat:@"%d",[_httpServer listeningPort]];
NSLog(@"LocalServer succeeded");
return YES;
} else {
NSLog(@"LocalServer failed:%@",[error localizedDescription]);
return NO;
}
}
return NO;
}
- (void)stopServer {
if (_httpServer && [_httpServer isRunning]) {
[_httpServer stop];
NSLog(@"LocalServer stop");
}
}
-(BOOL)serverIsRunning {
return _httpServer && [_httpServer isRunning];
}
@end