a )g@s8ddlmZmZmZeZddlmZGdddeZdS))absolute_importdivisionprint_function)RLockcs,eZdZdZfddZfddZZS) SingletonzMetaclass for classes that wish to implement Singleton functionality. If an instance of the class exists, it's returned, otherwise a single instance is instantiated and returned. cs&tt||||d|_t|_dSN)superr__init___Singleton__instancer_Singleton__rlock)clsnamebasesZdct __class__;/usr/lib/python3.9/site-packages/ansible/utils/singleton.pyr szSingleton.__init__cs^|jdur|jS|j2|jdur:tt|j|i||_Wdn1sN0Y|jSr)r r rr__call__)r argskwrrrrs   6zSingleton.__call__)__name__ __module__ __qualname____doc__r r __classcell__rrrrr s rN) Z __future__rrrtypeZ __metaclass__ threadingrrrrrrs