1.1 --- a/imiptools/__init__.py Mon May 18 18:42:27 2015 +0200
1.2 +++ b/imiptools/__init__.py Mon May 18 19:59:38 2015 +0200
1.3 @@ -59,6 +59,12 @@
1.4 self.publishing_dir = None
1.5 self.debug = False
1.6
1.7 + def get_store(self):
1.8 + return self.store_dir and imip_store.FileStore(self.store_dir) or None
1.9 +
1.10 + def get_publisher(self):
1.11 + return self.publishing_dir and imip_store.FilePublisher(self.publishing_dir) or None
1.12 +
1.13 def process(self, f, original_recipients, outgoing_only):
1.14
1.15 """
1.16 @@ -94,8 +100,8 @@
1.17 may be constructed according to individual preferences.
1.18 """
1.19
1.20 - store = self.store_dir and imip_store.FileStore(self.store_dir) or None
1.21 - publisher = self.publishing_dir and imip_store.FilePublisher(self.publishing_dir) or None
1.22 + store = self.get_store()
1.23 + publisher = self.get_publisher()
1.24
1.25 handlers = dict([(name, cls(senders, recipient, self.messenger, store, publisher))
1.26 for name, cls in self.handlers])
1.27 @@ -227,7 +233,7 @@
1.28 utcnow = get_timestamp()
1.29 uid = "imip-agent-%s-%s" % (utcnow, recipient)
1.30
1.31 - freebusy = imip_store.FileStore().get_freebusy(organiser)
1.32 + freebusy = (self.get_store() or imip_store.FileStore()).get_freebusy(organiser)
1.33 return to_part("PUBLISH", [make_freebusy(freebusy, uid, organiser, organiser_attr)])
1.34
1.35 return None