38 lines
1.7 KiB
Python
38 lines
1.7 KiB
Python
|
# Maildir repository support
|
||
|
# Copyright (C) 2002 John Goerzen
|
||
|
# <jgoerzen@complete.org>
|
||
|
#
|
||
|
# This program 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 of the License, or
|
||
|
# (at your option) any later version.
|
||
|
#
|
||
|
# This program 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; if not, write to the Free Software
|
||
|
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||
|
|
||
|
from offlineimap.repository.Maildir import MaildirRepository
|
||
|
from offlineimap.folder.GmailMaildir import GmailMaildirFolder
|
||
|
from offlineimap.error import OfflineImapError
|
||
|
|
||
|
class GmailMaildirRepository(MaildirRepository):
|
||
|
def __init__(self, reposname, account):
|
||
|
"""Initialize a MaildirRepository object. Takes a path name
|
||
|
to the directory holding all the Maildir directories."""
|
||
|
super(GmailMaildirRepository, self).__init__(reposname, account)
|
||
|
if self.account.getconfboolean('synclabels', 0) and \
|
||
|
self.account.getconf('status_backend', 'plain') != 'sqlite':
|
||
|
raise OfflineImapError("The GmailMaildir repository needs the sqlite backend to sync labels.\n"
|
||
|
"To enable it add 'status_backend = sqlite' in the account section",
|
||
|
OfflineImapError.ERROR.REPO)
|
||
|
|
||
|
|
||
|
|
||
|
def getfoldertype(self):
|
||
|
return GmailMaildirFolder
|