//
//  HCLogFormatter.m
//  HCLogger
//
//  Created by ChenYuanfu on 2018/5/8.
//  Copyright © 2018年 ZeroZero. All rights reserved.
//

#import "HCLogFormatter.h"

@interface HCLogFormatter()
@property (nonatomic, assign) NSInteger number;

@property (nonatomic, strong) NSDateFormatter *dataFormatter;
@end

@implementation HCLogFormatter
- (instancetype)init {
  if (self = [super init]) {
    _dataFormatter = [NSDateFormatter new];
    [_dataFormatter setDateFormat:@"yyyy/MM/dd HH:mm:ss:SSS"];
  }
  return self;
}

- (NSString * _Nullable)formatLogMessage:(nonnull DDLogMessage *)logMessage {
  
  NSString *emoji;
  
  switch (logMessage.flag) {
    case DDLogFlagError:
      emoji = @"🚨";
      break;
    case DDLogFlagWarning:
      emoji = @"⚠️";
      break;
    case DDLogFlagInfo:
      emoji = @"✏️";
      break;
    case DDLogFlagDebug:
      emoji = @"🐝";
      break;
    default:
      emoji = @"📚";
      break;
  }
  
  NSString *dateAndTime = [self.dataFormatter stringFromDate:logMessage.timestamp];
  return [NSString stringWithFormat:@"%@ %@ %@",dateAndTime, emoji, logMessage.message];
  
}

@end
