| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- //
- // FLEXSystemLogMessage.m
- // UICatalog
- //
- // Created by Ryan Olson on 1/25/15.
- // Copyright (c) 2015 f. All rights reserved.
- //
- #import "FLEXSystemLogMessage.h"
- @implementation FLEXSystemLogMessage
- +(instancetype)logMessageFromASLMessage:(aslmsg)aslMessage
- {
- FLEXSystemLogMessage *logMessage = [[FLEXSystemLogMessage alloc] init];
- const char *timestamp = asl_get(aslMessage, ASL_KEY_TIME);
- if (timestamp) {
- NSTimeInterval timeInterval = [@(timestamp) integerValue];
- const char *nanoseconds = asl_get(aslMessage, ASL_KEY_TIME_NSEC);
- if (nanoseconds) {
- timeInterval += [@(nanoseconds) doubleValue] / NSEC_PER_SEC;
- }
- logMessage.date = [NSDate dateWithTimeIntervalSince1970:timeInterval];
- }
- const char *sender = asl_get(aslMessage, ASL_KEY_SENDER);
- if (sender) {
- logMessage.sender = @(sender);
- }
- const char *messageText = asl_get(aslMessage, ASL_KEY_MSG);
- if (messageText) {
- logMessage.messageText = @(messageText);
- }
- const char *messageID = asl_get(aslMessage, ASL_KEY_MSG_ID);
- if (messageID) {
- logMessage.messageID = [@(messageID) longLongValue];
- }
- return logMessage;
- }
- - (BOOL)isEqual:(id)object
- {
- return [object isKindOfClass:[FLEXSystemLogMessage class]] && self.messageID == [object messageID];
- }
- - (NSUInteger)hash
- {
- return (NSUInteger)self.messageID;
- }
- @end
|