U
    g	                     @   sd   d dl 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
 d dlmZ G dd	 d	eZdS )
    N)Optional)DownloadManager)DriverCacheManager)DriverManager)OperationSystemManager)OperaDriverc                
       sP   e Zd Zdee eeeeee ee ee d fddZed	d
dZ	  Z
S )OperaDriverManagerNoperadriver>https://github.com/operasoftware/operachromiumdriver/releases/Nhttps://api.github.com/repos/operasoftware/operachromiumdriver/releases/latestPhttps://api.github.com/repos/operasoftware/operachromiumdriver/releases/tags/{0})versionnameurllatest_release_urlopera_release_tagdownload_managercache_manageros_system_managerc	           	   	      s.   t  j||d t|||||| j|d| _d S )N)r   r   )r   Zdriver_versionr   r   r   http_clientr   )super__init__r   r   driver)	selfr   r   r   r   r   r   r   r   	__class__ ;/tmp/pip-unpacked-wheel-xqmqzw3s/webdriver_manager/opera.pyr      s    zOperaDriverManager.__init__)returnc                 C   sp   |  | j}tj|sHt|D ]$}d|kr"ttj||  qHq"tj|t|d }t|d |S )NZ
sha512_sumr   i  )	Z_get_driver_binary_pathr   ospathisfilelistdirremovejoinchmod)r   Zdriver_pathr   r   r   r   install)   s    zOperaDriverManager.install)Nr	   r
   r   r   NNN)__name__
__module____qualname__r   strr   r   r   r   r&   __classcell__r   r   r   r   r      s&           r   )r   typingr   Z'webdriver_manager.core.download_managerr   Z#webdriver_manager.core.driver_cacher   Zwebdriver_manager.core.managerr   Z!webdriver_manager.core.os_managerr   Zwebdriver_manager.drivers.operar   r   r   r   r   r   <module>   s   