U
    a^                     @   s&  d dl Z zd dlZW n  ek
r4   d dlmZ Y nX ejd ejd ejd ejd ejd ejd ejd ejd	 ejd
 ejd ejd ejd ejd ejd dZdddddddddddddddZeddd dfddZ	d"d d!ZdS )#    Npostgres
postgresqlpgsqlpostgismysqlmysql2mysqlgismysql-connectormssql
spatialitesqliteoracle	oraclegisredshiftZDATABASE_URL&django.db.backends.postgresql_psycopg2&django.contrib.gis.db.backends.postgiszdjango.db.backends.mysqlz$django.contrib.gis.db.backends.mysqlzmysql.connector.djangozsql_server.pyodbcz)django.contrib.gis.db.backends.spatialitezdjango.db.backends.sqlite3zdjango.db.backends.oraclez%django.contrib.gis.db.backends.oracledjango_redshift_backend)r   r   r   r   r   r   r   r	   r
   r   r   r   r   r   Fc                 C   s(   i }t j| |}|r$t||||}|S )z9Returns configured DATABASE dictionary from DATABASE_URL.)osenvirongetparse)envdefaultengineconn_max_agessl_requireconfigs r   ~/home/adriano.carvalho/ftp/files/BrinquedotecaVirtual/brinquedotecavirtual/venv/lib/python3.8/site-packages/dj_database_url.pyr   /   s
    r   c              	   C   s  | dkrt d ddS i }t| } | jdd }d|krR| jsR|dd\}}n|| j }}t|}| jdkr~|d	kr~d}| jpd	}d
| kr| j	}d|kr|
ddd }d|kr|ddd }|d
ddd}|dkrt | j n|}| jr|t d krt| jn| j}|t|p*d	t| jp:d	t| jpJd	||pVd	|d i }	| D ]@\}
}| jdkr|
dkrd|d i|	d< ql|d |	|
< ql|rd|	d< d|	kr|dkrd|	d|	d< |	r|	|d< |r ||d< |S )zParses a database URL.zsqlite://:memory:r   z:memory:)ENGINENAME   N?    z%2f@:r   /z%2Fr   )r!   USERZPASSWORDZHOSTZPORTZCONN_MAX_AGEr   zssl-cacasslrequireZsslmodeZcurrentSchema)r   r   r   z-c search_path={0}optionsOPTIONSr    )SCHEMESurlparsepathquerysplitparse_qsschemehostnamelowernetlocrsplitreplaceportstrupdateunquoteusernamepassworditemsformatpop)urlr   r   r   r   r2   r3   r7   r<   r.   keyvaluesr   r   r   r   <   s`    


 
r   )Nr   F)
r   r1   ImportErrorurllib.parser   uses_netlocappendZDEFAULT_ENVr0   r   r   r   r   r   <module>   sH   