XYZRefillFactory.php 2.6 KB

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