File tree Expand file tree Collapse file tree 3 files changed +50
-11
lines changed Expand file tree Collapse file tree 3 files changed +50
-11
lines changed Original file line number Diff line number Diff line change @@ -45,15 +45,23 @@ dicomweb\_client.session_utils module
4545 :show-inheritance:
4646
4747dicomweb\_ client.uri module
48- +++++++++++++++++++++++++++++++++++++
48+ +++++++++++++++++++++++++++
4949
5050.. automodule :: dicomweb_client.uri
5151 :members:
5252 :undoc-members:
5353 :show-inheritance:
5454
55+ dicomweb\_ client.ext.gcp.session_utils module
56+ +++++++++++++++++++++++++++++++++++++++++++++
57+
58+ .. automodule :: dicomweb_client.ext.gcp.session_utils
59+ :members:
60+ :undoc-members:
61+ :show-inheritance:
62+
5563dicomweb\_ client.ext.gcp.uri module
56- +++++++++++++++++++++++++++++++++++++
64+ +++++++++++++++++++++++++++++++++++
5765
5866.. automodule :: dicomweb_client.ext.gcp.uri
5967 :members:
Original file line number Diff line number Diff line change 1+ """Session management utilities for Google Cloud Platform (GCP)."""
2+ from typing import Optional , Any
3+
4+ import google .auth
5+ from google .auth .transport import requests as google_requests
6+ import requests
7+
8+
9+ def create_session_from_gcp_credentials (
10+ google_credentials : Optional [Any ] = None
11+ ) -> requests .Session :
12+ """Creates an authorized session for Google Cloud Platform.
13+
14+ Parameters
15+ ----------
16+ google_credentials: Any
17+ Google Cloud credentials.
18+ (see https://cloud.google.com/docs/authentication/production
19+ for more information on Google Cloud authentication).
20+ If not set, will be initialized to ``google.auth.default()``.
21+
22+ Returns
23+ -------
24+ requests.Session
25+ Google Cloud authorized session.
26+ """
27+ if google_credentials is None :
28+ google_credentials , _ = google .auth .default (
29+ scopes = ['https://www.googleapis.com/auth/cloud-platform' ]
30+ )
31+ return google_requests .AuthorizedSession (google_credentials )
Original file line number Diff line number Diff line change 11import logging
22import os
33from typing import Optional , Any
4+ import warnings
45
56import requests
67
@@ -128,20 +129,19 @@ def create_session_from_gcp_credentials(
128129 -------
129130 requests.Session
130131 Google cloud authorized session
131-
132132 """
133+ warnings .warn (
134+ 'This method shall be deprecated in a future release. Prefer using the '
135+ 'underlying implementation directly, now moved to '
136+ '`dicomweb_client.ext.gcp.session_utils`.' ,
137+ DeprecationWarning )
133138 try :
134- from google .auth .transport import requests as google_requests
135- if google_credentials is None :
136- import google .auth
137- google_credentials , _ = google .auth .default (
138- scopes = ['https://www.googleapis.com/auth/cloud-platform' ]
139- )
139+ import dicomweb_client .ext .gcp .session_utils as gcp_session_utils
140140 except ImportError :
141141 raise ImportError (
142142 'The dicomweb-client package needs to be installed with the '
143143 '"gcp" extra requirements to support interaction with the '
144144 'Google Cloud Healthcare API: pip install dicomweb-client[gcp]'
145145 )
146- logger . debug ( 'initialize, authenticate and authorize HTTP session' )
147- return google_requests . AuthorizedSession ( google_credentials )
146+ return gcp_session_utils . create_session_from_gcp_credentials (
147+ google_credentials )
You can’t perform that action at this time.
0 commit comments