o
    US`c                     @   s.   d dl mZ d dlmZ G dd dejZdS )    )List)servicec                       sV   e Zd ZdZ		ddededee deded	ef fd
dZdee fddZ	  Z
S )ChromiumServicezd
    Object that manages the starting and stopping the WebDriver instance of the ChromiumDriver
    r   Nexecutable_pathportservice_argslog_pathenvstart_error_messagec                    sB   |pg | _ |r| j d|  |stdt j||||d dS )a4  
        Creates a new instance of the Service

        :Args:
         - executable_path : Path to the WebDriver executable
         - port : Port the service is running on
         - service_args : List of args to pass to the WebDriver service
         - log_path : Path for the WebDriver service to log toz--log-path=%sz'start_error_message should not be empty)r   r	   r
   N)r   appendAttributeErrorsuper__init__)selfr   r   r   r   r	   r
   	__class__ N/usr/local/lib/python3.10/dist-packages/selenium/webdriver/chromium/service.pyr      s   
zChromiumService.__init__returnc                 C   s   d| j  g| j S )Nz	--port=%d)r   r   )r   r   r   r   command_line_args/   s   z!ChromiumService.command_line_args)r   NNNN)__name__
__module____qualname____doc__strintr   dictr   r   __classcell__r   r   r   r   r      s    r   N)typingr   Zselenium.webdriver.commonr   ZServicer   r   r   r   r   <module>   s   