IBioAuthFactor.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. //
  2. // IBioAuthFactor.h
  3. // BioAuthEngine
  4. //
  5. // Created by yukun.tyk on 11/9/15.
  6. // Copyright © 2015 DTF. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. @protocol IBioAuthTask;
  10. @class APBRequest, APBResponse;
  11. /**
  12. * globalConfig key
  13. * 全局超时,值为CGFloat,若设定了该值,则框架可以在相应时间到达后,将全局超时事件封装成APBEvent dispatch给当时运行的task
  14. * 即使设定了全局超时,全局计时器默认关闭,需要task在globalInfo中将kGlobalTimerSwitchKey开关设置为YES后才开始计时
  15. */
  16. extern NSString *const kGlobalTimeoutKey;
  17. /**
  18. * 远程生物认证因子接口
  19. */
  20. @protocol IBioAuthFactor <NSObject>
  21. /**
  22. * 生物认证因子名称,框架根据该名称反射调用到具体生物认证因子
  23. */
  24. @property(nonatomic, copy, readonly)NSString *factorName;
  25. /**
  26. * 框架调用该方法来实例化认证因子
  27. *
  28. * @param request 调用方的认证请求
  29. */
  30. - (instancetype)initWithRequest:(APBRequest *)request;
  31. /**
  32. * 获取远程生物认证task队列
  33. */
  34. - (NSArray<id<IBioAuthTask>> *)getTasks;
  35. /**
  36. * 获取生物验证全局配置(全局超时等)
  37. */
  38. - (NSMutableDictionary *)getGlobalConfig;
  39. /**
  40. * 框架最终返回response之前,由相应认证因子最终处理repsonse
  41. */
  42. - (void)finalizeResponse:(APBResponse *)response;
  43. /**
  44. * sdk版本号
  45. */
  46. + (NSString *)getVersion;
  47. @optional
  48. /**
  49. * 重启之前调用
  50. */
  51. - (void)onEngineWillRestart:(NSMutableDictionary *)pipeInfo;
  52. /**
  53. * 获取生物认证产品元数据
  54. */
  55. + (NSDictionary *)getMetaInfo;
  56. @end