�
�Bd� � �D � d Z dZdZddlZddlZddlZ G d� d� � ZdS )z
Cyril Jaquierz Copyright (c) 2004 Cyril Jaquier�GPL� Nc �� � e Zd ZdZdZdZdZed� � � Zed� � � Z ed� � � Z
ed� � � Zed� � � Zed d�� � Z
ed!d
�� � Z ej d� � Z ej d� � Zd
Z ej edz � � d ed� � z f ej edz � � d ed� � z f ej edz � � d ed� � z f ej edz � � d ed� � z f ej edz � � d ed� � z f ej edz � � d ed� � z f ej edz � � d ed� � z ffZed� � � Z G d� d� � ZdS )"�MyTimea` A wrapper around time module primarily for testing purposes
This class is a wrapper around time.time() and time.gmtime(). When
performing unit test, it is very useful to get a fixed value from
these functions. Thus, time.time() and time.gmtime() should never
be called directly. This wrapper should be called instead. The API
are equivalent.
Nc �x � | t _ | �t j � | � � ndt _ dS �zrSet current time.
Use None in order to always get the real current time.
@param t the time to set or None
N)r �alternateNowTime�datetime�
fromtimestamp�alternateNow��ts �8/usr/lib/python3/dist-packages/fail2ban/server/mytime.py�setAlternateNowzMyTime.setAlternateNow/ s7 � � �&��)*��8��"�"�1�%�%�%�D� ���� c � � | t _ dS r )r �myTimer s r �setTimezMyTime.setTime< |