XYZRefillFactory.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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 . '/rbridge/RBridgeFactory.php');
  6. require_once(BASE_HELPER_PATH . '/refill/policy/IPolicy.php');
  7. require_once(BASE_HELPER_PATH . '/refill/policy/xyz/policy.php');
  8. require_once(BASE_HELPER_PATH . '/refill/policy/chctl.php');
  9. require_once(BASE_HELPER_PATH . '/refill/policy/ctl_item.php');
  10. require_once(BASE_HELPER_PATH . '/refill/policy/mchctl.php');
  11. use Log;
  12. use StatesHelper;
  13. class XYZRefillFactory extends RefillBase
  14. {
  15. private static $stInstance = null;
  16. public static function instance()
  17. {
  18. if (self::$stInstance == null) {
  19. self::$stInstance = new XYZRefillFactory();
  20. }
  21. if(defined('SUPPORT_PTHREAD') && SUPPORT_PTHREAD === true)
  22. {
  23. Log::record("MOBILE_SERVER defined call load",Log::DEBUG);
  24. if(StatesHelper::fetch_state('channel')) {
  25. Log::record("RefillFactory reload channel config.",Log::DEBUG);
  26. self::$stInstance->load();
  27. }
  28. }
  29. return self::$stInstance;
  30. }
  31. private function __construct()
  32. {
  33. parent::__construct();
  34. $this->mPolicy = new policy();
  35. if (defined('SUPPORT_PTHREAD') && SUPPORT_PTHREAD === true) {
  36. Log::record("SUPPORT_PTHREAD defined dont call load",Log::DEBUG);
  37. } else {
  38. Log::record("SUPPORT_PTHREAD has not defined and call load",Log::DEBUG);
  39. $this->load();
  40. }
  41. }
  42. }