From 9b00eaa966e8eddfdfc8647a384235edddfac09b Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 2 Aug 2011 20:44:15 +0000 Subject: [PATCH] Monotone-Parent: 5b9fba133560acdca3843326561c729dd28fc4cc Monotone-Revision: 7e2d84b941087b6996499d8c6a6832f1b87db837 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2011-08-02T20:44:15 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 3 +++ OpenChange/MAPIStoreFolder.h | 4 ++++ OpenChange/MAPIStoreFolder.m | 8 ++++++++ 3 files changed, 15 insertions(+) diff --git a/ChangeLog b/ChangeLog index 400093289..643378c0a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2011-08-02 Wolfgang Sourdeau + * OpenChange/MAPIStoreFolder.m (-permissionsTable): new method + that returns a permissions table for the current folder. + * OpenChange/MAPIStorePermissionsTable.[hm]: new class module for handling permission objects. Currently only provide stub entries for the "anonymous" and "default" users. diff --git a/OpenChange/MAPIStoreFolder.h b/OpenChange/MAPIStoreFolder.h index 1daddb573..f9265d9cb 100644 --- a/OpenChange/MAPIStoreFolder.h +++ b/OpenChange/MAPIStoreFolder.h @@ -39,6 +39,7 @@ @class MAPIStoreFAIMessageTable; @class MAPIStoreFolderTable; @class MAPIStoreMessageTable; +@class MAPIStorePermissionsTable; @class SOGoMAPIFSFolder; @class SOGoMAPIFSMessage; @@ -70,6 +71,9 @@ - (id) lookupMessageByURL: (NSString *) messageURL; - (id) lookupFolderByURL: (NSString *) folderURL; +/* permissions */ +- (MAPIStorePermissionsTable *) permissionsTable; + /* message objects and tables */ - (id) lookupMessage: (NSString *) messageKey; - (NSArray *) messageKeys; diff --git a/OpenChange/MAPIStoreFolder.m b/OpenChange/MAPIStoreFolder.m index e65ea16a6..c1159f346 100644 --- a/OpenChange/MAPIStoreFolder.m +++ b/OpenChange/MAPIStoreFolder.m @@ -38,6 +38,7 @@ #import "MAPIStoreFolderTable.h" #import "MAPIStoreMapping.h" #import "MAPIStoreMessage.h" +#import "MAPIStorePermissionsTable.h" #import "MAPIStoreTypes.h" #import "NSDate+MAPIStore.h" #import "NSString+MAPIStore.h" @@ -591,6 +592,8 @@ Class NSExceptionK, MAPIStoreFAIMessageK, MAPIStoreMessageTableK, MAPIStoreFAIMe table = [self faiMessageTable]; else if (tableType == MAPISTORE_FOLDER_TABLE) table = [self folderTable]; + else if (tableType == MAPISTORE_PERMISSIONS_TABLE) + table = [self permissionsTable]; else { table = nil; @@ -943,6 +946,11 @@ Class NSExceptionK, MAPIStoreFAIMessageK, MAPIStoreMessageTableK, MAPIStoreFAIMe return url; } +- (MAPIStorePermissionsTable *) permissionsTable +{ + return [MAPIStorePermissionsTable tableForContainer: self]; +} + - (uint64_t) objectId { uint64_t objectId;