
                             U d Z ddlmZ ddlZddlmZ ddlmZ ddlm	Z	 ddlm
Z ddl
mZ dd	l
mZ dd
l
mZ ej                  dk\  reg ej                   f   Zeed<   neZeed<   dej                   dedefdZy)z<Legacy code that isn't split up into resource based clients.    )CallableN)	discovery)	TypeAlias)client_project)utils)bq_error)bq_id_utils)bq_processor_utils)   	      GetApiClienFunction	apiclientget_routines_api_clientget_models_api_clientc                    t        |t        j                  j                        rd}t	        j
                  | |      }|D ]#  }t        j                  |      |k(  sd|d<   |c S  t        |      |k\  rt        j                  d|      t        j                  d|ddig       t        |t        j                  j                        r7 | j                         j                  di t        |      j!                         S t        |t        j                  j"                        rLt        |      }t$        j&                  |d	<    | j)                         j                  di |j!                         S t        |t        j                  j*                        r7 | j-                         j                  di t        |      j!                         S t        |t        j                  j.                        rS |       j1                         j                  |j2                  |j4                  |j6                  
      j!                         S t        |t        j                  j8                        rS |       j;                         j                  |j2                  |j4                  |j<                        j!                         S t        j>                  d      )z<Get all data returned by the server about a specific object.i  )r   max_resultszbigquery#projectkindzUNumber of projects found exceeded limit, please instead run gcloud projects describe zUnknown reasonnotFoundaccessPolicyVersion)	projectId	datasetIdmodelId)r   r   	routineIdzeType of reference must be one of: ProjectReference, JobReference, DatasetReference, or TableReference ) 
isinstancer	   ApiClientHelperProjectReferencer   list_projectsr
   ConstructObjectReferencelenr   BigqueryErrorBigqueryNotFoundErrorJobReferencejobsgetdictexecuteDatasetReferencebq_client_utils MAX_SUPPORTED_IAM_POLICY_VERSIONdatasetsTableReferencetablesModelReferencemodelsr   r   r   RoutineReferenceroutinesr   BigqueryTypeError)r   r   r   	referencemax_project_resultsprojectsprojectrequests           (platform/bq/clients/client_deprecated.pyget_object_infor;      sd    	;66GGH++)<H 		4	4W	=	J,  8}++"",58  
(
(!#h
%;R  	;66CCD9>>2$y/2::<<)[88IIJ9oG88 !" $9##.g.6688)[88GGH!9!!4DO4<<>>)[88GGH		))))%% 
 


 
	 )[88IIJ!		)))))) 
 


 
	 
$
$	<     )__doc__collections.abcr   sysgoogleapiclientr   typing_extensionsr   clientsr   r   r+   r   r	   r
   version_infoResourcer   __annotations__r;   r   r<   r:   <module>rF      s~    B $ 
 % ' " ,   $
 y #+B	0B0B,B#CyC#+y+?!!?0? /?r<   