LZRefillFactory.php 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace refill;
  3. require_once(BASE_HELPER_PATH . '/refill/RefillBase.php');
  4. require_once(BASE_HELPER_PATH . '/refill/ProviderManager.php');
  5. require_once(BASE_HELPER_PATH . '/refill/policy/IPolicy.php');
  6. require_once(BASE_HELPER_PATH . '/refill/policy/lingzh/policy.php');
  7. require_once(BASE_HELPER_PATH . '/refill/policy/chctl.php');
  8. require_once(BASE_HELPER_PATH . '/refill/policy/ctl_item.php');
  9. require_once(BASE_HELPER_PATH . '/refill/policy/mchctl.php');
  10. require_once(BASE_HELPER_PATH . '/refill/policy/mchoilctl.php');
  11. require_once(BASE_HELPER_PATH . '/refill/policy/times_caller.php');
  12. require_once(BASE_HELPER_PATH . '/refill/policy/quaility.php');
  13. require_once(BASE_HELPER_PATH . '/refill/policy/merchant_price.php');
  14. require_once(BASE_HELPER_PATH . '/refill/policy/mgroup.php');
  15. require_once(BASE_HELPER_PATH . '/refill/policy/lingzh/quality_ploy.php');
  16. use Log;
  17. use StatesHelper;
  18. class LZRefillFactory extends RefillBase
  19. {
  20. private static $stInstance = null;
  21. public static function instance()
  22. {
  23. if (self::$stInstance == null) {
  24. self::$stInstance = new LZRefillFactory();
  25. }
  26. if(defined('SUPPORT_PTHREAD') && SUPPORT_PTHREAD === true)
  27. {
  28. Log::record("SUPPORT_PTHREAD defined call load",Log::DEBUG);
  29. if(StatesHelper::fetch_state('channel')) {
  30. Log::record("RefillFactory reload channel config.",Log::DEBUG);
  31. self::$stInstance->load();
  32. }
  33. }
  34. return self::$stInstance;
  35. }
  36. private function __construct()
  37. {
  38. parent::__construct();
  39. $this->mPolicy = new policy();
  40. if (defined('SUPPORT_PTHREAD') && SUPPORT_PTHREAD === true) {
  41. Log::record("SUPPORT_PTHREAD defined dont call load",Log::DEBUG);
  42. } else {
  43. Log::record("SUPPORT_PTHREAD has not defined and call load",Log::DEBUG);
  44. $this->load();
  45. }
  46. }
  47. }