whoami7 - Manager
:
/
home
/
kckglobal
/
www
/
portal
/
vendor
/
paypal
/
rest-api-sdk-php
/
lib
/
PayPal
/
Core
/
Upload File:
files >> //home/kckglobal/www/portal/vendor/paypal/rest-api-sdk-php/lib/PayPal/Core/PayPalConfigManager.php
<?php namespace PayPal\Core; /** * Class PayPalConfigManager * * PayPalConfigManager loads the SDK configuration file and * hands out appropriate config params to other classes * * @package PayPal\Core */ class PayPalConfigManager { /** * Configuration Options * * @var array */ private $configs = array( ); /** * Singleton Object * * @var $this */ private static $instance; /** * Private Constructor */ private function __construct() { if (defined('PP_CONFIG_PATH')) { $configFile = constant('PP_CONFIG_PATH') . '/sdk_config.ini'; } else { $configFile = implode(DIRECTORY_SEPARATOR, array(dirname(__FILE__), "..", "config", "sdk_config.ini")); } if (file_exists($configFile)) { $this->addConfigFromIni($configFile); } } /** * Returns the singleton object * * @return $this */ public static function getInstance() { if (!isset(self::$instance)) { self::$instance = new self(); } return self::$instance; } /** * Add Configuration from configuration.ini files * * @param string $fileName * @return $this */ public function addConfigFromIni($fileName) { if ($configs = parse_ini_file($fileName)) { $this->addConfigs($configs); } return $this; } /** * If a configuration exists in both arrays, * then the element from the first array will be used and * the matching key's element from the second array will be ignored. * * @param array $configs * @return $this */ public function addConfigs($configs = array()) { $this->configs = $configs + $this->configs; return $this; } /** * Simple getter for configuration params * If an exact match for key is not found, * does a "contains" search on the key * * @param string $searchKey * @return array */ public function get($searchKey) { if (array_key_exists($searchKey, $this->configs)) { return $this->configs[$searchKey]; } else { $arr = array(); if ($searchKey !== '') { foreach ($this->configs as $k => $v) { if (strstr($k, $searchKey)) { $arr[$k] = $v; } } } return $arr; } } /** * Utility method for handling account configuration * return config key corresponding to the API userId passed in * * If $userId is null, returns config keys corresponding to * all configured accounts * * @param string|null $userId * @return array|string */ public function getIniPrefix($userId = null) { if ($userId == null) { $arr = array(); foreach ($this->configs as $key => $value) { $pos = strpos($key, '.'); if (strstr($key, "acct")) { $arr[] = substr($key, 0, $pos); } } return array_unique($arr); } else { $iniPrefix = array_search($userId, $this->configs); $pos = strpos($iniPrefix, '.'); $acct = substr($iniPrefix, 0, $pos); return $acct; } } /** * returns the config file hashmap */ public function getConfigHashmap() { return $this->configs; } /** * Disabling __clone call */ public function __clone() { trigger_error('Clone is not allowed.', E_USER_ERROR); } }
Copyright ©2021 || Defacer Indonesia