Monotone-Parent: cca78e92405cd0f44d20538ad0b0e699160785fd

Monotone-Revision: 482fb2f36da6ff311c3c19eb3752da985fdae5cd

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2011-03-07T18:58:14
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2011-03-07 18:58:14 +00:00
parent 17af002bd3
commit 1c5baea83d
6 changed files with 44 additions and 3 deletions
+11 -2
View File
@@ -1,11 +1,20 @@
2011-03-07 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/SOGo/SOGoCache.m
(-unregisterObjectWithName:inContainer:): same as below.
* SoObjects/SOGo/SOGoGCSFolder.m (-removeChildRecordWithName:):
new method to ensure a child records is removed from the cache
when modified or deleted.
2011-03-04 Ludovic Marcotte <lmarcotte@inverse.ca>
* SoObjects/Appointments/SOGoAppointmentFolder.h/m:
-importCalendar: we now also import the timezone definition
when present
* SoObjects/SOGo/SQLSource.m
* SoObjects/SOGo/SQLSource.m
We now consider the domain belonging to the SQLSource instance
2011-02-25 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/MAPIStoreMailContext.[hm]: renamed from
+2
View File
@@ -57,6 +57,8 @@
- (void) registerObject: (id) object
withName: (NSString *) name
inContainer: (SOGoObject *) container;
- (void) unregisterObjectWithName: (NSString *) name
inContainer: (SOGoObject *) container;
- (id) objectNamed: (NSString *) name
inContainer: (SOGoObject *) container;
+13
View File
@@ -209,6 +209,19 @@ static memcached_st *handle = NULL;
}
}
- (void) unregisterObjectWithName: (NSString *) name
inContainer: (SOGoObject *) container
{
NSString *fullPath;
if (name)
{
fullPath = [self _pathFromObject: container
withName: name];
[cache removeObjectForKey: fullPath];
}
}
- (id) objectNamed: (NSString *) name
inContainer: (SOGoObject *) container
{
+11 -1
View File
@@ -33,6 +33,7 @@
#import <GDLContentStore/GCSFolder.h>
#import "NSCalendarDate+SOGo.h"
#import "SOGoCache.h"
#import "SOGoGCSFolder.h"
#import "SOGoUser.h"
#import "SOGoPermissions.h"
@@ -199,7 +200,11 @@
}
else
[self errorWithFormat:@"Did not find folder of content object."];
[container removeChildRecordWithName: nameInContainer];
[[SOGoCache sharedCache] unregisterObjectWithName: nameInContainer
inContainer: container];
return ex;
}
@@ -249,6 +254,11 @@
[self errorWithFormat:@"delete failed: %@", ex];
return ex;
}
[container removeChildRecordWithName: nameInContainer];
[[SOGoCache sharedCache] unregisterObjectWithName: nameInContainer
inContainer: container];
return nil;
}
+2
View File
@@ -81,6 +81,8 @@
- (Class) objectClassForComponentName: (NSString *) componentName;
- (Class) objectClassForContent: (NSString *) content;
- (void) removeChildRecordWithName: (NSString *) childName;
- (id) createChildComponentWithRecord: (NSDictionary *) record;
- (id) createChildComponentWithName: (NSString *) newName
andContent: (NSString *) newContent;
+5
View File
@@ -712,6 +712,11 @@ static NSArray *childRecordFields = nil;
return (record != nil);
}
- (void) removeChildRecordWithName: (NSString *) childName
{
[childRecords removeObjectForKey: childName];
}
- (Class) objectClassForComponentName: (NSString *) componentName
{
[self subclassResponsibility: _cmd];