| @@ -52,7 +52,7 @@ discard block | ||
| 52 | 52 | */ | 
| 53 | 53 | public function getDefinedOptions() | 
| 54 | 54 |      { | 
| 55 | -        if (! $this->defined) { | |
| 55 | +        if ( ! $this->defined) { | |
| 56 | 56 | return null; | 
| 57 | 57 | } | 
| 58 | 58 | |
| @@ -60,7 +60,7 @@ discard block | ||
| 60 | 60 | return $this->defined->getArrayCopy(); | 
| 61 | 61 | } | 
| 62 | 62 | |
| 63 | - return (array)$this->defined; | |
| 63 | + return (array) $this->defined; | |
| 64 | 64 | } | 
| 65 | 65 | |
| 66 | 66 | /** | 
| @@ -72,7 +72,7 @@ discard block | ||
| 72 | 72 | */ | 
| 73 | 73 | public function getDefaultOptions() | 
| 74 | 74 |      { | 
| 75 | -        if (! $this->defaults) { | |
| 75 | +        if ( ! $this->defaults) { | |
| 76 | 76 | return null; | 
| 77 | 77 | } | 
| 78 | 78 | |
| @@ -80,7 +80,7 @@ discard block | ||
| 80 | 80 | return $this->defaults->getArrayCopy(); | 
| 81 | 81 | } | 
| 82 | 82 | |
| 83 | - return (array)$this->defaults; | |
| 83 | + return (array) $this->defaults; | |
| 84 | 84 | } | 
| 85 | 85 | |
| 86 | 86 | /** | 
| @@ -92,7 +92,7 @@ discard block | ||
| 92 | 92 | */ | 
| 93 | 93 | public function getRequiredOptions() | 
| 94 | 94 |      { | 
| 95 | -        if (! $this->required) { | |
| 95 | +        if ( ! $this->required) { | |
| 96 | 96 | return null; | 
| 97 | 97 | } | 
| 98 | 98 | |
| @@ -100,6 +100,6 @@ discard block | ||
| 100 | 100 | return $this->required->getArrayCopy(); | 
| 101 | 101 | } | 
| 102 | 102 | |
| 103 | - return (array)$this->required; | |
| 103 | + return (array) $this->required; | |
| 104 | 104 | } | 
| 105 | 105 | } | 
| @@ -22,84 +22,84 @@ | ||
| 22 | 22 | abstract class AbstractConfigSchema implements ConfigSchemaInterface | 
| 23 | 23 |  { | 
| 24 | 24 | |
| 25 | - /** | |
| 26 | - * The defined values that are recognized. | |
| 27 | - * | |
| 28 | - * @var ConfigInterface | |
| 29 | - */ | |
| 30 | - protected $defined; | |
| 25 | + /** | |
| 26 | + * The defined values that are recognized. | |
| 27 | + * | |
| 28 | + * @var ConfigInterface | |
| 29 | + */ | |
| 30 | + protected $defined; | |
| 31 | 31 | |
| 32 | - /** | |
| 33 | - * The default values that can be overwritten. | |
| 34 | - * | |
| 35 | - * @var ConfigInterface | |
| 36 | - */ | |
| 37 | - protected $defaults; | |
| 32 | + /** | |
| 33 | + * The default values that can be overwritten. | |
| 34 | + * | |
| 35 | + * @var ConfigInterface | |
| 36 | + */ | |
| 37 | + protected $defaults; | |
| 38 | 38 | |
| 39 | - /** | |
| 40 | - * The required values that need to be set. | |
| 41 | - * | |
| 42 | - * @var ConfigInterface | |
| 43 | - */ | |
| 44 | - protected $required; | |
| 39 | + /** | |
| 40 | + * The required values that need to be set. | |
| 41 | + * | |
| 42 | + * @var ConfigInterface | |
| 43 | + */ | |
| 44 | + protected $required; | |
| 45 | 45 | |
| 46 | - /** | |
| 47 | - * Get the set of defined options. | |
| 48 | - * | |
| 49 | - * @since 0.1.0 | |
| 50 | - * | |
| 51 | - * @return array|null | |
| 52 | - */ | |
| 53 | - public function getDefinedOptions() | |
| 54 | -    { | |
| 55 | -        if (! $this->defined) { | |
| 56 | - return null; | |
| 57 | - } | |
| 46 | + /** | |
| 47 | + * Get the set of defined options. | |
| 48 | + * | |
| 49 | + * @since 0.1.0 | |
| 50 | + * | |
| 51 | + * @return array|null | |
| 52 | + */ | |
| 53 | + public function getDefinedOptions() | |
| 54 | +	{ | |
| 55 | +		if (! $this->defined) { | |
| 56 | + return null; | |
| 57 | + } | |
| 58 | 58 | |
| 59 | -        if ($this->defined instanceof ConfigInterface) { | |
| 60 | - return $this->defined->getArrayCopy(); | |
| 61 | - } | |
| 59 | +		if ($this->defined instanceof ConfigInterface) { | |
| 60 | + return $this->defined->getArrayCopy(); | |
| 61 | + } | |
| 62 | 62 | |
| 63 | - return (array)$this->defined; | |
| 64 | - } | |
| 63 | + return (array)$this->defined; | |
| 64 | + } | |
| 65 | 65 | |
| 66 | - /** | |
| 67 | - * Get the set of default options. | |
| 68 | - * | |
| 69 | - * @since 0.1.0 | |
| 70 | - * | |
| 71 | - * @return array|null | |
| 72 | - */ | |
| 73 | - public function getDefaultOptions() | |
| 74 | -    { | |
| 75 | -        if (! $this->defaults) { | |
| 76 | - return null; | |
| 77 | - } | |
| 66 | + /** | |
| 67 | + * Get the set of default options. | |
| 68 | + * | |
| 69 | + * @since 0.1.0 | |
| 70 | + * | |
| 71 | + * @return array|null | |
| 72 | + */ | |
| 73 | + public function getDefaultOptions() | |
| 74 | +	{ | |
| 75 | +		if (! $this->defaults) { | |
| 76 | + return null; | |
| 77 | + } | |
| 78 | 78 | |
| 79 | -        if ($this->defaults instanceof ConfigInterface) { | |
| 80 | - return $this->defaults->getArrayCopy(); | |
| 81 | - } | |
| 79 | +		if ($this->defaults instanceof ConfigInterface) { | |
| 80 | + return $this->defaults->getArrayCopy(); | |
| 81 | + } | |
| 82 | 82 | |
| 83 | - return (array)$this->defaults; | |
| 84 | - } | |
| 83 | + return (array)$this->defaults; | |
| 84 | + } | |
| 85 | 85 | |
| 86 | - /** | |
| 87 | - * Get the set of required options. | |
| 88 | - * | |
| 89 | - * @since 0.1.0 | |
| 90 | - * | |
| 91 | - * @return array|null | |
| 92 | - */ | |
| 93 | - public function getRequiredOptions() | |
| 94 | -    { | |
| 95 | -        if (! $this->required) { | |
| 96 | - return null; | |
| 97 | - } | |
| 86 | + /** | |
| 87 | + * Get the set of required options. | |
| 88 | + * | |
| 89 | + * @since 0.1.0 | |
| 90 | + * | |
| 91 | + * @return array|null | |
| 92 | + */ | |
| 93 | + public function getRequiredOptions() | |
| 94 | +	{ | |
| 95 | +		if (! $this->required) { | |
| 96 | + return null; | |
| 97 | + } | |
| 98 | 98 | |
| 99 | -        if ($this->required instanceof ConfigInterface) { | |
| 100 | - return $this->required->getArrayCopy(); | |
| 101 | - } | |
| 99 | +		if ($this->required instanceof ConfigInterface) { | |
| 100 | + return $this->required->getArrayCopy(); | |
| 101 | + } | |
| 102 | 102 | |
| 103 | - return (array)$this->required; | |
| 104 | - } | |
| 103 | + return (array)$this->required; | |
| 104 | + } | |
| 105 | 105 | } | 
| @@ -63,7 +63,7 @@ | ||
| 63 | 63 | $schema = $schema->getArrayCopy(); | 
| 64 | 64 | } | 
| 65 | 65 | |
| 66 | -        if (! is_array($schema)) { | |
| 66 | +        if ( ! is_array($schema)) { | |
| 67 | 67 | throw new InvalidArgumentException( | 
| 68 | 68 | sprintf( | 
| 69 | 69 |                      _('Invalid schema source: %1$s'), | 
| @@ -24,135 +24,135 @@ | ||
| 24 | 24 | class ConfigSchema extends AbstractConfigSchema | 
| 25 | 25 |  { | 
| 26 | 26 | |
| 27 | - /** | |
| 28 | - * The key that is used in the schema to define a default value. | |
| 29 | - */ | |
| 30 | - const DEFAULT_VALUE = 'default'; | |
| 31 | - /** | |
| 32 | - * The key that is used in the schema to define a required value. | |
| 33 | - */ | |
| 34 | - const REQUIRED_KEY = 'required'; | |
| 27 | + /** | |
| 28 | + * The key that is used in the schema to define a default value. | |
| 29 | + */ | |
| 30 | + const DEFAULT_VALUE = 'default'; | |
| 31 | + /** | |
| 32 | + * The key that is used in the schema to define a required value. | |
| 33 | + */ | |
| 34 | + const REQUIRED_KEY = 'required'; | |
| 35 | 35 | |
| 36 | - /** | |
| 37 | - * Instantiate a ConfigSchema object. | |
| 38 | - * | |
| 39 | - * @since 0.1.0 | |
| 40 | - * | |
| 41 | - * @param ConfigInterface|array $schema The schema to parse. | |
| 42 | - * | |
| 43 | - * @throws InvalidArgumentException | |
| 44 | - */ | |
| 45 | - public function __construct($schema) | |
| 46 | -    { | |
| 47 | -        if ($schema instanceof ConfigInterface) { | |
| 48 | - $schema = $schema->getArrayCopy(); | |
| 49 | - } | |
| 36 | + /** | |
| 37 | + * Instantiate a ConfigSchema object. | |
| 38 | + * | |
| 39 | + * @since 0.1.0 | |
| 40 | + * | |
| 41 | + * @param ConfigInterface|array $schema The schema to parse. | |
| 42 | + * | |
| 43 | + * @throws InvalidArgumentException | |
| 44 | + */ | |
| 45 | + public function __construct($schema) | |
| 46 | +	{ | |
| 47 | +		if ($schema instanceof ConfigInterface) { | |
| 48 | + $schema = $schema->getArrayCopy(); | |
| 49 | + } | |
| 50 | 50 | |
| 51 | -        if (! is_array($schema)) { | |
| 52 | - throw new InvalidArgumentException( | |
| 53 | - sprintf( | |
| 54 | -                    _('Invalid schema source: %1$s'), | |
| 55 | - print_r($schema, true) | |
| 56 | - ) | |
| 57 | - ); | |
| 58 | - } | |
| 51 | +		if (! is_array($schema)) { | |
| 52 | + throw new InvalidArgumentException( | |
| 53 | + sprintf( | |
| 54 | +					_('Invalid schema source: %1$s'), | |
| 55 | + print_r($schema, true) | |
| 56 | + ) | |
| 57 | + ); | |
| 58 | + } | |
| 59 | 59 | |
| 60 | - array_walk($schema, [$this, 'parseSchema']); | |
| 61 | - } | |
| 60 | + array_walk($schema, [$this, 'parseSchema']); | |
| 61 | + } | |
| 62 | 62 | |
| 63 | - /** | |
| 64 | - * Parse a single provided schema entry. | |
| 65 | - * | |
| 66 | - * @since 0.1.0 | |
| 67 | - * | |
| 68 | - * @param mixed $data The data associated with the key. | |
| 69 | - * @param string $key The key of the schema data. | |
| 70 | - */ | |
| 71 | - protected function parseSchema($data, $key) | |
| 72 | -    { | |
| 73 | - $this->parseDefined($key); | |
| 63 | + /** | |
| 64 | + * Parse a single provided schema entry. | |
| 65 | + * | |
| 66 | + * @since 0.1.0 | |
| 67 | + * | |
| 68 | + * @param mixed $data The data associated with the key. | |
| 69 | + * @param string $key The key of the schema data. | |
| 70 | + */ | |
| 71 | + protected function parseSchema($data, $key) | |
| 72 | +	{ | |
| 73 | + $this->parseDefined($key); | |
| 74 | 74 | |
| 75 | -        if (array_key_exists(self::REQUIRED_KEY, $data)) { | |
| 76 | - $this->parseRequired( | |
| 77 | - $key, | |
| 78 | - $data[self::REQUIRED_KEY] | |
| 79 | - ); | |
| 80 | - } | |
| 75 | +		if (array_key_exists(self::REQUIRED_KEY, $data)) { | |
| 76 | + $this->parseRequired( | |
| 77 | + $key, | |
| 78 | + $data[self::REQUIRED_KEY] | |
| 79 | + ); | |
| 80 | + } | |
| 81 | 81 | |
| 82 | -        if (array_key_exists(self::DEFAULT_VALUE, $data)) { | |
| 83 | - $this->parseDefault( | |
| 84 | - $key, | |
| 85 | - $data[self::DEFAULT_VALUE] | |
| 86 | - ); | |
| 87 | - } | |
| 88 | - } | |
| 82 | +		if (array_key_exists(self::DEFAULT_VALUE, $data)) { | |
| 83 | + $this->parseDefault( | |
| 84 | + $key, | |
| 85 | + $data[self::DEFAULT_VALUE] | |
| 86 | + ); | |
| 87 | + } | |
| 88 | + } | |
| 89 | 89 | |
| 90 | - /** | |
| 91 | - * Parse the set of defined values. | |
| 92 | - * | |
| 93 | - * @since 0.1.0 | |
| 94 | - * | |
| 95 | - * @param string $key The key of the schema data. | |
| 96 | - */ | |
| 97 | - protected function parseDefined($key) | |
| 98 | -    { | |
| 99 | - $this->defined[] = $key; | |
| 100 | - } | |
| 90 | + /** | |
| 91 | + * Parse the set of defined values. | |
| 92 | + * | |
| 93 | + * @since 0.1.0 | |
| 94 | + * | |
| 95 | + * @param string $key The key of the schema data. | |
| 96 | + */ | |
| 97 | + protected function parseDefined($key) | |
| 98 | +	{ | |
| 99 | + $this->defined[] = $key; | |
| 100 | + } | |
| 101 | 101 | |
| 102 | - /** | |
| 103 | - * Parse the set of required values. | |
| 104 | - * | |
| 105 | - * @since 0.1.0 | |
| 106 | - * | |
| 107 | - * @param string $key The key of the schema data. | |
| 108 | - * @param mixed $data The data associated with the key. | |
| 109 | - */ | |
| 110 | - protected function parseRequired($key, $data) | |
| 111 | -    { | |
| 112 | -        if ($this->isTruthy($data)) { | |
| 113 | - $this->required[] = $key; | |
| 114 | - } | |
| 115 | - } | |
| 102 | + /** | |
| 103 | + * Parse the set of required values. | |
| 104 | + * | |
| 105 | + * @since 0.1.0 | |
| 106 | + * | |
| 107 | + * @param string $key The key of the schema data. | |
| 108 | + * @param mixed $data The data associated with the key. | |
| 109 | + */ | |
| 110 | + protected function parseRequired($key, $data) | |
| 111 | +	{ | |
| 112 | +		if ($this->isTruthy($data)) { | |
| 113 | + $this->required[] = $key; | |
| 114 | + } | |
| 115 | + } | |
| 116 | 116 | |
| 117 | - /** | |
| 118 | - * Parse the set of default values. | |
| 119 | - * | |
| 120 | - * @since 0.1.0 | |
| 121 | - * | |
| 122 | - * @param string $key The key of the schema data. | |
| 123 | - * @param mixed $data The data associated with the key. | |
| 124 | - */ | |
| 125 | - protected function parseDefault($key, $data) | |
| 126 | -    { | |
| 127 | - $this->defaults[$key] = $data; | |
| 128 | - } | |
| 117 | + /** | |
| 118 | + * Parse the set of default values. | |
| 119 | + * | |
| 120 | + * @since 0.1.0 | |
| 121 | + * | |
| 122 | + * @param string $key The key of the schema data. | |
| 123 | + * @param mixed $data The data associated with the key. | |
| 124 | + */ | |
| 125 | + protected function parseDefault($key, $data) | |
| 126 | +	{ | |
| 127 | + $this->defaults[$key] = $data; | |
| 128 | + } | |
| 129 | 129 | |
| 130 | - /** | |
| 131 | - * Return a boolean true or false for an arbitrary set of data. Recognizes | |
| 132 | - * several different string values that should be valued as true. | |
| 133 | - * | |
| 134 | - * @since 0.1.0 | |
| 135 | - * | |
| 136 | - * @param mixed $data The data to evaluate. | |
| 137 | - * | |
| 138 | - * @return bool | |
| 139 | - */ | |
| 140 | - protected function isTruthy($data) | |
| 141 | -    { | |
| 142 | - $truthy_values = [ | |
| 143 | - true, | |
| 144 | - 1, | |
| 145 | - 'true', | |
| 146 | - 'True', | |
| 147 | - 'TRUE', | |
| 148 | - 'y', | |
| 149 | - 'Y', | |
| 150 | - 'yes', | |
| 151 | - 'Yes', | |
| 152 | - 'YES', | |
| 153 | - '√', | |
| 154 | - ]; | |
| 130 | + /** | |
| 131 | + * Return a boolean true or false for an arbitrary set of data. Recognizes | |
| 132 | + * several different string values that should be valued as true. | |
| 133 | + * | |
| 134 | + * @since 0.1.0 | |
| 135 | + * | |
| 136 | + * @param mixed $data The data to evaluate. | |
| 137 | + * | |
| 138 | + * @return bool | |
| 139 | + */ | |
| 140 | + protected function isTruthy($data) | |
| 141 | +	{ | |
| 142 | + $truthy_values = [ | |
| 143 | + true, | |
| 144 | + 1, | |
| 145 | + 'true', | |
| 146 | + 'True', | |
| 147 | + 'TRUE', | |
| 148 | + 'y', | |
| 149 | + 'Y', | |
| 150 | + 'yes', | |
| 151 | + 'Yes', | |
| 152 | + 'YES', | |
| 153 | + '√', | |
| 154 | + ]; | |
| 155 | 155 | |
| 156 | - return in_array($data, $truthy_values, true); | |
| 157 | - } | |
| 156 | + return in_array($data, $truthy_values, true); | |
| 157 | + } | |
| 158 | 158 | } | 
| @@ -22,14 +22,14 @@ | ||
| 22 | 22 | interface ConfigValidatorInterface | 
| 23 | 23 |  { | 
| 24 | 24 | |
| 25 | - /** | |
| 26 | - * Check whether the passed-in Config is valid. | |
| 27 | - * | |
| 28 | - * @since 0.1.0 | |
| 29 | - * | |
| 30 | - * @param ConfigInterface $config | |
| 31 | - * | |
| 32 | - * @return bool | |
| 33 | - */ | |
| 34 | - public function isValid(ConfigInterface $config); | |
| 25 | + /** | |
| 26 | + * Check whether the passed-in Config is valid. | |
| 27 | + * | |
| 28 | + * @since 0.1.0 | |
| 29 | + * | |
| 30 | + * @param ConfigInterface $config | |
| 31 | + * | |
| 32 | + * @return bool | |
| 33 | + */ | |
| 34 | + public function isValid(ConfigInterface $config); | |
| 35 | 35 | } | 
| @@ -22,30 +22,30 @@ | ||
| 22 | 22 | interface ConfigSchemaInterface | 
| 23 | 23 |  { | 
| 24 | 24 | |
| 25 | - /** | |
| 26 | - * Get the set of defined options. | |
| 27 | - * | |
| 28 | - * @since 0.1.0 | |
| 29 | - * | |
| 30 | - * @return array|null | |
| 31 | - */ | |
| 32 | - public function getDefinedOptions(); | |
| 25 | + /** | |
| 26 | + * Get the set of defined options. | |
| 27 | + * | |
| 28 | + * @since 0.1.0 | |
| 29 | + * | |
| 30 | + * @return array|null | |
| 31 | + */ | |
| 32 | + public function getDefinedOptions(); | |
| 33 | 33 | |
| 34 | - /** | |
| 35 | - * Get the set of default options. | |
| 36 | - * | |
| 37 | - * @since 0.1.0 | |
| 38 | - * | |
| 39 | - * @return array|null | |
| 40 | - */ | |
| 41 | - public function getDefaultOptions(); | |
| 34 | + /** | |
| 35 | + * Get the set of default options. | |
| 36 | + * | |
| 37 | + * @since 0.1.0 | |
| 38 | + * | |
| 39 | + * @return array|null | |
| 40 | + */ | |
| 41 | + public function getDefaultOptions(); | |
| 42 | 42 | |
| 43 | - /** | |
| 44 | - * Get the set of required options. | |
| 45 | - * | |
| 46 | - * @since 0.1.0 | |
| 47 | - * | |
| 48 | - * @return array|null | |
| 49 | - */ | |
| 50 | - public function getRequiredOptions(); | |
| 43 | + /** | |
| 44 | + * Get the set of required options. | |
| 45 | + * | |
| 46 | + * @since 0.1.0 | |
| 47 | + * | |
| 48 | + * @return array|null | |
| 49 | + */ | |
| 50 | + public function getRequiredOptions(); | |
| 51 | 51 | } | 
| @@ -32,7 +32,7 @@ | ||
| 32 | 32 | * | 
| 33 | 33 | * @param string $uri URI of the resource to load. | 
| 34 | 34 | * | 
| 35 | - * @return array Data contained within the resource. | |
| 35 | + * @return boolean Data contained within the resource. | |
| 36 | 36 | */ | 
| 37 | 37 | public static function canLoad($uri) | 
| 38 | 38 |      { | 
| @@ -25,76 +25,76 @@ | ||
| 25 | 25 | class PHPLoader extends AbstractLoader | 
| 26 | 26 |  { | 
| 27 | 27 | |
| 28 | - /** | |
| 29 | - * Load the configuration from an URI. | |
| 30 | - * | |
| 31 | - * @since 0.4.0 | |
| 32 | - * | |
| 33 | - * @param string $uri URI of the resource to load. | |
| 34 | - * | |
| 35 | - * @return array Data contained within the resource. | |
| 36 | - */ | |
| 37 | - public static function canLoad($uri) | |
| 38 | -    { | |
| 39 | - $path = pathinfo($uri); | |
| 28 | + /** | |
| 29 | + * Load the configuration from an URI. | |
| 30 | + * | |
| 31 | + * @since 0.4.0 | |
| 32 | + * | |
| 33 | + * @param string $uri URI of the resource to load. | |
| 34 | + * | |
| 35 | + * @return array Data contained within the resource. | |
| 36 | + */ | |
| 37 | + public static function canLoad($uri) | |
| 38 | +	{ | |
| 39 | + $path = pathinfo($uri); | |
| 40 | 40 | |
| 41 | - return 'php' === mb_strtolower($path['extension']); | |
| 42 | - } | |
| 41 | + return 'php' === mb_strtolower($path['extension']); | |
| 42 | + } | |
| 43 | 43 | |
| 44 | - /** | |
| 45 | - * Load the contents of an resource identified by an URI. | |
| 46 | - * | |
| 47 | - * @since 0.4.0 | |
| 48 | - * | |
| 49 | - * @param string $uri URI of the resource. | |
| 50 | - * | |
| 51 | - * @return array|null Raw data loaded from the resource. Null if no data found. | |
| 52 | - * @throws FailedToLoadConfigException If the resource could not be loaded. | |
| 53 | - */ | |
| 54 | - protected function loadUri($uri) | |
| 55 | -    { | |
| 56 | -        try { | |
| 57 | - // Try to load the file through PHP's include(). | |
| 58 | - // Make sure we don't accidentally create output. | |
| 59 | - ob_start(); | |
| 60 | - $data = include($uri); | |
| 61 | - ob_end_clean(); | |
| 44 | + /** | |
| 45 | + * Load the contents of an resource identified by an URI. | |
| 46 | + * | |
| 47 | + * @since 0.4.0 | |
| 48 | + * | |
| 49 | + * @param string $uri URI of the resource. | |
| 50 | + * | |
| 51 | + * @return array|null Raw data loaded from the resource. Null if no data found. | |
| 52 | + * @throws FailedToLoadConfigException If the resource could not be loaded. | |
| 53 | + */ | |
| 54 | + protected function loadUri($uri) | |
| 55 | +	{ | |
| 56 | +		try { | |
| 57 | + // Try to load the file through PHP's include(). | |
| 58 | + // Make sure we don't accidentally create output. | |
| 59 | + ob_start(); | |
| 60 | + $data = include($uri); | |
| 61 | + ob_end_clean(); | |
| 62 | 62 | |
| 63 | - return $data; | |
| 64 | -        } catch (Exception $exception) { | |
| 65 | - throw new FailedToLoadConfigException( | |
| 66 | - sprintf( | |
| 67 | -                    _('Could not include PHP config file "%1$s". Reason: "%2$s".'), | |
| 68 | - $uri, | |
| 69 | - $exception->getMessage() | |
| 70 | - ), | |
| 71 | - $exception->getCode(), | |
| 72 | - $exception | |
| 73 | - ); | |
| 74 | - } | |
| 75 | - } | |
| 63 | + return $data; | |
| 64 | +		} catch (Exception $exception) { | |
| 65 | + throw new FailedToLoadConfigException( | |
| 66 | + sprintf( | |
| 67 | +					_('Could not include PHP config file "%1$s". Reason: "%2$s".'), | |
| 68 | + $uri, | |
| 69 | + $exception->getMessage() | |
| 70 | + ), | |
| 71 | + $exception->getCode(), | |
| 72 | + $exception | |
| 73 | + ); | |
| 74 | + } | |
| 75 | + } | |
| 76 | 76 | |
| 77 | - /** | |
| 78 | - * Validate and return the URI. | |
| 79 | - * | |
| 80 | - * @since 0.4.0 | |
| 81 | - * | |
| 82 | - * @param string $uri URI of the resource to load. | |
| 83 | - * | |
| 84 | - * @return string Validated URI. | |
| 85 | - * @throws FailedToLoadConfigException If the URI does not exist or is not readable. | |
| 86 | - */ | |
| 87 | - protected function validateUri($uri) | |
| 88 | -    { | |
| 89 | -        if (! is_readable($uri)) { | |
| 90 | - throw new FailedToLoadConfigException( | |
| 91 | - sprintf( | |
| 92 | -                    _('The requested PHP config file "%1$s" does not exist or is not readable.'), | |
| 93 | - $uri | |
| 94 | - ) | |
| 95 | - ); | |
| 96 | - } | |
| 77 | + /** | |
| 78 | + * Validate and return the URI. | |
| 79 | + * | |
| 80 | + * @since 0.4.0 | |
| 81 | + * | |
| 82 | + * @param string $uri URI of the resource to load. | |
| 83 | + * | |
| 84 | + * @return string Validated URI. | |
| 85 | + * @throws FailedToLoadConfigException If the URI does not exist or is not readable. | |
| 86 | + */ | |
| 87 | + protected function validateUri($uri) | |
| 88 | +	{ | |
| 89 | +		if (! is_readable($uri)) { | |
| 90 | + throw new FailedToLoadConfigException( | |
| 91 | + sprintf( | |
| 92 | +					_('The requested PHP config file "%1$s" does not exist or is not readable.'), | |
| 93 | + $uri | |
| 94 | + ) | |
| 95 | + ); | |
| 96 | + } | |
| 97 | 97 | |
| 98 | - return $uri; | |
| 99 | - } | |
| 98 | + return $uri; | |
| 99 | + } | |
| 100 | 100 | } | 
| @@ -86,7 +86,7 @@ | ||
| 86 | 86 | */ | 
| 87 | 87 | protected function validateUri($uri) | 
| 88 | 88 |      { | 
| 89 | -        if (! is_readable($uri)) { | |
| 89 | +        if ( ! is_readable($uri)) { | |
| 90 | 90 | throw new FailedToLoadConfigException( | 
| 91 | 91 | sprintf( | 
| 92 | 92 |                      _('The requested PHP config file "%1$s" does not exist or is not readable.'), | 
| @@ -27,82 +27,82 @@ | ||
| 27 | 27 | interface ConfigInterface extends IteratorAggregate, ArrayAccess, Serializable, Countable | 
| 28 | 28 |  { | 
| 29 | 29 | |
| 30 | - /** | |
| 31 | - * Creates a copy of the ArrayObject. | |
| 32 | - * | |
| 33 | - * Returns a copy of the array. When the ArrayObject refers to an object an | |
| 34 | - * array of the public properties of that object will be returned. | |
| 35 | - * This is implemented by \ArrayObject. | |
| 36 | - * | |
| 37 | - * @since 0.1.0 | |
| 38 | - * | |
| 39 | - * @return array Copy of the array. | |
| 40 | - */ | |
| 41 | - public function getArrayCopy(); | |
| 30 | + /** | |
| 31 | + * Creates a copy of the ArrayObject. | |
| 32 | + * | |
| 33 | + * Returns a copy of the array. When the ArrayObject refers to an object an | |
| 34 | + * array of the public properties of that object will be returned. | |
| 35 | + * This is implemented by \ArrayObject. | |
| 36 | + * | |
| 37 | + * @since 0.1.0 | |
| 38 | + * | |
| 39 | + * @return array Copy of the array. | |
| 40 | + */ | |
| 41 | + public function getArrayCopy(); | |
| 42 | 42 | |
| 43 | - /** | |
| 44 | - * Check whether the Config has a specific key. | |
| 45 | - * | |
| 46 | - * To check a value several levels deep, add the keys for each level as a comma-separated list. | |
| 47 | - * | |
| 48 | - * @since 0.1.0 | |
| 49 | - * @since 0.1.4 Accepts list of keys. | |
| 50 | - * | |
| 51 | - * @param string $_ List of keys. | |
| 52 | - * | |
| 53 | - * @return bool | |
| 54 | - */ | |
| 55 | - public function hasKey($_); | |
| 43 | + /** | |
| 44 | + * Check whether the Config has a specific key. | |
| 45 | + * | |
| 46 | + * To check a value several levels deep, add the keys for each level as a comma-separated list. | |
| 47 | + * | |
| 48 | + * @since 0.1.0 | |
| 49 | + * @since 0.1.4 Accepts list of keys. | |
| 50 | + * | |
| 51 | + * @param string $_ List of keys. | |
| 52 | + * | |
| 53 | + * @return bool | |
| 54 | + */ | |
| 55 | + public function hasKey($_); | |
| 56 | 56 | |
| 57 | - /** | |
| 58 | - * Get the value of a specific key. | |
| 59 | - * | |
| 60 | - * To get a value several levels deep, add the keys for each level as a comma-separated list. | |
| 61 | - * | |
| 62 | - * @since 0.1.0 | |
| 63 | - * @since 0.1.4 Accepts list of keys. | |
| 64 | - * | |
| 65 | - * @param string $_ List of keys. | |
| 66 | - * | |
| 67 | - * @return mixed | |
| 68 | - */ | |
| 69 | - public function getKey($_); | |
| 57 | + /** | |
| 58 | + * Get the value of a specific key. | |
| 59 | + * | |
| 60 | + * To get a value several levels deep, add the keys for each level as a comma-separated list. | |
| 61 | + * | |
| 62 | + * @since 0.1.0 | |
| 63 | + * @since 0.1.4 Accepts list of keys. | |
| 64 | + * | |
| 65 | + * @param string $_ List of keys. | |
| 66 | + * | |
| 67 | + * @return mixed | |
| 68 | + */ | |
| 69 | + public function getKey($_); | |
| 70 | 70 | |
| 71 | - /** | |
| 72 | - * Get a (multi-dimensional) array of all the configuration settings. | |
| 73 | - * | |
| 74 | - * @since 0.1.4 | |
| 75 | - * | |
| 76 | - * @return array | |
| 77 | - */ | |
| 78 | - public function getAll(); | |
| 71 | + /** | |
| 72 | + * Get a (multi-dimensional) array of all the configuration settings. | |
| 73 | + * | |
| 74 | + * @since 0.1.4 | |
| 75 | + * | |
| 76 | + * @return array | |
| 77 | + */ | |
| 78 | + public function getAll(); | |
| 79 | 79 | |
| 80 | - /** | |
| 81 | - * Get the an array with all the keys | |
| 82 | - * | |
| 83 | - * @since 0.1.0 | |
| 84 | - * | |
| 85 | - * @return mixed | |
| 86 | - */ | |
| 87 | - public function getKeys(); | |
| 80 | + /** | |
| 81 | + * Get the an array with all the keys | |
| 82 | + * | |
| 83 | + * @since 0.1.0 | |
| 84 | + * | |
| 85 | + * @return mixed | |
| 86 | + */ | |
| 87 | + public function getKeys(); | |
| 88 | 88 | |
| 89 | - /** | |
| 90 | - * Is the Config valid? | |
| 91 | - * | |
| 92 | - * @since 0.1.0 | |
| 93 | - * | |
| 94 | - * @return boolean | |
| 95 | - */ | |
| 96 | - public function isValid(); | |
| 89 | + /** | |
| 90 | + * Is the Config valid? | |
| 91 | + * | |
| 92 | + * @since 0.1.0 | |
| 93 | + * | |
| 94 | + * @return boolean | |
| 95 | + */ | |
| 96 | + public function isValid(); | |
| 97 | 97 | |
| 98 | - /** | |
| 99 | - * Get a new config at a specific sub-level. | |
| 100 | - * | |
| 101 | - * @since 0.1.13 | |
| 102 | - * | |
| 103 | - * @param string $_ List of keys. | |
| 104 | - * | |
| 105 | - * @return ConfigInterface | |
| 106 | - */ | |
| 107 | - public function getSubConfig($_); | |
| 98 | + /** | |
| 99 | + * Get a new config at a specific sub-level. | |
| 100 | + * | |
| 101 | + * @since 0.1.13 | |
| 102 | + * | |
| 103 | + * @param string $_ List of keys. | |
| 104 | + * | |
| 105 | + * @return ConfigInterface | |
| 106 | + */ | |
| 107 | + public function getSubConfig($_); | |
| 108 | 108 | } | 
| @@ -25,72 +25,72 @@ | ||
| 25 | 25 | abstract class AbstractLoader implements LoaderInterface | 
| 26 | 26 |  { | 
| 27 | 27 | |
| 28 | - /** | |
| 29 | - * Load the configuration from an URI. | |
| 30 | - * | |
| 31 | - * @since 0.4.0 | |
| 32 | - * | |
| 33 | - * @param string $uri URI of the resource to load. | |
| 34 | - * | |
| 35 | - * @return array|null Data contained within the resource. Null if no data could be loaded/parsed. | |
| 36 | - * @throws FailedToLoadConfigException If the configuration could not be loaded. | |
| 37 | - */ | |
| 38 | - public function load($uri) | |
| 39 | -    { | |
| 40 | -        try { | |
| 41 | - $uri = $this->validateUri($uri); | |
| 42 | - $data = $this->loadUri($uri); | |
| 28 | + /** | |
| 29 | + * Load the configuration from an URI. | |
| 30 | + * | |
| 31 | + * @since 0.4.0 | |
| 32 | + * | |
| 33 | + * @param string $uri URI of the resource to load. | |
| 34 | + * | |
| 35 | + * @return array|null Data contained within the resource. Null if no data could be loaded/parsed. | |
| 36 | + * @throws FailedToLoadConfigException If the configuration could not be loaded. | |
| 37 | + */ | |
| 38 | + public function load($uri) | |
| 39 | +	{ | |
| 40 | +		try { | |
| 41 | + $uri = $this->validateUri($uri); | |
| 42 | + $data = $this->loadUri($uri); | |
| 43 | 43 | |
| 44 | - return $this->parseData($data); | |
| 45 | -        } catch (Exception $exception) { | |
| 46 | - throw new FailedToLoadConfigException( | |
| 47 | - sprintf( | |
| 48 | -                    _('Could not load resource located at "%1$s". Reason: "%2$s".'), | |
| 49 | - $uri, | |
| 50 | - $exception->getMessage() | |
| 51 | - ), | |
| 52 | - $exception->getCode(), | |
| 53 | - $exception | |
| 54 | - ); | |
| 55 | - } | |
| 56 | - } | |
| 44 | + return $this->parseData($data); | |
| 45 | +		} catch (Exception $exception) { | |
| 46 | + throw new FailedToLoadConfigException( | |
| 47 | + sprintf( | |
| 48 | +					_('Could not load resource located at "%1$s". Reason: "%2$s".'), | |
| 49 | + $uri, | |
| 50 | + $exception->getMessage() | |
| 51 | + ), | |
| 52 | + $exception->getCode(), | |
| 53 | + $exception | |
| 54 | + ); | |
| 55 | + } | |
| 56 | + } | |
| 57 | 57 | |
| 58 | - /** | |
| 59 | - * Validate and return the URI. | |
| 60 | - * | |
| 61 | - * @since 0.4.0 | |
| 62 | - * | |
| 63 | - * @param string $uri URI of the resource to load. | |
| 64 | - * | |
| 65 | - * @return string Validated URI. | |
| 66 | - */ | |
| 67 | - protected function validateUri($uri) | |
| 68 | -    { | |
| 69 | - return $uri; | |
| 70 | - } | |
| 58 | + /** | |
| 59 | + * Validate and return the URI. | |
| 60 | + * | |
| 61 | + * @since 0.4.0 | |
| 62 | + * | |
| 63 | + * @param string $uri URI of the resource to load. | |
| 64 | + * | |
| 65 | + * @return string Validated URI. | |
| 66 | + */ | |
| 67 | + protected function validateUri($uri) | |
| 68 | +	{ | |
| 69 | + return $uri; | |
| 70 | + } | |
| 71 | 71 | |
| 72 | - /** | |
| 73 | - * Parse the raw data and return it in parsed form. | |
| 74 | - * | |
| 75 | - * @since 0.4.0 | |
| 76 | - * | |
| 77 | - * @param array|null $data Raw data to be parsed. | |
| 78 | - * | |
| 79 | - * @return array|null Data in parsed form. Null if no parsable data found. | |
| 80 | - */ | |
| 81 | - protected function parseData($data) | |
| 82 | -    { | |
| 83 | - return $data; | |
| 84 | - } | |
| 72 | + /** | |
| 73 | + * Parse the raw data and return it in parsed form. | |
| 74 | + * | |
| 75 | + * @since 0.4.0 | |
| 76 | + * | |
| 77 | + * @param array|null $data Raw data to be parsed. | |
| 78 | + * | |
| 79 | + * @return array|null Data in parsed form. Null if no parsable data found. | |
| 80 | + */ | |
| 81 | + protected function parseData($data) | |
| 82 | +	{ | |
| 83 | + return $data; | |
| 84 | + } | |
| 85 | 85 | |
| 86 | - /** | |
| 87 | - * Load the contents of an resource identified by an URI. | |
| 88 | - * | |
| 89 | - * @since 0.4.0 | |
| 90 | - * | |
| 91 | - * @param string $uri URI of the resource. | |
| 92 | - * | |
| 93 | - * @return array|null Raw data loaded from the resource. Null if no data found. | |
| 94 | - */ | |
| 95 | - abstract protected function loadUri($uri); | |
| 86 | + /** | |
| 87 | + * Load the contents of an resource identified by an URI. | |
| 88 | + * | |
| 89 | + * @since 0.4.0 | |
| 90 | + * | |
| 91 | + * @param string $uri URI of the resource. | |
| 92 | + * | |
| 93 | + * @return array|null Raw data loaded from the resource. Null if no data found. | |
| 94 | + */ | |
| 95 | + abstract protected function loadUri($uri); | |
| 96 | 96 | } | 
| @@ -22,25 +22,25 @@ | ||
| 22 | 22 | interface LoaderInterface | 
| 23 | 23 |  { | 
| 24 | 24 | |
| 25 | - /** | |
| 26 | - * Check whether the loader is able to load a given URI. | |
| 27 | - * | |
| 28 | - * @since 0.4.0 | |
| 29 | - * | |
| 30 | - * @param string $uri URI to check. | |
| 31 | - * | |
| 32 | - * @return bool Whether the loader can load the given URI. | |
| 33 | - */ | |
| 34 | - public static function canLoad($uri); | |
| 25 | + /** | |
| 26 | + * Check whether the loader is able to load a given URI. | |
| 27 | + * | |
| 28 | + * @since 0.4.0 | |
| 29 | + * | |
| 30 | + * @param string $uri URI to check. | |
| 31 | + * | |
| 32 | + * @return bool Whether the loader can load the given URI. | |
| 33 | + */ | |
| 34 | + public static function canLoad($uri); | |
| 35 | 35 | |
| 36 | - /** | |
| 37 | - * Load the configuration from an URI. | |
| 38 | - * | |
| 39 | - * @since 0.4.0 | |
| 40 | - * | |
| 41 | - * @param string $uri URI of the resource to load. | |
| 42 | - * | |
| 43 | - * @return array Data contained within the resource. | |
| 44 | - */ | |
| 45 | - public function load($uri); | |
| 36 | + /** | |
| 37 | + * Load the configuration from an URI. | |
| 38 | + * | |
| 39 | + * @since 0.4.0 | |
| 40 | + * | |
| 41 | + * @param string $uri URI of the resource to load. | |
| 42 | + * | |
| 43 | + * @return array Data contained within the resource. | |
| 44 | + */ | |
| 45 | + public function load($uri); | |
| 46 | 46 | } | 
| @@ -25,97 +25,97 @@ | ||
| 25 | 25 | class LoaderFactory | 
| 26 | 26 |  { | 
| 27 | 27 | |
| 28 | - /** | |
| 29 | - * Array of fully qualified class names of known loaders. | |
| 30 | - * | |
| 31 | - * @var array<string> | |
| 32 | - * | |
| 33 | - * @since 0.4.0 | |
| 34 | - */ | |
| 35 | - protected static $loaders = [ | |
| 36 | - 'BrightNucleus\Config\Loader\PHPLoader', | |
| 37 | - ]; | |
| 28 | + /** | |
| 29 | + * Array of fully qualified class names of known loaders. | |
| 30 | + * | |
| 31 | + * @var array<string> | |
| 32 | + * | |
| 33 | + * @since 0.4.0 | |
| 34 | + */ | |
| 35 | + protected static $loaders = [ | |
| 36 | + 'BrightNucleus\Config\Loader\PHPLoader', | |
| 37 | + ]; | |
| 38 | 38 | |
| 39 | - /** | |
| 40 | - * Array of instantiated loaders. | |
| 41 | - * | |
| 42 | - * These are lazily instantiated and added as needed. | |
| 43 | - * | |
| 44 | - * @var LoaderInterface[] | |
| 45 | - * | |
| 46 | - * @since 0.4.0 | |
| 47 | - */ | |
| 48 | - protected static $loaderInstances = []; | |
| 39 | + /** | |
| 40 | + * Array of instantiated loaders. | |
| 41 | + * | |
| 42 | + * These are lazily instantiated and added as needed. | |
| 43 | + * | |
| 44 | + * @var LoaderInterface[] | |
| 45 | + * | |
| 46 | + * @since 0.4.0 | |
| 47 | + */ | |
| 48 | + protected static $loaderInstances = []; | |
| 49 | 49 | |
| 50 | - /** | |
| 51 | - * Create a new Loader from an URI. | |
| 52 | - * | |
| 53 | - * @since 0.4.0 | |
| 54 | - * | |
| 55 | - * @param string $uri URI of the resource to create a loader for. | |
| 56 | - * | |
| 57 | - * @return LoaderInterface Loader that is able to load the given URI. | |
| 58 | - * @throws FailedToLoadConfigException If no suitable loader was found. | |
| 59 | - */ | |
| 60 | - public static function createFromUri($uri) | |
| 61 | -    { | |
| 62 | -        foreach (static::$loaders as $loader) { | |
| 63 | -            if ($loader::canLoad($uri)) { | |
| 64 | - return static::getLoader($loader); | |
| 65 | - } | |
| 66 | - } | |
| 50 | + /** | |
| 51 | + * Create a new Loader from an URI. | |
| 52 | + * | |
| 53 | + * @since 0.4.0 | |
| 54 | + * | |
| 55 | + * @param string $uri URI of the resource to create a loader for. | |
| 56 | + * | |
| 57 | + * @return LoaderInterface Loader that is able to load the given URI. | |
| 58 | + * @throws FailedToLoadConfigException If no suitable loader was found. | |
| 59 | + */ | |
| 60 | + public static function createFromUri($uri) | |
| 61 | +	{ | |
| 62 | +		foreach (static::$loaders as $loader) { | |
| 63 | +			if ($loader::canLoad($uri)) { | |
| 64 | + return static::getLoader($loader); | |
| 65 | + } | |
| 66 | + } | |
| 67 | 67 | |
| 68 | - throw new FailedToLoadConfigException( | |
| 69 | - sprintf( | |
| 70 | -                _('Could not find a suitable loader for URI "%1$s".'), | |
| 71 | - $uri | |
| 72 | - ) | |
| 73 | - ); | |
| 74 | - } | |
| 68 | + throw new FailedToLoadConfigException( | |
| 69 | + sprintf( | |
| 70 | +				_('Could not find a suitable loader for URI "%1$s".'), | |
| 71 | + $uri | |
| 72 | + ) | |
| 73 | + ); | |
| 74 | + } | |
| 75 | 75 | |
| 76 | - /** | |
| 77 | - * Get an instance of a specific loader. | |
| 78 | - * | |
| 79 | - * The loader is lazily instantiated if needed. | |
| 80 | - * | |
| 81 | - * @since 0.4.0 | |
| 82 | - * | |
| 83 | - * @param string $loaderClass Fully qualified class name of the loader to get. | |
| 84 | - * | |
| 85 | - * @return LoaderInterface Instance of the requested loader. | |
| 86 | - * @throws FailedToLoadConfigException If the loader class could not be instantiated. | |
| 87 | - */ | |
| 88 | - public static function getLoader($loaderClass) | |
| 89 | -    { | |
| 90 | -        try { | |
| 91 | -            if (! array_key_exists($loaderClass, static::$loaderInstances)) { | |
| 92 | - static::$loaderInstances[$loaderClass] = new $loaderClass; | |
| 93 | - } | |
| 76 | + /** | |
| 77 | + * Get an instance of a specific loader. | |
| 78 | + * | |
| 79 | + * The loader is lazily instantiated if needed. | |
| 80 | + * | |
| 81 | + * @since 0.4.0 | |
| 82 | + * | |
| 83 | + * @param string $loaderClass Fully qualified class name of the loader to get. | |
| 84 | + * | |
| 85 | + * @return LoaderInterface Instance of the requested loader. | |
| 86 | + * @throws FailedToLoadConfigException If the loader class could not be instantiated. | |
| 87 | + */ | |
| 88 | + public static function getLoader($loaderClass) | |
| 89 | +	{ | |
| 90 | +		try { | |
| 91 | +			if (! array_key_exists($loaderClass, static::$loaderInstances)) { | |
| 92 | + static::$loaderInstances[$loaderClass] = new $loaderClass; | |
| 93 | + } | |
| 94 | 94 | |
| 95 | - return static::$loaderInstances[$loaderClass]; | |
| 96 | -        } catch (Exception $exception) { | |
| 97 | - throw new FailedToLoadConfigException( | |
| 98 | - sprintf( | |
| 99 | -                    _('Could not instantiate the requested loader class "%1$s".'), | |
| 100 | - $loaderClass | |
| 101 | - ) | |
| 102 | - ); | |
| 103 | - } | |
| 104 | - } | |
| 95 | + return static::$loaderInstances[$loaderClass]; | |
| 96 | +		} catch (Exception $exception) { | |
| 97 | + throw new FailedToLoadConfigException( | |
| 98 | + sprintf( | |
| 99 | +					_('Could not instantiate the requested loader class "%1$s".'), | |
| 100 | + $loaderClass | |
| 101 | + ) | |
| 102 | + ); | |
| 103 | + } | |
| 104 | + } | |
| 105 | 105 | |
| 106 | - /** | |
| 107 | - * Register a new loader. | |
| 108 | - * | |
| 109 | - * @since 0.4.0 | |
| 110 | - * | |
| 111 | - * @param string $loader Fully qualified class name of a loader implementing LoaderInterface. | |
| 112 | - */ | |
| 113 | - public static function registerLoader($loader) | |
| 114 | -    { | |
| 115 | -        if (in_array($loader, static::$loaders, true)) { | |
| 116 | - return; | |
| 117 | - } | |
| 106 | + /** | |
| 107 | + * Register a new loader. | |
| 108 | + * | |
| 109 | + * @since 0.4.0 | |
| 110 | + * | |
| 111 | + * @param string $loader Fully qualified class name of a loader implementing LoaderInterface. | |
| 112 | + */ | |
| 113 | + public static function registerLoader($loader) | |
| 114 | +	{ | |
| 115 | +		if (in_array($loader, static::$loaders, true)) { | |
| 116 | + return; | |
| 117 | + } | |
| 118 | 118 | |
| 119 | - static::$loaders [] = $loader; | |
| 120 | - } | |
| 119 | + static::$loaders [] = $loader; | |
| 120 | + } | |
| 121 | 121 | } | 
| @@ -88,7 +88,7 @@ | ||
| 88 | 88 | public static function getLoader($loaderClass) | 
| 89 | 89 |      { | 
| 90 | 90 |          try { | 
| 91 | -            if (! array_key_exists($loaderClass, static::$loaderInstances)) { | |
| 91 | +            if ( ! array_key_exists($loaderClass, static::$loaderInstances)) { | |
| 92 | 92 | static::$loaderInstances[$loaderClass] = new $loaderClass; | 
| 93 | 93 | } | 
| 94 | 94 | |