o
    ÙKÕi7  ã                   @   sÌ   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mZmZ d dlmZ G dd	„ d	eƒZG d
d„ deeƒZdefdd„Zde	defdd„Zeddedd�ZdddeedfgdddœZdS )é    )Úmessages)ÚAPIEndpoint)ÚAdditionalInfo)ÚAPIError)ÚUAConfig)Ú
DataObjectÚFieldÚStringDataValue)Úget_versionc                   @   s   e Zd ZejZdS )ÚVersionErrorN)Ú__name__Ú
__module__Ú__qualname__r   ÚE_API_VERSION_ERRORÚ_formatted_msg© r   r   ú?/usr/lib/python3/dist-packages/uaclient/api/u/pro/version/v1.pyr   
   s    
r   c                   @   s*   e Zd Zededd�gZdefdd„ZdS )ÚVersionResultÚinstalled_versionzThe current installed version)Údocc                C   s
   || _ d S ©N©r   )Úselfr   r   r   r   Ú__init__   ó   
zVersionResult.__init__N)r   r   r   r   r	   ÚfieldsÚstrr   r   r   r   r   r      s    ýÿr   Úreturnc                   C   s
   t tƒ ƒS r   )Ú_versionr   r   r   r   r   Úversion   r   r   Úcfgc              
   C   s<   zt ƒ }W n ty } ztt|ƒd�‚d}~ww t|d�S )z?
    This endpoint shows the installed Pro Client version.
    )Ú	error_msgNr   )r
   Ú	Exceptionr   r   r   )r    r   Úer   r   r   r      s   
€ÿ
r   Úv1ÚVersionN)r   ÚnameÚfnÚoptions_clsz27.11FzG
from uaclient.api.u.pro.version.v1 import version

result = version()
z2Raised if the Client cannot determine the version.zpro api u.pro.version.v1z+
{
    "installed_version": "32.3~24.04"
}
)Úintroduced_inÚrequires_networkÚexample_pythonÚresult_classÚ
exceptionsÚexample_cliÚexample_json)Úuaclientr   Úuaclient.api.apir   Úuaclient.api.data_typesr   Úuaclient.api.errorsr   Úuaclient.configr   Úuaclient.data_typesr   r   r	   Úuaclient.versionr
   r   r   r   r   ÚendpointÚ_docr   r   r   r   Ú<module>   s4    üÿ
ó