Skip to content

Commit 656a4f2

Browse files
committed
Add fuctionality to calculate elapsed
1 parent d48e879 commit 656a4f2

File tree

2 files changed

+22
-7
lines changed

2 files changed

+22
-7
lines changed

uid2_client/identity_map_client.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import base64
22
import datetime as dt
33
import json
4+
import time
45
from datetime import timezone
56

67
from .identity_buckets_response import IdentityBucketsResponse
@@ -37,9 +38,12 @@ def __init__(self, base_url, api_key, client_secret):
3738
def generate_identity_map(self, identity_map_input):
3839
req, nonce = make_v2_request(self._client_secret, dt.datetime.now(tz=timezone.utc),
3940
identity_map_input.get_identity_map_input_as_json_string().encode())
41+
start_time = time.time()
4042
resp = post(self._base_url, '/v2/identity/map', headers=auth_headers(self._api_key), data=req)
4143
resp_body = parse_v2_response(self._client_secret, resp.read(), nonce)
42-
return IdentityMapResponse(resp_body, identity_map_input)
44+
end_time = time.time()
45+
elapsed_time = end_time - start_time
46+
return IdentityMapResponse(resp_body, identity_map_input, elapsed_time)
4347

4448
def get_identity_buckets(self, since_timestamp):
4549
req, nonce = make_v2_request(self._client_secret, dt.datetime.now(tz=timezone.utc),

uid2_client/identity_map_response.py

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,21 @@
22

33

44
class IdentityMapResponse:
5-
def __init__(self, response, identity_map_input):
5+
def __init__(self, response, identity_map_input, elapsed_time=None):
66
self._mapped_identities = {}
77
self._unmapped_identities = {}
8-
self.response_json = json.loads(response)
9-
self._status = self.response_json["status"]
8+
self._response = response
9+
self._elapsed_time = None
10+
response_json = json.loads(response)
11+
self._status = response_json["status"]
12+
13+
if elapsed_time is not None:
14+
self._elapsed_time = elapsed_time
1015

1116
if not self.is_success():
1217
raise ValueError("Got unexpected identity map status: " + self._status)
1318

14-
body = self.response_json["body"]
19+
body = response_json["body"]
1520

1621
for identity in body.get("mapped", []):
1722
raw_diis = self._get_raw_diis(identity, identity_map_input)
@@ -44,9 +49,15 @@ def unmapped_identities(self):
4449
@property
4550
def status(self):
4651
return self._status
52+
53+
@property
54+
def elapsed_time(self):
55+
return self._elapsed_time
4756

48-
def response_json(self):
49-
return self.response_json
57+
58+
@property
59+
def response(self):
60+
return self._response
5061

5162

5263
class MappedIdentity:

0 commit comments

Comments
 (0)