From e21ab06e34a6964dc6422d3ed8ca4daafdd2e260 Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Thu, 26 Aug 2010 14:59:45 +0000 Subject: Read the public and private keys lazily --- (limited to 'src/sugar') diff --git a/src/sugar/profile.py b/src/sugar/profile.py index 1883717..2ed5aa6 100644 --- a/src/sugar/profile.py +++ b/src/sugar/profile.py @@ -53,8 +53,19 @@ class Profile(object): self._pubkey = None self._privkey_hash = None - self.pubkey = self._load_pubkey() - self.privkey_hash = self._hash_private_key() + def _get_pubkey(self): + if self._pubkey is None: + self._pubkey = self._load_pubkey() + return self._pubkey + + pubkey = property(fget=_get_pubkey) + + def _get_privkey_hash(self): + if self._privkey_hash is None: + self._privkey_hash = self._hash_private_key() + return self._privkey_hash + + privkey_hash = property(fget=_get_privkey_hash) def is_valid(self): client = gconf.client_get_default() -- cgit v0.9.1