diff options
author | Jefferson Stachelski <jstachel@thoughtworks.com> | 2015-11-06 13:33:47 -0200 |
---|---|---|
committer | Jefferson Stachelski <jstachel@thoughtworks.com> | 2015-11-06 13:33:47 -0200 |
commit | 2a5c8fd4575af9f19db56e4603a8c221020711fd (patch) | |
tree | 7152fb249889d4612783659ea5c211b2efe6a886 /service/pixelated/bitmask_libraries/provider.py | |
parent | 50f599dcc5297b3b29827b2ac02e6a9885b52d62 (diff) |
Refactor - Removed class SoledadSession
The SoledadSession class was removed and some methods implemented there
was moved to LeapSessionFactory and LeapProvider
Diffstat (limited to 'service/pixelated/bitmask_libraries/provider.py')
-rw-r--r-- | service/pixelated/bitmask_libraries/provider.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/service/pixelated/bitmask_libraries/provider.py b/service/pixelated/bitmask_libraries/provider.py index a529208d..75dcd3ae 100644 --- a/service/pixelated/bitmask_libraries/provider.py +++ b/service/pixelated/bitmask_libraries/provider.py @@ -20,6 +20,7 @@ from leap.common.certs import get_digest import requests from .certs import LeapCertificate from pixelated.support.tls_adapter import EnforceTLSv1Adapter +from pixelated.bitmask_libraries.soledad import SoledadDiscoverException class LeapProvider(object): @@ -138,3 +139,16 @@ class LeapProvider(object): def address_for(self, username): return '%s@%s' % (username, self.domain) + + def discover_soledad_server(self, user_uuid): + try: + json_data = self.fetch_soledad_json() + + hosts = json_data['hosts'] + host = hosts.keys()[0] + server_url = 'https://%s:%d/user-%s' % \ + (hosts[host]['hostname'], hosts[host]['port'], + user_uuid) + return server_url + except Exception, e: + raise SoledadDiscoverException(e) |