
    ~@;j~                         d dl Z 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 d dlmZ d d	lmZ d d
lmZ d dlmZ e
 G d de                      ZdS )    N)cdll)CDLL)Path)Logger)	singleton)A11Y_PROPS_CONTENT)A11Y_PROPS_PATH)JAB_BRIDGE_DLL)JDK_BRIDGE_DLL)JRE_BRIDGE_DLLc                   D    e Zd Zd
dZd
dZdefdZd
dZddede	fd	Z
dS )ServicereturnNc                 V    t          d          | _        |                                  d S )Npyjab)r   loggerinit_bridgeselfs    bC:\Users\Administrator\AppData\Local\Temp\2\pip-target-b0z114gj\lib\python\pyjab/common/service.py__init__zService.__init__   s'    Woo    c                 0   t          t          d          5 }	 | j                            d           |                    t
                     n1# t          t          f$ r | j                            d           Y nw xY wd d d            d S # 1 swxY w Y   d S )Nwtzenable bridgezenable bridge failed)	openr	   r   debugwriter   OSErrorIOErrorerror)r   fps     r   enable_bridgezService.enable_bridge   s    /4(( 	:B:!!/222+,,,,W% : : :!!"899999:		: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	:s4   B4AB+A;8B:A;;BBBc                    t          t                                                    sdS t          t          d          5 }	 |                                }n=# t
          t          f$ r) | j                            d           Y d d d            dS w xY w	 d d d            n# 1 swxY w Y   |t          k    }| j        
                    d                    |                     |S )NFrtzbridge is not enabledzis bridge enabled => '{}')r   r	   is_filer   readr   r   r   r    r   r   format)r   r!   data
is_enableds       r   is_bridge_enabledzService.is_bridge_enabled   s8   O$$,,.. 	5/4(( 	BwwyyW%   !!"9:::	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 //
5<<ZHHIIIs5   B AB+B BBBB#&B#c                     | j                             d           |                                 s|                                  d S d S )Nzinit bridge)r   r   r*   r"   r   s    r   r   zService.init_bridge+   sN    -(((%%'' 	!     	! 	!r    
bridge_dllc                    | j                             d           t          j        d          dz  }t	          |          t          j        |          t          j        |          t          j        |          fD ]7}t          j
                            |          rt          j        |          c S 8t          d          )Nzload library of bridgeP   zWindowsAccessBridge dll not found, please set correct path for environment variable, or check the passed customized WindowsAccessBridge dll.)r   r   structcalcsizestrr   r'   r   r
   ospathisfiler   LoadLibraryFileNotFoundError)r   r-   dll_bitdlls       r   load_libraryzService.load_library0   s    2333/#&&*
OO!'**!'**!'**	
 	- 	-C w~~c"" -',,,,,-F
 
 	
r   )r   N)r,   )__name__
__module____qualname__r   r"   boolr*   r   r3   r   r;    r   r   r   r      s           : : : :4    ! ! ! !

 
s 
D 
 
 
 
 
 
r   r   )r4   r1   ctypesr   r   pathlibr   pyjab.common.loggerr   pyjab.common.singletonr   pyjab.configr   r	   r
   r   r   objectr   r@   r   r   <module>rG      s   				                    & & & & & & , , , , , , + + + + + + ( ( ( ( ( ( ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' .
 .
 .
 .
 .
f .
 .
 .
 .
 .
r   