U
    g	                     @   s6   d dl Z d dlmZ d dlmZ G dd dejZdS )    N)SubprocessStdAlias)servicec                	       sP   e Zd ZdZdeeeejej	e  ejej
eef  edd fddZ  ZS )Serviceat  A Service class that is responsible for the starting and stopping of
    `msedgedriver`.

    :param executable_path: install path of the msedgedriver executable, defaults to `msedgedriver`.
    :param port: Port for the service to run on, defaults to 0 where the operating system will decide.
    :param log_output: (Optional) int representation of STDOUT/DEVNULL, any IO instance or String path to file.
    :param service_args: (Optional) List of args to be passed to the subprocess when launching the executable.
    :param env: (Optional) Mapping of environment variables for the new process, defaults to `os.environ`.
    Nr   )executable_pathport
log_outputservice_argsenvdriver_path_env_keyreturnc              	      s6   |pg | _ |pd}t jf ||||||d| d S )NZSE_EDGEDRIVER)r   r   r   r   r	   r
   )r   super__init__)selfr   r   r   r   r	   r
   kwargs	__class__ C/tmp/pip-unpacked-wheel-3ysq0mf8/selenium/webdriver/edge/service.pyr   "   s    

zService.__init__)Nr   NNNN)__name__
__module____qualname____doc__strintr   typingOptionalListMappingr   __classcell__r   r   r   r   r      s          r   )r   Zselenium.typesr   Zselenium.webdriver.chromiumr   ZChromiumServicer   r   r   r   r   <module>   s   