Skip to content

Commit 178c966

Browse files
committed
support timeout for all requests
1 parent b620f72 commit 178c966

File tree

2 files changed

+19
-11
lines changed

2 files changed

+19
-11
lines changed

osisoft/pidevclub/piwebapi/api_client.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ def __call_api(self, resource_path, method,
136136
response_data = self.request(method, url,
137137
query_params=query_params,
138138
headers=header_params,
139-
body=body)
139+
body=body, _request_timeout=_request_timeout)
140140

141141
return_data = response_data
142142
if _preload_content:
@@ -321,12 +321,13 @@ def call_api(self, resource_path, method,
321321
thread.start()
322322
return thread
323323

324-
def request(self, method, url, query_params=None, headers=None, body=None):
324+
def request(self, method, url, query_params=None, headers=None, body=None, _request_timeout=None):
325325

326326
return self.rest_client.send_request(url, method,
327327
body=body,
328328
query_params=query_params,
329-
headers=headers)
329+
headers=headers,
330+
_request_timeout=_request_timeout)
330331

331332

332333

osisoft/pidevclub/piwebapi/rest.py

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def __init__(self, verifySsl):
4545
self.verifySsl = verifySsl
4646

4747

48-
def send_request(self, url, method, body, headers=None,query_params=None):
48+
def send_request(self, url, method, body, headers=None, query_params=None, _request_timeout=None):
4949

5050
"""
5151
Makes the HTTP request using RESTClient.
@@ -54,19 +54,26 @@ def send_request(self, url, method, body, headers=None,query_params=None):
5454
url += '?' + urlencode(query_params)
5555

5656
if method == "GET":
57-
response = requests.get(url, auth=self.auth, headers=headers, verify=self.verifySsl)
57+
response = requests.get(url, auth=self.auth, headers=headers,
58+
verify=self.verifySsl, timeout=_request_timeout)
5859
elif method == "HEAD":
59-
response = requests.head(url, auth=self.auth, headers=headers, verify=self.verifySsl)
60+
response = requests.head(url, auth=self.auth, headers=headers,
61+
verify=self.verifySsl, timeout=_request_timeout)
6062
elif method == "OPTIONS":
61-
response = requests.options(url, auth=self.auth, headers=headers, verify=self.verifySsl)
63+
response = requests.options(url, auth=self.auth, headers=headers,
64+
verify=self.verifySsl, timeout=_request_timeout)
6265
elif method == "POST":
63-
response = requests.post(url, json=body, auth=self.auth, headers=headers, verify=self.verifySsl)
66+
response = requests.post(url, json=body, auth=self.auth, headers=headers,
67+
verify=self.verifySsl, timeout=_request_timeout)
6468
elif method == "PUT":
65-
response = requests.put(url, json=body, auth=self.auth, headers=headers, verify=self.verifySsl)
69+
response = requests.put(url, json=body, auth=self.auth, headers=headers,
70+
verify=self.verifySsl, timeout=_request_timeout)
6671
elif method == "PATCH":
67-
response = requests.patch(url, json=body, auth=self.auth, headers=headers, verify=self.verifySsl)
72+
response = requests.patch(url, json=body, auth=self.auth, headers=headers,
73+
verify=self.verifySsl, timeout=_request_timeout)
6874
elif method == "DELETE":
69-
response = requests.delete(url, auth=self.auth, headers=headers, verify=self.verifySsl)
75+
response = requests.delete(url, auth=self.auth, headers=headers,
76+
verify=self.verifySsl, timeout=_request_timeout)
7077
else:
7178
raise ValueError(
7279
"http method must be `GET`, `HEAD`, `OPTIONS`,"

0 commit comments

Comments
 (0)