feat: sync httpdns sdk/platform updates without large binaries
This commit is contained in:
73
HttpDNSSDK/sdk/ios/NewHttpDNS/Log/HttpdnsLog.m
Normal file
73
HttpDNSSDK/sdk/ios/NewHttpDNS/Log/HttpdnsLog.m
Normal file
@@ -0,0 +1,73 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
|
||||
#import "HttpdnsLog_Internal.h"
|
||||
|
||||
static BOOL HttpdnsLogIsEnabled = NO;
|
||||
|
||||
static id<HttpdnsLoggerProtocol> sLogHandler;
|
||||
|
||||
@implementation HttpdnsLog
|
||||
|
||||
+ (void)enableLog {
|
||||
HttpdnsLogIsEnabled = YES;
|
||||
}
|
||||
|
||||
+ (void)disableLog {
|
||||
HttpdnsLogIsEnabled = NO;
|
||||
}
|
||||
|
||||
+ (BOOL)isEnabled {
|
||||
return HttpdnsLogIsEnabled;
|
||||
}
|
||||
|
||||
+ (void)setLogHandler:(id<HttpdnsLoggerProtocol>)handler {
|
||||
SEL sel = NSSelectorFromString(@"log:");
|
||||
if (handler && [handler respondsToSelector:sel]) {
|
||||
sLogHandler = handler;
|
||||
}
|
||||
}
|
||||
|
||||
+ (void)unsetLogHandler {
|
||||
sLogHandler = nil;
|
||||
}
|
||||
|
||||
+ (BOOL)validLogHandler {
|
||||
return (sLogHandler != nil);
|
||||
}
|
||||
|
||||
+ (void)outputToLogHandler:(NSString *)logStr {
|
||||
if (sLogHandler) {
|
||||
[sLogHandler log:logStr];
|
||||
}
|
||||
}
|
||||
|
||||
+ (NSString *)getFormattedDateTimeStr {
|
||||
static NSDateFormatter *dateFormatter;
|
||||
static dispatch_once_t onceToken;
|
||||
dispatch_once(&onceToken, ^{
|
||||
dateFormatter = [[NSDateFormatter alloc] init];
|
||||
});
|
||||
|
||||
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
|
||||
return [dateFormatter stringFromDate:[NSDate date]];
|
||||
}
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user