diff --git a/ChangeLog b/ChangeLog index b435f0fa5..cb3603edd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2010-02-23 Ludovic Marcotte + + * Added a patch from Adam Yearout + to fix OpenSUSE compilation issues. + + * Added a patch from dev@ib.pl to make the memcached port + being used by SOGo configurable using the SOGoMemcachedPort + default option. + 2010-02-19 Wolfgang Sourdeau * UI/Scheduler/UIxCalListingActions.m diff --git a/SoObjects/SOGo/GNUmakefile.preamble b/SoObjects/SOGo/GNUmakefile.preamble index 14be9686a..dbe5f3cbc 100644 --- a/SoObjects/SOGo/GNUmakefile.preamble +++ b/SoObjects/SOGo/GNUmakefile.preamble @@ -12,6 +12,7 @@ ADDITIONAL_CPPFLAGS += \ SOGo_LIBRARIES_DEPEND_UPON += \ -L../../OGoContentStore/$(GNUSTEP_OBJ_DIR)/ \ -L../../SOPE/NGCards/$(GNUSTEP_OBJ_DIR)/ \ + -lmemcached \ -lOGoContentStore \ -lGDLAccess \ -lNGObjWeb \ diff --git a/SoObjects/SOGo/SOGoCache.h b/SoObjects/SOGo/SOGoCache.h index 7dfe0a8fe..94c27d456 100644 --- a/SoObjects/SOGo/SOGoCache.h +++ b/SoObjects/SOGo/SOGoCache.h @@ -42,6 +42,7 @@ NSMutableDictionary *cache; NSMutableDictionary *users; float cleanupInterval; + int memcachedServerPort; NSString *memcachedServerName; // @private // memcached_server_st *servers; diff --git a/SoObjects/SOGo/SOGoCache.m b/SoObjects/SOGo/SOGoCache.m index 8f283a7b7..32dff776a 100644 --- a/SoObjects/SOGo/SOGoCache.m +++ b/SoObjects/SOGo/SOGoCache.m @@ -105,26 +105,24 @@ static memcached_st *handle = NULL; handle = memcached_create(NULL); if (handle) { -#warning We could also make the port number configurable and even make use \ - of NGNetUtilities for that. - sd = [SOGoSystemDefaults sharedSystemDefaults]; // We define the default value for cleaning up cached users' // preferences. This value should be relatively high to avoid // useless database calls. cleanupInterval = [sd cacheCleanupInterval]; + memcachedServerPort = [sd memcachedPort]; ASSIGN (memcachedServerName, [sd memcachedHost]); [self logWithFormat: @"Cache cleanup interval set every %f seconds", cleanupInterval]; - [self logWithFormat: @"Using host '%@' as server", - memcachedServerName]; + [self logWithFormat: @"Using host '%@':%i as server", + memcachedServerName, memcachedServerPort]; if (!servers) servers = memcached_server_list_append(NULL, [memcachedServerName UTF8String], - 11211, &error); + memcachedServerPort, &error); error = memcached_server_push(handle, servers); } } diff --git a/SoObjects/SOGo/SOGoDefaults.plist b/SoObjects/SOGo/SOGoDefaults.plist index e834d92e3..b0d0b8c21 100644 --- a/SoObjects/SOGo/SOGoDefaults.plist +++ b/SoObjects/SOGo/SOGoDefaults.plist @@ -13,6 +13,7 @@ SOGoCacheCleanupInterval = 300.0; SOGoMemcachedHost = "localhost"; + SOGoMemcachedPort = 11211; SOGoUIxDebugEnabled = NO; diff --git a/SoObjects/SOGo/SOGoSystemDefaults.h b/SoObjects/SOGo/SOGoSystemDefaults.h index a79cdc16e..2a166a158 100644 --- a/SoObjects/SOGo/SOGoSystemDefaults.h +++ b/SoObjects/SOGo/SOGoSystemDefaults.h @@ -51,6 +51,7 @@ - (NSTimeInterval) cacheCleanupInterval; - (NSString *) memcachedHost; +- (int) memcachedPort; - (BOOL) userCanChangePassword; - (BOOL) uixAdditionalPreferences; diff --git a/SoObjects/SOGo/SOGoSystemDefaults.m b/SoObjects/SOGo/SOGoSystemDefaults.m index 7a146d2b9..f9ed9531b 100644 --- a/SoObjects/SOGo/SOGoSystemDefaults.m +++ b/SoObjects/SOGo/SOGoSystemDefaults.m @@ -260,6 +260,11 @@ BootstrapNSUserDefaults () return [self stringForKey: @"SOGoMemcachedHost"]; } +- (int) memcachedPort +{ + return [self integerForKey: @"SOGoMemcachedPort"]; +} + - (BOOL) uixDebugEnabled { return [self boolForKey: @"SOGoUIxDebugEnabled"]; diff --git a/UI/Scheduler/UIxCalListingActions.m b/UI/Scheduler/UIxCalListingActions.m index 19b6d4f41..f5de5ffeb 100644 --- a/UI/Scheduler/UIxCalListingActions.m +++ b/UI/Scheduler/UIxCalListingActions.m @@ -317,7 +317,7 @@ static NSArray *tasksFields = nil; SOGoAppointmentFolders *clientObject; SOGoUser *ownerUser; NSString *owner, *role; - BOOL isErasable, *folderIsRemote; + BOOL isErasable, folderIsRemote; infos = [NSMutableArray array]; marker = [NSNull null];