Monotone-Parent: 551d7c926dcd36700dd7ae6ae2cb2b2c0a8294c5
Monotone-Revision: 05e0abb27e38e7c461039f5c7f11b15934994776 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2011-09-27T19:26:12 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
parent
bd45d9b0f2
commit
2995fb6be8
|
@ -1,5 +1,9 @@
|
||||||
2011-09-27 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
2011-09-27 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||||
|
|
||||||
|
* OpenChange/MAPIStoreFSMessage.m (-getPrChangeKey:inMemCtx:):
|
||||||
|
first return the value stored in the plist, if present. Otherwise
|
||||||
|
fallback to the method making use of objectVersion.
|
||||||
|
|
||||||
* OpenChange/MAPIStoreSOGo.m (sogo_folder_move_copy_messages):
|
* OpenChange/MAPIStoreSOGo.m (sogo_folder_move_copy_messages):
|
||||||
added the "target_change_keys" parameter.
|
added the "target_change_keys" parameter.
|
||||||
|
|
||||||
|
|
|
@ -25,10 +25,12 @@
|
||||||
#import <Foundation/NSDictionary.h>
|
#import <Foundation/NSDictionary.h>
|
||||||
#import <Foundation/NSString.h>
|
#import <Foundation/NSString.h>
|
||||||
#import <Foundation/NSValue.h>
|
#import <Foundation/NSValue.h>
|
||||||
|
#import <NGExtensions/NSObject+Logs.h>
|
||||||
|
|
||||||
#import "MAPIStoreContext.h"
|
#import "MAPIStoreContext.h"
|
||||||
#import "MAPIStorePropertySelectors.h"
|
#import "MAPIStorePropertySelectors.h"
|
||||||
#import "MAPIStoreTypes.h"
|
#import "MAPIStoreTypes.h"
|
||||||
|
#import "NSData+MAPIStore.h"
|
||||||
#import "NSObject+MAPIStore.h"
|
#import "NSObject+MAPIStore.h"
|
||||||
#import "NSString+MAPIStore.h"
|
#import "NSString+MAPIStore.h"
|
||||||
#import "SOGoMAPIFSMessage.h"
|
#import "SOGoMAPIFSMessage.h"
|
||||||
|
@ -127,6 +129,24 @@ Class NSNumberK;
|
||||||
return MAPISTORE_SUCCESS;
|
return MAPISTORE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (int) getPrChangeKey: (void **) data inMemCtx: (TALLOC_CTX *) memCtx
|
||||||
|
{
|
||||||
|
NSData *changeKey;
|
||||||
|
int rc;
|
||||||
|
|
||||||
|
changeKey = [[sogoObject properties]
|
||||||
|
objectForKey: MAPIPropertyKey (PR_CHANGE_KEY)];
|
||||||
|
if (changeKey)
|
||||||
|
{
|
||||||
|
*data = [changeKey asBinaryInMemCtx: memCtx];
|
||||||
|
rc = MAPISTORE_SUCCESS;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
rc = [super getPrChangeKey: data inMemCtx: memCtx];
|
||||||
|
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
|
||||||
- (int) getAvailableProperties: (struct SPropTagArray **) propertiesP
|
- (int) getAvailableProperties: (struct SPropTagArray **) propertiesP
|
||||||
inMemCtx: (TALLOC_CTX *) memCtx
|
inMemCtx: (TALLOC_CTX *) memCtx
|
||||||
{
|
{
|
||||||
|
@ -206,6 +226,9 @@ Class NSNumberK;
|
||||||
newVersion = exchange_globcnt ([[self context] getNewChangeNumber] >> 16);
|
newVersion = exchange_globcnt ([[self context] getNewChangeNumber] >> 16);
|
||||||
[newProperties setObject: [NSNumber numberWithUnsignedLongLong: newVersion]
|
[newProperties setObject: [NSNumber numberWithUnsignedLongLong: newVersion]
|
||||||
forKey: @"version"];
|
forKey: @"version"];
|
||||||
|
|
||||||
|
[self logWithFormat: @"%d props in dict", [newProperties count]];
|
||||||
|
|
||||||
[sogoObject appendProperties: newProperties];
|
[sogoObject appendProperties: newProperties];
|
||||||
[sogoObject save];
|
[sogoObject save];
|
||||||
[self resetNewProperties];
|
[self resetNewProperties];
|
||||||
|
|
Loading…
Reference in a new issue