HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //proc/722141/root/lib/python3.6/site-packages/awscli/__pycache__/clidocs.cpython-36.pyc
3

�T_n�@s�ddlZddlZddlmZddlmZddlmZddlm	Z	ddl
mZddlm
Z
ddlmZdd	lmZeje�ZGd
d�de�ZGdd
�d
e�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZdS)�N)�
xform_name)�StringShape)�is_json_value_header)�SCALAR_TYPES)�ParamShorthandDocGen)�
DOC_EVENTS)�
TopicTagDB)�%find_service_and_method_in_event_namec@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)S)*�CLIDocumentEventHandlercCs,||_|j|j|j�|j|�|_g|_dS)N)�help_command�register�session�event_class�_build_arg_table_groups�_arg_groups�_documented_arg_groups)�selfr�r�/usr/lib/python3.6/clidocs.py�__init__sz CLIDocumentEventHandler.__init__cCs>i}x4|jj�D]&\}}|jdk	r|j|jg�j|�qW|S)N)�	arg_table�items�
group_name�
setdefault�append)rrZ
arg_groups�name�argrrrr$s

z/CLIDocumentEventHandler._build_arg_table_groupscCst|�rdS|S)NZJSON)r)r�shape�defaultrrr�_get_argument_type_name+sz/CLIDocumentEventHandler._get_argument_type_namecCszxttD]l}|jdd�}t||�rt||�}t|}t|jd��d}|fd|}	|||	}
||}||
||�qWdS)N�-�_�.��*)r$)r�replace�hasattr�getattr�len�split)rr
rZmapfnZeventZevent_handler_nameZ
event_handler�
format_stringZnum_argsZformat_argsZevent_stringZ	unique_idrrr�
_map_handlers0s


z%CLIDocumentEventHandler._map_handlerscCs|j|||j�dS)a:
        The default register iterates through all of the
        available document events and looks for a corresponding
        handler method defined in the object.  If it's there, that
        handler method will be registered for the all events of
        that type for the specified ``event_class``.
        N)r+r)rr
rrrrr<sz CLIDocumentEventHandler.registercCs |j|jj|jj|jjj�dS)a>
        The default unregister iterates through all of the
        available document events and looks for a corresponding
        handler method defined in the object.  If it's there, that
        handler method will be unregistered for the all events of
        that type for the specified ``event_class``.
        N)r+rr
r�
unregister)rrrrr,Fs
z"CLIDocumentEventHandler.unregistercKs�|j}|jdkr�|jjd�}|jd�|jd�dg}xD|dd�D]4}|jd�|j|�dj|�}|jd	||f�qDW|jd
�dS)N�manr"z[ z:ref:`aws <cli:aws>`�aws�z . � z:ref:`%s <cli:%s>`z ]���)�doc�targetrr)�writer�join)rr�kwargsr2Z	cmd_namesZ
full_cmd_list�cmdZ
full_cmd_namerrr�doc_breadcrumbsTs





z'CLIDocumentEventHandler.doc_breadcrumbscKsN|j}|jj�|jjdd�}|dkr.d|}|jd|�|jj|j�dS)Nr"r0r.zaws z.. _cli:%s:)r2�style�
new_paragraphrr%�writeln�h1r)rrr6r2Z	referencerrr�	doc_titlebs
z!CLIDocumentEventHandler.doc_titlecKs,|j}|jjd�|j|j�|jj�dS)N�Description)r2r9�h2�include_doc_string�descriptionr:)rrr6r2rrr�doc_descriptionksz'CLIDocumentEventHandler.doc_descriptioncKs6g|_|j}|jjd�|jj�|jd|j�dS)N�Synopsisz%s)rr2r9r?�start_codeblockr;r)rrr6r2rrr�doc_synopsis_startqs

z*CLIDocumentEventHandler.doc_synopsis_startcKs�|j}|j|}|j|jkrX|j|jkr,dSdjdd�|j|jD��}|jj|j�n"|jjd�rpd|j}n
d|j}|j	p�t
|dd�s�d	|}|jd
|�dS)Nz | cSsg|]
}|j�qSr)�cli_name)�.0�arrr�
<listcomp>�sz?CLIDocumentEventHandler.doc_synopsis_option.<locals>.<listcomp>z--z
%s <value>z<%s>Z_DOCUMENT_AS_REQUIREDFz[%s]z%s)r2rrrrr5rrF�
startswithZrequiredr'r;)r�arg_namerr6r2�argumentZ
option_strrrr�doc_synopsis_optionxs 

z+CLIDocumentEventHandler.doc_synopsis_optioncKs|j}|jj�g|_dS)N)r2r9�
end_codeblockr)rrr6r2rrr�doc_synopsis_end�s
z(CLIDocumentEventHandler.doc_synopsis_endcKs&|j}|jjd�|js"|jd�dS)N�Optionsz*None*
)r2r9r?rr4)rrr6r2rrr�doc_options_start�sz)CLIDocumentEventHandler.doc_options_startcKs�|j}|j|}|j|jkrX|j|jkr,dSdjdd�|j|jD��}|jj|j�n
d|j}|jd||j	|j
|j�f�|jj
�|j|j�t|d�r�|j|j
|�|j|j
|�|jj�|jj�dS)Nz | cSsg|]}d|j�qS)z``%s``)rF)rGrHrrrrI�sz6CLIDocumentEventHandler.doc_option.<locals>.<listcomp>z``%s``z%s (%s)
�argument_model)r2rrrrr5rrFr4rrR�
cli_type_namer9�indentr@�
documentationr&�_document_enums�_document_nested_structure�dedentr:)rrKrr6r2rLrrrr�
doc_option�s&




z"CLIDocumentEventHandler.doc_optioncKs|jr|j}|jjd�dS)NzSee Also)Z
related_itemsr2r9r?)rrr6r2rrr�doc_relateditems_start�sz.CLIDocumentEventHandler.doc_relateditems_startcKs2|j}|jd�|jjd||d�|jd�dS)Nz* zcli:%s)�label�text�
)r2r4r9�sphinx_reference_label)rrZrelated_itemr6r2rrr�doc_relateditem�s
z'CLIDocumentEventHandler.doc_relateditemcCs\t|t�rX|jrX|jj�|jd�|jj�x|jD]}|jjd|�q6W|jj�dS)z#Documents top-level parameter enumszPossible values:z``%s``N)	�
isinstancer�enumr9r:r4�start_ul�li�end_ul)r�modelr2rarrrrV�s



z'CLIDocumentEventHandler._document_enumsc
Cs�t|dd�}|dkrDx�|jj�D]\}}|j||||jgd�q Wn~|dkrf|j|d|j|jgd�n\|dkr�|j}|jjdd	�}|j||||jgd�|j	}|jjdd
�}	|j||	||jgd�dS)z5Recursively documents parameters in nested structures�	type_nameN�	structure)�stack�list��mapr�key�value)
r'�membersr�_doc_memberr�memberrl�
serialization�getrm)
rrer2�member_type_name�member_name�member_shape�	key_shape�key_name�value_shape�
value_namerrrrW�s
z2CLIDocumentEventHandler._document_nested_structurecCsb|j|kr2|j|j�dkr2|jdkr.|jd�dS|j|j�z|j||||�Wd|j�XdS)Nr/rgz( ... recursive ... ))r�countrfr4r�_do_doc_member�pop)rr2rtrurhrrrro�s


z#CLIDocumentEventHandler._doc_memberc
Cs|j}|r(|jd||j||j�f�n|jd|j�|jj�|jj�|j|�|jj�|j}|dkr�x�|jj	�D]\}}|j
||||�qzWnn|dkr�|j}	|	jj
dd�}
|j
||
|	|�|j}|jj
dd�}|j
||||�n|dk�r|j
|d	|j|�|jj�|jj�dS)
Nz
%s -> (%s)z(%s)rgrkrrlrmrirj)rUr4rrfr9rTr:r@rnrrorlrqrrrmrprX)
rr2rtrurhZdocsrsZsub_nameZ	sub_shapervrwrxryrrrr{�s0





z&CLIDocumentEventHandler._do_doc_memberN)�__name__�
__module__�__qualname__rrrr+rr,r8r=rBrErMrOrQrYrZr_rVrWror{rrrrr
s(
		r
c@sLeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�ProviderDocumentEventHandlercKsdS)Nr)rr�
event_namer6rrrr8sz,ProviderDocumentEventHandler.doc_breadcrumbscKs0|j}|jjd�|jj|j�|j|j�dS)NrC)r2r9r?Z	codeblockZsynopsisr@Z
help_usage)rrr6r2rrrrEsz/ProviderDocumentEventHandler.doc_synopsis_startcKsdS)Nr)rrKrr6rrrrMsz0ProviderDocumentEventHandler.doc_synopsis_optioncKs|j}|jj�dS)N)r2r9r:)rrr6r2rrrrOsz-ProviderDocumentEventHandler.doc_synopsis_endcKs|j}|jjd�dS)NrP)r2r9r?)rrr6r2rrrrQsz.ProviderDocumentEventHandler.doc_options_startcKsl|j}|j|}|jd|j|jf�|j|j�|jrh|jj	�x|jD]}|jj
|�qJW|jj�dS)Nz``%s`` (%s))r2rr;rFrSr@rU�choicesr9rbrcrd)rrKrr6r2rLZchoicerrrrYs


z'ProviderDocumentEventHandler.doc_optioncKs |j}|jjd�|jj�dS)NzAvailable Services)r2r9r?�toctree)rrr6r2rrr�doc_subitems_start(sz/ProviderDocumentEventHandler.doc_subitems_startcKs"|j}d|}|jj||d�dS)Nz%s/index)�	file_name)r2r9�tocitem)r�command_namerr6r2r�rrr�doc_subitem-sz(ProviderDocumentEventHandler.doc_subitemN)r}r~rr8rErMrOrQrYr�r�rrrrr�sr�c@s\eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�ZdS)�ServiceDocumentEventHandlercKsdS)Nr)rrr6rrrrE6sz.ServiceDocumentEventHandler.doc_synopsis_startcKsdS)Nr)rrKrr6rrrrM9sz/ServiceDocumentEventHandler.doc_synopsis_optioncKsdS)Nr)rrr6rrrrO<sz,ServiceDocumentEventHandler.doc_synopsis_endcKsdS)Nr)rrr6rrrrQ@sz-ServiceDocumentEventHandler.doc_options_startcKsdS)Nr)rrKrr6rrrrYCsz&ServiceDocumentEventHandler.doc_optioncKsdS)Nr)rrKrr6rrr�doc_option_exampleFsz.ServiceDocumentEventHandler.doc_option_examplecKsdS)Nr)rrr6rrr�doc_options_endIsz+ServiceDocumentEventHandler.doc_options_endcKs(|j}|j}|jjd�|j|j�dS)Nr>)r2�objr9r?r@rU)rrr6r2�
service_modelrrrrBLsz+ServiceDocumentEventHandler.doc_descriptioncKs |j}|jjd�|jj�dS)NzAvailable Commands)r2r9r?r�)rrr6r2rrrr�Ssz.ServiceDocumentEventHandler.doc_subitems_startcKsR|j}|j|}t|di�}t|�dkrBd|}|jj||d�n|jj|�dS)N�subcommand_tablerz%s/index)r�)r2Z
command_tabler'r(r9r�)rr�rr6r2Z
subcommandr�r�rrrr�Xs
z'ServiceDocumentEventHandler.doc_subitemN)
r}r~rrErMrOrQrYr�r�rBr�r�rrrrr�3sr�c@sjeZdZdZdd�Zdd�Zdd�Zdd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�OperationDocumentEventHandlerz'https://docs.aws.amazon.com/goto/WebAPIcKs<|j}|j}|jjd�|j|j�|j|�|j|�dS)Nr>)r2r�r9r?r@rU�_add_webapi_crosslink�_add_top_level_args_reference)rrr6r2�operation_modelrrrrBjs
z-OperationDocumentEventHandler.doc_descriptioncCs:|jjd�|jjd�|jjjddd�|jjd�dS)NrjzSee z
'aws help'z/reference/index)�titleZpagez' for descriptions of global parameters.)r2r;r4r9Z
internal_link)rrrrrr�rsz;OperationDocumentEventHandler._add_top_level_args_referencecCsn|j}|j}|j}|jjd�}|dkr*dS|jj�|jd�d|j||j	f}|jj
d|d�|jd�dS)NZuidz
See also: z%s/%s/%szAWS API Documentation)r��linkrj)r2r�r�Zmetadatarrr9r:r4�AWS_DOC_BASErZ
external_linkr;)rrr2r�r�Zservice_uidr�rrrr�{s


z3OperationDocumentEventHandler._add_webapi_crosslinkTcCsPt|t�r4|jr.|r.|j}djdd�|D��SdSn|jdkrBdSd|jSdS)N�|cSsg|]}d|�qS)z"%s"r)rG�crrrrI�szJOperationDocumentEventHandler._json_example_value_name.<locals>.<listcomp>z"string"Zbooleanz
true|falsez%s)r`rrar5rf)rrR�include_enum_valuesr�rrr�_json_example_value_name�s


z6OperationDocumentEventHandler._json_example_value_namec
Cs`|j|kr2|j|j�dkr2|jdkr.|jd�dS|j|j�z|j|||�Wd|j�XdS)Nr/rgz{ ... recursive ... })rrzrfr4r�_do_json_exampler|)rr2rRrhrrr�
_json_example�s


z+OperationDocumentEventHandler._json_examplecCsV|jdkr�|jd�|jjtkr8|jd|j|j��nL|jj�|jj�|j||j|�|jj�|jd�|jj	�|jj�|jd�n�|jdk�r8|jd�|jj�|j|j
�}|jd|�|jjtkr�|j|j|j��n$|jj�|j||j|�|jj	�|jj�|jd�|jj	�|jd	�n|jd
k�rR|j|||�dS)Nri�[z%s, ...z...�]rk�{z%s: �}rg)
rfr4rprr�r9rT�new_liner�rXrlrm�_doc_input_structure_members)rr2rRrhZ
key_stringrrrr��s8














z.OperationDocumentEventHandler._do_json_examplec	Cs |jd�|jj�|jj�|j}x�t|�D]�\}}||}|j}|tkrf|jd||j|�f�np|dkr�|jd|�|j	|||�nJ|dkr�|jd|�|j	|||�n$|dkr�|jd|�|j	|||�|t
|�dkr.|jd�|jj�q.W|jj�|jj�|jd	�dS)
Nr�z"%s": %srgz"%s": rkrir/�,r�)r4r9rTr�rn�	enumeraterfrr�r�r(rX)	rr2rRrhrn�irtZmember_modelrsrrrr��s2





z:OperationDocumentEventHandler._doc_input_structure_memberscKs�t|�\}}|j}|j|}|j|jkr8|j|jkr8dS|j}	t�}
|
j|j�r�|
j	|||�}|dkrjdS|r�|j
j�|jd�|j
j
�x|j�D]}|j|�q�W|j
j�|	dk	o�|	jdko�|	jjtk�rN|	j}
|j
j�|jd�|j
j
�|j|
dd�}|jd||f�t|
t��r8|
j�r8|j||
j�|j
j�|j
j�nN|jtk�r�|j
j�|jd�|j
j
�|j||	gd�|j
j�|j
j�dS)	NzShorthand SyntaxriZSyntaxF)r�z	%s %s ...zJSON Syntax)rh)r	r2rrrrrRrZsupports_shorthandZgenerate_shorthand_exampler9r:r4rD�
splitlinesr;rNrfrprr�r`rra�_write_valid_enumsrSr�)rrKrr�r6Z
service_idZoperation_namer2Zcli_argumentrRZdocgenZexample_shorthand_syntaxZexample_linerpZexample_typerrrr��sP














z0OperationDocumentEventHandler.doc_option_examplecCs>|jj�|jd�x|D]}|jd|�qW|jd�dS)NzWhere valid values are:
z    %s
r])r9r:r4)rr2Zenum_valuesrmrrrr�s



z0OperationDocumentEventHandler._write_valid_enumsc	Ksh|j}|jjd�|j}|j}|dks.|jr:|jd�n*x(|jj�D]\}}|j|||gd�qFWdS)NZOutput�None)rh)	r2r9r?r��output_shapernr4rro)	rrr�r6r2r�r�rtrurrr�
doc_output"sz(OperationDocumentEventHandler.doc_outputcKs|j|�dS)N)r�)rrr6rrrr�-sz-OperationDocumentEventHandler.doc_options_endN)T)r}r~rr�rBr�r�r�r�r�r�r�r�r�r�rrrrr�fs	
 8r�c@sXeZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�ZdS)�TopicListerDocumentEventHandlerasThis is the AWS CLI Topic Guide. It gives access to a set of topics that provide a deeper understanding of the CLI. To access the list of topics from the command line, run ``aws help topics``. To access a specific topic from the command line, run ``aws help [topicname]``, where ``topicname`` is the name of the topic as it appears in the output from ``aws help topics``.cCs,||_|j|j|j�t�|_|jj�dS)N)rrr
rr�
_topic_tag_dbZload_json_index)rrrrrr:sz(TopicListerDocumentEventHandler.__init__cKs8|j}|jdkr4|jd�|jjddd�|jd�dS)Nr-z[ zcli:awsr.)r[r\z ])r2r3r4r9r^)rrr6r2rrrr8@s


z/TopicListerDocumentEventHandler.doc_breadcrumbscKs8|j}|jj�|jjd|jjdd�|jjd�dS)Nzcli:aws help %srj)�refnamer�zAWS CLI Topic Guide)r2r9r:�link_target_definitionrrr<)rrr6r2rrrr=Gs

z)TopicListerDocumentEventHandler.doc_titlecKs,|j}|jjd�|j|j�|jj�dS)Nr>)r2r9r?r@�DESCRIPTIONr:)rrr6r2rrrrBOsz/TopicListerDocumentEventHandler.doc_descriptioncKsdS)Nr)rrr6rrrrEUsz2TopicListerDocumentEventHandler.doc_synopsis_startcKsdS)Nr)rrr6rrrrOXsz0TopicListerDocumentEventHandler.doc_synopsis_endcKsdS)Nr)rrr6rrrrQ[sz1TopicListerDocumentEventHandler.doc_options_startcKsdS)Nr)rrr6rrrr�^sz/TopicListerDocumentEventHandler.doc_options_endc
Ks�|j}|jjd�|jjd�}|jj�}t|j��}xr|D]j}|jj|�|jj	�xNt||�D]>}|jj
|d�}	|jd�|jjd||d�|jd|	�qbWq:W|jj
�x|D]}|jj|�q�WdS)NzAvailable Topics�categoryrAz* zcli:aws help %s)r[r\z: %s
)r2r9r?r�ZqueryZget_all_topic_names�sorted�keysZh3r:�get_tag_single_valuer4r^Zhidden_toctreeZhidden_tocitem)
rrr6r2Z
categoriesZtopic_namesZcategory_namesZ
category_nameZ
topic_namerArrrr�as&





z2TopicListerDocumentEventHandler.doc_subitems_startN)
r}r~rr�rr8r=rBrErOrQr�r�rrrrr�1sr�c@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�TopicDocumentEventHandlercKsR|j}|jdkrN|jd�|jjddd�|jd�|jjddd�|jd	�dS)
Nr-z[ zcli:awsr.)r[r\z . zcli:aws help topicsZtopicsz ])r2r3r4r9r^)rrr6r2rrrr8�s


z)TopicDocumentEventHandler.doc_breadcrumbscKsH|j}|jj�|jjd|jjdd�|jj|jd�}|jj|�dS)Nzcli:aws help %srj)r�r�r�)	r2r9r:r�rrr�r�r<)rrr6r2r�rrrr=�s


z#TopicDocumentEventHandler.doc_titlecKs@|j}tjj|jj|jd�}|j|�}|j|�|j	j
�dS)Nz.rst)r2�os�pathr5r�Z	topic_dirr�_remove_tags_from_contentr;r9r:)rrr6r2Ztopic_filename�contentsrrrrB�s

z)TopicDocumentEventHandler.doc_descriptioncCsZt|d��}|j�}WdQRXd}x$t|�D]\}}|j|�s,|}Pq,Wdj||d��S)N�rrrj)�open�	readlinesr��
_line_has_tagr5)r�filename�f�linesZcontent_begin_indexr��linerrrr��s
z3TopicDocumentEventHandler._remove_tags_from_contentcCs,x&|jjD]}|jd|d�r
dSq
WdS)N�:TF)r�Z
valid_tagsrJ)rr��tagrrrr��sz'TopicDocumentEventHandler._line_has_tagcKsdS)Nr)rrr6rrrr��sz,TopicDocumentEventHandler.doc_subitems_startN)	r}r~rr8r=rBr�r�r�rrrrr�s
r�)Zloggingr�ZbotocorerZbotocore.modelrZbotocore.utilsrZawsclirZawscli.argprocessrZawscli.bcdoc.doceventsrZawscli.topictagsrZawscli.utilsr	Z	getLoggerr}ZLOG�objectr
r�r�r�r�r�rrrr�<module>
s$
k-3LN