
    i                     Z    d dl mZ dededdfdZ	 	 	 	 	 ddeded	ed
ededededefdZdS )   )errorsnamevaluereturnNc                 b    d|v sd|v sd|v r"t          j        t           j        |            dS dS )z
    Checks the argument to ensure that it does not contain (, ) or = as these
    characters are not permitted within connect strings.
    ()=)r   N)r   
_raise_errERR_INVALID_MAKEDSN_ARG)r   r   s     \/var/www/html/Pagina-Ingenieria-Requisitos/venv/lib/python3.11/site-packages/oracledb/dsn.py
_check_argr   $   sC    
 e||se||se||&8tDDDDDD (4|    hostportsidservice_nameregionsharding_keysuper_sharding_keyc                    g }t          d|            |*t          d|           |                    d| d           n+|)t          d|           |                    d| d           |)t          d|           |                    d	| d           |)t          d
|           |                    d| d           |)t          d|           |                    d| d           d                    |          }d|  d| d| dS )z
    Returns a string suitable for use as the ``dsn`` parameter for
    :meth:`~oracledb.connect()`. This string is identical to the strings that
    are defined by the Oracle names server or defined in the ``tnsnames.ora``
    file.
    r   Nr   z(SERVICE_NAME=r	   r   z(SID=r   z(REGION=r   z(SHARDING_KEY=r   z(SUPER_SHARDING_KEY= z*(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=z)(PORT=z))(CONNECT_DATA=z)))r   appendjoin)	r   r   r   r   r   r   r   connect_data_partsconnect_datas	            r   makedsnr   -   sp    vt><000!!"B<"B"B"BCCCC	5#!!.#...1118V$$$!!"6V"6"6"6777><000!!"B<"B"B"BCCC%');<<<!!"N9K"N"N"NOOO77-..L	8T 	8 	8	8 	8'3	8 	8 	8r   )NNNNN)r   r   strr   intr    r   r   <module>r!      s   B      ES E E E E E E "$ $
$
$ 
$ 	$
 $ $ $ 	$ $ $ $ $ $r   