/* * AlibcTradeBenchmarkable.h * * 阿里百川电商 * 项目名称:阿里巴巴电商 AlibcTradeCommon * 版本号:3.1.1.93 * 发布时间:2017-03-06 * 开发团队:阿里巴巴百川商业化团队 * 阿里巴巴电商SDK答疑群号:1229144682(阿里旺旺) * Copyright (c) 2016-2019 阿里巴巴-移动事业群-百川. All rights reserved. */ #import #ifndef AlibcTradeBenchmarkable_h #define AlibcTradeBenchmarkable_h NS_ASSUME_NONNULL_BEGIN /** 可基准化协议 */ @protocol AlibcTradeBenchmarkable /** 基准字段值 */ @property(strong, nonatomic, readonly) NSString *name; /** 基准值 */ @property(strong, nonatomic, readonly) id value; - (NSDictionary *)toDictionary; @end #pragma mark - 指标 /** 指标基本类 */ @interface AlibcTradeMeasure : NSObject /** 指标的字段名 */ @property(strong, nonatomic, readonly) NSString *name; /** 指标的对应值 */ @property(strong, nonatomic, readwrite, nullable) NSNumber *value; /** 构造方法 @param name 指标字段名 @return 指标对象 */ - (instancetype)initWithName:(nonnull NSString *)name; /** @return @{ name : value } */ - (NSDictionary *)toDictionary; @end #pragma mark - 维度 /** 维度基本类 */ @interface AlibcTradeDimension : NSObject /** 维度的字段名 */ @property(strong, nonatomic, readonly) NSString *name; /** 维度的对应值 */ @property(strong, nonatomic, readwrite, nullable) NSString *value; /** 构造方法 @param name 维度字段名 @return 维度对象 */ - (instancetype)initWithName:(nonnull NSString *)name; /** @return @{ name : value } */ - (NSDictionary *)toDictionary; @end NS_ASSUME_NONNULL_END #pragma mark - 时间指标 /** 时间指标 */ @interface AlibcTradeTimeMeasure : AlibcTradeMeasure /** 如果还没开始, 那么开始.. */ - (void)start; /** 没开始就开始, 开始了就重新开始.. */ - (void)restart; /** 结束并记录时长. */ - (void)stopThenRecord; - (BOOL)isRecording; @end #endif