
    ~                     \    S SK Jr  S SKJrJrJr  S SKJr  S SKJ	r	  S SK
Jr   " S S5      rg)	    )DocumentStructure)ClientContextParamsDocumenterClientDocumenterClientExceptionsDocumenter)PaginatorDocumenter)WaiterDocumenter)DataNotFoundErrorc                   T    \ rS rSrS rS rS rS rS rS r	S r
S	 rSS jrS rSrg
)ServiceDocumenter   c                     X l         Xl        X0l        U R                   R                  USSSS9U l        U R                  R
                  R                  U l        / SQU l        g )Nz	us-east-1foobar)region_nameaws_access_key_idaws_secret_access_key)title
client-apiclient-exceptionspaginator-api
waiter-apiclient-context-params)	_session_service_name_root_docs_pathcreate_client_clientmetaevents_event_emittersections)selfservice_namesessionroot_docs_paths       (lib/third_party/botocore/docs/service.py__init__ServiceDocumenter.__init__   s]    )-}}22##"'	 3 
 #ll//66
    c                    [        U R                  U R                  SS9nU R                  UR	                  S5      5        U R                  UR	                  S5      5        U R                  UR	                  S5      5        U R                  UR	                  S5      5        U R                  UR	                  S5      5        UR	                  S5      nU R                  U5        UR                  5       $ )	zYDocuments an entire service.

:returns: The reStructured text of the documented service.
html)section_namestargetr   r   r   r   r   r   )r   r   r!   r   get_section
client_apiclient_exceptionspaginator_api
waiter_apiclient_context_paramsflush_structure)r"   doc_structurecontext_params_sections      r&   document_service"ServiceDocumenter.document_service/   s    
 *dmmF
 	

=,,W5611,?@}889LMN=44_EF11,?@!.!:!:#"
 	""#9:,,..r)   c                     UR                   R                  U R                  R                  R                  5        U R
                  R                  SU R                   3US9  g )Nzdocs.title.)section)styleh1r   	__class____name__r    emitr   r"   r:   s     r&   r   ServiceDocumenter.titleB   sP    //889  $,,-. 	! 	
r)   c                 8    UR                   R                  SSS9  g )NzTable of Contents   )r   depth)r;   table_of_contentsr@   s     r&   rE   #ServiceDocumenter.table_of_contentsH   s    ''.A'Kr)   c                     S n U R                  U R                  5      n[        U R                  U R
                  U5      R                  U5        g ! [         a     N=f = fN)get_examplesr   r	   r   r   r   document_client)r"   r:   exampless      r&   r/   ServiceDocumenter.client_apiK   s[    	((););<H 	LL$..	

/'
" ! 		s   A 
AAc                 b    [        U R                  U R                  5      R                  U5        g rH   )r   r   r   document_exceptionsr@   s     r&   r0   #ServiceDocumenter.client_exceptionsV   s$    "LL$..	


g
&r)   c                      U R                   R                  U R                  5      nUR                  (       a2  [        U R                  X R                  5      nUR                  U5        g g ! [         a     g f = frH   )	r   get_paginator_modelr   r	   _paginator_configr   r   r   document_paginators)r"   r:   service_paginator_modelpaginator_documenters       r&   r1   ServiceDocumenter.paginator_api[   st    	&*mm&G&G""'#
 #44#657K7K$  !44W=	 5 ! 		s   %A+ +
A87A8c                     U R                   R                  (       aW  U R                  R                  U R                  5      n[        U R                   X R                  5      nUR                  U5        g g rH   )r   waiter_namesr   get_waiter_modelr   r   r   document_waiters)r"   r:   service_waiter_modelwaiter_documenters       r&   r2   ServiceDocumenter.waiter_apih   s_    <<$$#'==#A#A""$  !124H4H! ..w7 %r)   Nc                 h    U R                   R                  S5      nUR                  USU5      nUS   $ )Ndata_loaderz
examples-1rK   )r   get_componentload_service_model)r"   r#   api_versionloaderrK   s        r&   rI   ServiceDocumenter.get_examplesr   s:    ,,];,,,
 
##r)   c                 b   [         R                  nUR                  U R                  / 5      nU R                  R
                  R                  nUR                  nU Vs/ s H  ofR                  U;  d  M  UPM     nnU(       a(  [        U R                  U5      nUR                  U5        g g s  snf rH   )
r   OMITTED_CONTEXT_PARAMSgetr   r   r   service_modelclient_context_parametersnamedocument_context_params)	r"   r:   omitted_paramsparams_to_omitrh   raw_context_paramspcontext_paramscontext_param_documenters	            r&   r3   'ServiceDocumenter.client_context_paramsy   s    6MM'++D,>,>C))77*DD)
)!VV>-IA) 	 
 'D""N($ %<<WE	 
s   B,4B,)r   r    r   r   r   r!   rH   )r>   
__module____qualname____firstlineno__r'   r7   r   rE   r/   r0   r1   r2   rI   r3   __static_attributes__ r)   r&   r   r      s6    
,/&
L	#'
>8$Fr)   r   N)botocore.docs.bcdoc.restdocr   botocore.docs.clientr   r   r   botocore.docs.paginatorr   botocore.docs.waiterr   botocore.exceptionsr	   r   rw   r)   r&   <module>r}      s-    : 
 8 1 1mF mFr)   