File: //usr/lib/python3/dist-packages/django/core/mail/backends/__pycache__/console.cpython-310.pyc
o
ʎ�_z � @ s4 d Z ddlZddlZddlmZ G dd� de�ZdS )zH
Email backend that writes messages to console instead of sending them.
� N)�BaseEmailBackendc s, e Zd Z� fdd�Zdd� Zdd� Z� ZS )�EmailBackendc s0 |� dtj�| _t�� | _t� j|i |�� d S )N�stream) �pop�sys�stdoutr � threading�RLock�_lock�super�__init__)�self�args�kwargs�� __class__� �C/usr/lib/python3/dist-packages/django/core/mail/backends/console.pyr s
zEmailBackend.__init__c C s^ |� � }|�� }|�� r|�� �� nd}|�|�}| j�d| � | j�d� | j�d� d S )Nzutf-8z%s
zO-------------------------------------------------------------------------------�
)�message�as_bytes�get_charset�get_output_charset�decoder �write)r
r �msg�msg_data�charsetr r r �
write_message s
zEmailBackend.write_messagec C s� |sdS d}| j �> z| �� }|D ]}| �|� | j�� |d7 }q|r(| �� W n
ty6 | js4� Y n w W d � |S W d � |S 1 sJw Y |S )z6Write all messages to the stream in a thread-safe way.Nr � )r
�openr r �flush�close� Exception�
fail_silently)r
�email_messages� msg_count�stream_createdr r r r �
send_messages s4
����
��
��zEmailBackend.send_messages)�__name__�
__module__�__qualname__r r r( �
__classcell__r r r r r
s r )�__doc__r r �django.core.mail.backends.baser r r r r r �<module> s