Files
waf-platform/HttpDNSSDK/sdk/ios/NewHttpDNSTestDemo/DemoHttpdnsScenario.h
2026-03-05 02:52:45 +08:00

44 lines
1.0 KiB
Objective-C

//
// DemoHttpdnsScenario.h
// NewHttpDNSTestDemo
//
#import <Foundation/Foundation.h>
#import "DemoResolveModel.h"
NS_ASSUME_NONNULL_BEGIN
@class DemoHttpdnsScenario;
@interface DemoHttpdnsScenarioConfig : NSObject <NSCopying>
@property (nonatomic, copy) NSString *host;
@property (nonatomic, copy) NSString *queryType; // @"A", @"AAAA", @"both"
- (instancetype)init;
@end
@protocol DemoHttpdnsScenarioDelegate <NSObject>
- (void)scenario:(DemoHttpdnsScenario *)scenario didUpdateModel:(DemoResolveModel *)model;
- (void)scenario:(DemoHttpdnsScenario *)scenario didAppendLogLine:(NSString *)line;
@end
@interface DemoHttpdnsScenario : NSObject
@property (nonatomic, weak, nullable) id<DemoHttpdnsScenarioDelegate> delegate;
@property (nonatomic, strong, readonly) DemoResolveModel *model;
- (instancetype)initWithDelegate:(id<DemoHttpdnsScenarioDelegate>)delegate;
- (void)applyConfig:(DemoHttpdnsScenarioConfig *)config;
- (void)resolve;
- (void)resolveSyncNonBlocking;
- (void)resolveSync;
- (NSString *)logSnapshot;
@end
NS_ASSUME_NONNULL_END