2525
2626import firebase_admin
2727from firebase_admin import auth
28- from firebase_admin import multi_factor_config_mgt
2928from firebase_admin import _auth_utils
3029from firebase_admin import _http_client
3130from firebase_admin import _utils
31+ from firebase_admin .multi_factor_config_mgt import MultiFactorConfig
32+ from firebase_admin .multi_factor_config_mgt import MultiFactorServerConfig
3233
3334
3435_TENANT_MGT_ATTRIBUTE = '_tenant_mgt'
@@ -93,7 +94,7 @@ def get_tenant(tenant_id, app=None):
9394
9495def create_tenant (
9596 display_name , allow_password_sign_up = None , enable_email_link_sign_in = None ,
96- multi_factor_config : multi_factor_config_mgt . MultiFactorConfig = None , app = None ):
97+ multi_factor_config : MultiFactorConfig = None , app = None ):
9798 """Creates a new tenant from the given options.
9899
99100 Args:
@@ -122,7 +123,7 @@ def create_tenant(
122123
123124def update_tenant (
124125 tenant_id , display_name = None , allow_password_sign_up = None , enable_email_link_sign_in = None ,
125- multi_factor_config : multi_factor_config_mgt . MultiFactorConfig = None , app = None ):
126+ multi_factor_config : MultiFactorConfig = None , app = None ):
126127 """Updates an existing tenant with the given options.
127128
128129 Args:
@@ -189,6 +190,7 @@ def list_tenants(page_token=None, max_results=_MAX_LIST_TENANTS_RESULTS, app=Non
189190 FirebaseError: If an error occurs while retrieving the user accounts.
190191 """
191192 tenant_mgt_service = _get_tenant_mgt_service (app )
193+
192194 def download (page_token , max_results ):
193195 return tenant_mgt_service .list_tenants (page_token , max_results )
194196 return ListTenantsPage (download , page_token , max_results )
@@ -211,7 +213,8 @@ class Tenant:
211213
212214 def __init__ (self , data ):
213215 if not isinstance (data , dict ):
214- raise ValueError ('Invalid data argument in Tenant constructor: {0}' .format (data ))
216+ raise ValueError (
217+ 'Invalid data argument in Tenant constructor: {0}' .format (data ))
215218 if not 'name' in data :
216219 raise ValueError ('Tenant response missing required keys.' )
217220
@@ -238,7 +241,7 @@ def enable_email_link_sign_in(self):
238241 def multi_factor_config (self ):
239242 data = self ._data .get ('mfaConfig' , None )
240243 if data is not None :
241- return multi_factor_config_mgt . MultiFactorServerConfig (data )
244+ return MultiFactorServerConfig (data )
242245 return None
243246
244247
@@ -250,7 +253,8 @@ class _TenantManagementService:
250253 def __init__ (self , app ):
251254 credential = app .credential .get_credential ()
252255 version_header = 'Python/Admin/{0}' .format (firebase_admin .__version__ )
253- base_url = '{0}/projects/{1}' .format (self .TENANT_MGT_URL , app .project_id )
256+ base_url = '{0}/projects/{1}' .format (
257+ self .TENANT_MGT_URL , app .project_id )
254258 self .app = app
255259 self .client = _http_client .JsonHttpClient (
256260 credential = credential , base_url = base_url , headers = {'X-Client-Version' : version_header })
@@ -269,7 +273,7 @@ def auth_for_tenant(self, tenant_id):
269273
270274 client = auth .Client (self .app , tenant_id = tenant_id )
271275 self .tenant_clients [tenant_id ] = client
272- return client
276+ return client
273277
274278 def get_tenant (self , tenant_id ):
275279 """Gets the tenant corresponding to the given ``tenant_id``."""
@@ -286,7 +290,7 @@ def get_tenant(self, tenant_id):
286290
287291 def create_tenant (
288292 self , display_name , allow_password_sign_up = None , enable_email_link_sign_in = None ,
289- multi_factor_config : multi_factor_config_mgt . MultiFactorConfig = None ):
293+ multi_factor_config : MultiFactorConfig = None ):
290294 """Creates a new tenant from the given parameters."""
291295
292296 payload = {'displayName' : _validate_display_name (display_name )}
@@ -297,7 +301,7 @@ def create_tenant(
297301 payload ['enableEmailLinkSignin' ] = _auth_utils .validate_boolean (
298302 enable_email_link_sign_in , 'enableEmailLinkSignin' )
299303 if multi_factor_config is not None :
300- if not isinstance (multi_factor_config , multi_factor_config_mgt . MultiFactorConfig ):
304+ if not isinstance (multi_factor_config , MultiFactorConfig ):
301305 raise ValueError (
302306 'multi_factor_config must be of type MultiFactorConfig.' )
303307 payload ['mfaConfig' ] = multi_factor_config .build_server_request ()
@@ -311,7 +315,7 @@ def create_tenant(
311315 def update_tenant (
312316 self , tenant_id , display_name = None , allow_password_sign_up = None ,
313317 enable_email_link_sign_in = None ,
314- multi_factor_config : multi_factor_config_mgt . MultiFactorConfig = None ):
318+ multi_factor_config : MultiFactorConfig = None ):
315319 """Updates the specified tenant with the given parameters."""
316320 if not isinstance (tenant_id , str ) or not tenant_id :
317321 raise ValueError ('Tenant ID must be a non-empty string.' )
@@ -326,12 +330,14 @@ def update_tenant(
326330 payload ['enableEmailLinkSignin' ] = _auth_utils .validate_boolean (
327331 enable_email_link_sign_in , 'enableEmailLinkSignin' )
328332 if multi_factor_config is not None :
329- if not isinstance (multi_factor_config , multi_factor_config_mgt .MultiFactorConfig ):
330- raise ValueError ('multi_factor_config must be of type MultiFactorConfig.' )
333+ if not isinstance (multi_factor_config , MultiFactorConfig ):
334+ raise ValueError (
335+ 'multi_factor_config must be of type MultiFactorConfig.' )
331336 payload ['mfaConfig' ] = multi_factor_config .build_server_request ()
332337
333338 if not payload :
334- raise ValueError ('At least one parameter must be specified for update.' )
339+ raise ValueError (
340+ 'At least one parameter must be specified for update.' )
335341
336342 url = '/tenants/{0}' .format (tenant_id )
337343 update_mask = ',' .join (_auth_utils .build_update_mask (payload ))
0 commit comments