
                             S SK Jr  S SKJr  S SKJr  S SKJr  S SKJr  S SK	J
r
  S SKJr  S SKJr  S S	KJr  S S
KJr   " S S\
5      r SS jr SS jrg)    )
xform_name)OperationModel)get_service_module_name)document_model_driven_method)document_custom_method)BaseDocumenter)%document_model_driven_resource_method)get_resource_ignore_params)get_resource_public_actions)add_resource_type_overviewc                       \ rS rSrS rSrg)ActionDocumenter   c           
         U R                   R                  n0 nU H  nXCUR                  '   M     [        U R                  R
                  5      n[        U5      U R                  S'   [        USSSS9  [        U5       GH
  nUR                  U5      nUS;   a  U R                   R                  (       aj  [        UUU R                  U R                  R                  R                  R                  R                  U R                   R                  U R                   S9  M  Xc;   aW  [#        UU R                  U R                  R                  R                  R                  R                  X6   U R                   S9  M  [%        XvXV   5        GM     g )	NactionsActionszActions call operations on resources.  They may automatically handle the passing in of arguments set from identifiers and some attributes.actions_intro)sectionresource_typedescription
intro_link)loadreload)r   action_nameresource_nameevent_emitter
load_modelservice_model)r   r   r   action_modelr   )_resource_modelr   namer   	_resource	__class__sorted
member_mapr   add_new_sectionr   document_load_reload_action_resource_namemetaclientevents_service_modeldocument_actionr   )selfr   modeled_actions_listmodeled_actionsmodeled_actionresource_actionsr   action_sections           $lib/third_party/boto3/docs/action.pydocument_actions!ActionDocumenter.document_actions   sZ   #33;;2N3AN//0 36NN$$&%+,<%=	""#8 '	( ""23K$44[AN00T5I5I5N5N+* +"&"5"5"&.."5"5"<"<"A"A"H"H#3388"&"5"5 /*"&"5"5"&.."5"5"<"<"A"A"H"H!0!="&"5"5 '"1A1NP) 4     N)__name__
__module____qualname____firstlineno__r5   __static_attributes__r8   r7   r4   r   r      s    &Pr7   r   c                    UR                  UR                  R                  5      n[        UR                  R                  5      nSnUR
                  (       a  [        UR
                  R                  5      n[        U5      n	UR                  U:X  a  Un	U< SU	< SUR                  < 3n
[        XR                  UUUR                  U
UUUS9	  g)a  Documents a resource action

:param section: The section to write to

:param resource_name: The name of the resource

:param event_emitter: The event emitter to use to emit events

:param action_model: The model of the action

:param service_model: The model of the service

:param include_signature: Whether or not to include the signature.
    It is useful for generating docstrings.
responsez = .)	r   method_nameoperation_modelr   method_descriptionexample_prefixexclude_inputresource_action_modelinclude_signatureN)rB   request	operationr
   paramsresourcer   typeservice_namer!   r	   documentation)r   r   r   r   r   rG   rB   ignore_paramsexample_return_valueexample_resource_namerD   s              r4   r-   r-   D   s    " $33&&(O.|/C/C/J/JKM%),*?*?*D*DE&}5!!]2 -3\5F5FHN)%6%6'#*88%#*+	r7   c           
          S[        U5      < S[        UR                  R                  5      < SU< S3n[        U5      nUR                  U:X  a  UnU< SU< 3n	[        X[        0 U5      UUU	US9  g)a  Documents the resource load action

:param section: The section to write to

:param action_name: The name of the loading action should be load or reload

:param resource_name: The name of the resource

:param event_emitter: The event emitter to use to emit events

:param load_model: The model of the load action

:param service_model: The model of the service

:param include_signature: Whether or not to include the signature.
    It is useful for generating docstrings.
zCalls  :py:meth:`z.Client.z"` to update the attributes of the ze resource. Note that the load and reload methods are the same method and can be used interchangeably.r@   )r   rA   rB   r   rC   rD   rG   N)r   r   rH   rI   rM   r   r   )
r   r   r   r   r   r   rG   r   rQ   rD   s
             r4   r'   r'   m   sy    0 $M2z))334	  '}5!!]2 - 5{CN &r=9#&%+r7   N)T)botocorer   botocore.modelr   botocore.utilsr   botocore.docs.methodr   r   boto3.docs.baser   boto3.docs.methodr	   boto3.docs.utilsr
   r   r   r   r-   r'   r8   r7   r4   <module>rZ      sI      ) 2 = 7 * C 7 8 7'P~ 'PV 6:&V 37'r7   