PM.py 583 B

123456789101112131415161718192021222324252627282930
  1. """
  2. Created on 22-04-2013
  3. @author: citan
  4. """
  5. class PM(object):
  6. _instance = None
  7. def __new__(cls, *args, **kwargs):
  8. if not cls._instance:
  9. cls._instance = super(PM, cls).__new__(cls, *args)
  10. return cls._instance
  11. def __init__(self):
  12. pass
  13. def set(self, log):
  14. self._log = log
  15. @classmethod
  16. def log(cls, message, mid=0):
  17. return PM().log_impl(message, mid)
  18. def log_impl(self, message, mid):
  19. if self._log is not None:
  20. return self._log(message, mid)
  21. else:
  22. return -1