2 from __future__ import unicode_literals, print_function
5 class _Singleton(type):
6 """ A metaclass that creates a Singleton base class when called. """
9 def __call__(cls, *args, **kwargs):
10 if cls not in cls._instances:
11 cls._instances[cls] = super(_Singleton, cls).__call__(*args, **kwargs)
12 return cls._instances[cls]
15 class Singleton(_Singleton(str('SingletonMeta'), (object,), {})):
21 from urlparse import urlparse
23 from urllib.parse import urlparse