LZRefillFactory.php 2.2 KB

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