From b9e9e98b8a4bf26578170161526a7db808d4b2c4 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Fri, 19 Nov 2010 21:18:43 +0000 Subject: [PATCH] Monotone-Parent: 1bfbaaca3307c1a812cb3497c3ba798763d4cf84 Monotone-Revision: f1900034c6158da6fe5653d397df1fb994977b15 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2010-11-19T21:18:43 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 3 ++ OpenChange/MAPIStoreFreebusyContext.h | 32 +++++++++++++++++ OpenChange/MAPIStoreFreebusyContext.m | 49 +++++++++++++++++++++++++++ OpenChange/MAPIStoreMapping.m | 1 + 4 files changed, 85 insertions(+) create mode 100644 OpenChange/MAPIStoreFreebusyContext.h create mode 100644 OpenChange/MAPIStoreFreebusyContext.m diff --git a/ChangeLog b/ChangeLog index 14fb16dcb..10bb49f8b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2010-11-19 Wolfgang Sourdeau + * OpenChange/MAPIStoreFreebusyContext.[hm]: new class module for + the "SCHEDULE+ FREE BUSY" public folder (0x70001). + * OpenChange/MAPIStoreContext.m (-setPropertiesWithFMID:type:inRow:): renamed to -setPropertiesWithFMID:ofTableType:inRow:. diff --git a/OpenChange/MAPIStoreFreebusyContext.h b/OpenChange/MAPIStoreFreebusyContext.h new file mode 100644 index 000000000..05834cc9a --- /dev/null +++ b/OpenChange/MAPIStoreFreebusyContext.h @@ -0,0 +1,32 @@ +/* MAPIStoreFreebusyContext.h - this file is part of SOGo + * + * Copyright (C) 2010 Inverse inc. + * + * Author: Wolfgang Sourdeau + * + * This file is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#ifndef MAPISTOREFREEBUSYCONTEXT_H +#define MAPISTOREFREEBUSYCONTEXT_H + +#import "MAPIStoreContext.h" + +@interface MAPIStoreFreebusyContext : MAPIStoreContext + +@end + +#endif /* MAPISTOREFREEBUSYCONTEXT_H */ diff --git a/OpenChange/MAPIStoreFreebusyContext.m b/OpenChange/MAPIStoreFreebusyContext.m new file mode 100644 index 000000000..237db42ed --- /dev/null +++ b/OpenChange/MAPIStoreFreebusyContext.m @@ -0,0 +1,49 @@ +/* MAPIStoreFreebusyContext.m - this file is part of $PROJECT_NAME_HERE$ + * + * Copyright (C) 2010 Inverse inc. + * + * Author: Wolfgang Sourdeau + * + * This file is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#import + +#import + +#import "MAPIApplication.h" +#import "MAPIStoreAuthenticator.h" + +#import "MAPIStoreFreebusyContext.h" + +@implementation MAPIStoreFreebusyContext + +- (void) setupModuleFolder +{ + id userFolder; + + userFolder = [SOGoUserFolder objectWithName: [authenticator username] + inContainer: MAPIApp]; + [woContext setClientObject: userFolder]; + [userFolder retain]; // LEAK + + moduleFolder = [userFolder lookupName: @"Calendar" + inContext: woContext + acquire: NO]; + [moduleFolder retain]; +} + +@end diff --git a/OpenChange/MAPIStoreMapping.m b/OpenChange/MAPIStoreMapping.m index d562f39b2..b09910d8f 100644 --- a/OpenChange/MAPIStoreMapping.m +++ b/OpenChange/MAPIStoreMapping.m @@ -51,6 +51,7 @@ [self registerURL: @"sogo://openchange:openchange@contacts/personal" withID: 0x1a0001]; [self registerURL: @"sogo://openchange:openchange@calendar/personal" withID: 0x190001]; [self registerURL: @"sogo://openchange:openchange@tasks/personal" withID: 0x1d0001]; + [self registerURL: @"sogo://openchange:openchange@freebusy/" withID: 0x70001]; } - (id) init