o
    Ü!d³
  ã                   @   s|   d dl mZ d dlmZ d dlmZmZmZmZm	Z	m
Z
mZmZmZ d dlmZ dd„ Zdd„ Zd	d
„ ZG dd„ deƒZdS )é    )Úutils)ÚBasicCommand)	ÚListCommandÚWebsiteCommandÚ	CpCommandÚ	MvCommandÚ	RmCommandÚSyncCommandÚ	MbCommandÚ	RbCommandÚPresignCommand)Úregister_sync_strategiesc                 C   s   |   dt¡ |   dt¡ dS )zç
    This function is require to use the plugin.  It calls the functions
    required to add all necessary commands and parameters to the CLI.
    This function is necessary to install the plugin using a configuration
    file
    zbuilding-command-table.mainzbuilding-command-table.syncN)ÚregisterÚadd_s3r   )Úcli© r   ú?usr/lib/python3.10/site-packages/awscli/customizations/s3/s3.pyÚawscli_initialize   s   r   c                 C   s   t | ƒ dS )z}
    This is a wrapper to make the plugin built-in to the cli as opposed
    to specifying it in the configuration file.
    N)r   )Zevent_handlersr   r   r   Ús3_plugin_initialize!   s   r   c                 K   s   t  | dd¡ t|ƒ| d< dS )z|
    This creates a new service object for the s3 plugin.  It sends the
    old s3 commands to the namespace ``s3api``.
    Ús3Zs3apiN)r   Zrename_commandÚS3)Zcommand_tableZsessionÚkwargsr   r   r   r   )   s   r   c                   @   sr   e Zd ZdZe d¡ZdZdedœde	dœde
dœdedœd	edœd
edœdedœdedœdedœg	Zdd„ ZdS )r   r   zs3/_concepts.rstzaws s3 <Command> [<Arg> ...]Zls)ÚnameZcommand_classZwebsiteÚcpÚmvZrmÚsyncÚmbÚrbZpresignc                 C   s   |j d u r	tdƒ‚d S )NzVusage: aws [options] <command> <subcommand> [parameters]
aws: error: too few arguments)Z
subcommandÚ
ValueError)ÚselfZparsed_argsZparsed_globalsr   r   r   Ú	_run_mainB   s   
ÿzS3._run_mainN)Ú__name__Ú
__module__Ú__qualname__ÚNAMEr   Z	FROM_FILEZDESCRIPTIONZSYNOPSISr   r   r   r   r   r	   r
   r   r   ZSUBCOMMANDSr    r   r   r   r   r   2   s    
÷r   N)Zawscli.customizationsr   Zawscli.customizations.commandsr   Z$awscli.customizations.s3.subcommandsr   r   r   r   r   r	   r
   r   r   Z.awscli.customizations.s3.syncstrategy.registerr   r   r   r   r   r   r   r   r   Ú<module>   s   ,	