diff options
| author | drebs <drebs@leap.se> | 2015-06-04 11:21:40 -0300 | 
|---|---|---|
| committer | drebs <drebs@leap.se> | 2015-06-04 11:21:40 -0300 | 
| commit | 293c71080e9a21115d248e46d1a706c53cc8ee37 (patch) | |
| tree | 3353672f1f770ef5f5c87ea7e3e27debe737a50b /scripts/profiling/mail/soledad_client.py | |
| parent | fa7708e256ba56cd1e9913993d68611b4ae95824 (diff) | |
| parent | 9fb1c47ca7da06d6feef6846b812aec28128ed78 (diff) | |
Merge tag '0.7.0'
Tag version 0.7.0.
Conflicts:
	CHANGELOG
	client/src/leap/soledad/client/__init__.py
	client/src/leap/soledad/client/sqlcipher.py
	client/src/leap/soledad/client/target.py
	server/pkg/soledad-server
Diffstat (limited to 'scripts/profiling/mail/soledad_client.py')
| -rw-r--r-- | scripts/profiling/mail/soledad_client.py | 40 | 
1 files changed, 40 insertions, 0 deletions
| diff --git a/scripts/profiling/mail/soledad_client.py b/scripts/profiling/mail/soledad_client.py new file mode 100644 index 00000000..5ac8ce39 --- /dev/null +++ b/scripts/profiling/mail/soledad_client.py @@ -0,0 +1,40 @@ +import tempfile +import os +import shutil + +from leap.soledad.client import Soledad + + +class SoledadClient(object): + +    def __init__(self, uuid, server_url, auth_token): +        self._uuid = uuid +        self._server_url = server_url +        self._auth_token = auth_token +        self._tempdir = None +        self._soledad = None + +    @property +    def instance(self): +        if self._soledad is None: +            self._soledad = self._get_soledad_client() +        return self._soledad + +    def _get_soledad_client(self): +        self._tempdir = tempfile.mkdtemp() +        return Soledad( +            uuid=self._uuid, +            passphrase=u'123', +            secrets_path=os.path.join(self._tempdir, 'secrets.json'), +            local_db_path=os.path.join(self._tempdir, 'soledad.db'), +            server_url=self._server_url, +            cert_file=None, +            auth_token=self._auth_token, +            secret_id=None, +            defer_encryption=True) + +    def close(self): +        if self._soledad is not None: +            self._soledad.close() +        if self._tempdir is not None: +            shutil.rmtree(self._tempdir) | 
