only when messageAge is New to adjust message's createdUnixTime

This commit is contained in:
nixzhu
2015-10-14 15:08:54 +08:00
committed by nixzhu
parent 108bc8e3b5
commit 83102c100c
3 changed files with 22 additions and 12 deletions
+1 -1
View File
@@ -250,7 +250,7 @@ class FayeService: NSObject, MZFayeClientDelegate {
}
}
syncMessageWithMessageInfo(messageInfo, inRealm: realm) { messageIDs in
syncMessageWithMessageInfo(messageInfo, messageAge: .New, inRealm: realm) { messageIDs in
tryPostNewMessagesReceivedNotificationWithMessageIDs(messageIDs, withMessageAge: .New)
}
}
+10 -1
View File
@@ -1619,6 +1619,15 @@ enum TimeDirection {
case Future(minMessageID: String)
case Past(maxMessageID: String)
case None
var messageAge: MessageAge {
switch self {
case .Past:
return .Old
default:
return .New
}
}
}
func messagesFromRecipient(recipient: Recipient, withTimeDirection timeDirection: TimeDirection, failureHandler: ((Reason, String?) -> Void)?, completion: Bool -> Void) {
@@ -1654,7 +1663,7 @@ func messagesFromRecipient(recipient: Recipient, withTimeDirection timeDirection
var messageIDs = [String]()
for messageInfo in unreadMessagesData {
syncMessageWithMessageInfo(messageInfo, inRealm: realm) { _messageIDs in
syncMessageWithMessageInfo(messageInfo, messageAge: timeDirection.messageAge, inRealm: realm) { _messageIDs in
messageIDs += _messageIDs
}
}
+11 -10
View File
@@ -735,7 +735,7 @@ func syncUnreadMessagesAndDoFurtherAction(furtherAction: (messageIDs: [String])
var messageIDs = [String]()
for messageInfo in allUnreadMessages {
syncMessageWithMessageInfo(messageInfo, inRealm: realm) { _messageIDs in
syncMessageWithMessageInfo(messageInfo, messageAge: .New, inRealm: realm) { _messageIDs in
messageIDs += _messageIDs
}
}
@@ -859,7 +859,7 @@ func recordMessageWithMessageID(messageID: String, detailInfo messageInfo: JSOND
}
}
func syncMessageWithMessageInfo(messageInfo: JSONDictionary, inRealm realm: Realm, andDoFurtherAction furtherAction: ((messageIDs: [String]) -> Void)? ) {
func syncMessageWithMessageInfo(messageInfo: JSONDictionary, messageAge: MessageAge, inRealm realm: Realm, andDoFurtherAction furtherAction: ((messageIDs: [String]) -> Void)? ) {
func deleteMessage(message: Message, inRealm realm: Realm) {
realm.write {
@@ -879,15 +879,16 @@ func syncMessageWithMessageInfo(messageInfo: JSONDictionary, inRealm realm: Real
newMessage.createdUnixTime = updatedUnixTime
}
/*
//
if let latestMessage = realm.objects(Message).sorted("createdUnixTime", ascending: true).last {
if newMessage.createdUnixTime < latestMessage.createdUnixTime {
println("before newMessage.createdUnixTime: \(newMessage.createdUnixTime)")
newMessage.createdUnixTime = latestMessage.createdUnixTime + YepConfig.Message.localNewerTimeInterval
println("adjust newMessage.createdUnixTime: \(newMessage.createdUnixTime)")
if case .New = messageAge {
//
if let latestMessage = realm.objects(Message).sorted("createdUnixTime", ascending: true).last {
if newMessage.createdUnixTime < latestMessage.createdUnixTime {
println("before newMessage.createdUnixTime: \(newMessage.createdUnixTime)")
newMessage.createdUnixTime = latestMessage.createdUnixTime + YepConfig.Message.localNewerTimeInterval
println("adjust newMessage.createdUnixTime: \(newMessage.createdUnixTime)")
}
}
}*/
}
realm.write {
realm.add(newMessage)