PluginClassLoader
in package
implements
PluginClassLocator
Plugin class locator interface
Table of Contents
Interfaces
- PluginClassLocator
- Plugin class locator interface
Properties
- $plugins : array<string|int, mixed>
- List of plugin name => class name pairs
- $staticMap : array<string|int, mixed>
- Static map allow global seeding of plugin loader
Methods
- __construct() : mixed
- Constructor
- addStaticMap() : void
- Add a static map of plugins
- getClassName() : string|false
- Return full class name for a named helper
- getIterator() : ArrayIterator
- Defined by IteratorAggregate
- getRegisteredPlugins() : array<string|int, mixed>|Traversable
- Get a list of all registered plugins
- isLoaded() : bool
- Whether or not a plugin by a specific name has been registered
- load() : string|false
- Load a helper via the name provided
- registerPlugin() : PluginClassLoader
- Register a class to a given short name
- registerPlugins() : PluginClassLoader
- Register many plugins at once
- unregisterPlugin() : PluginClassLoader
- Unregister a short name lookup
Properties
$plugins
List of plugin name => class name pairs
protected
array<string|int, mixed>
$plugins
= []
$staticMap
Static map allow global seeding of plugin loader
protected
static array<string|int, mixed>
$staticMap
= []
Methods
__construct()
Constructor
public
__construct([null|array<string|int, mixed>|Traversable $map = null ]) : mixed
Parameters
- $map : null|array<string|int, mixed>|Traversable = null
-
If provided, seeds the loader with a map
addStaticMap()
Add a static map of plugins
public
static addStaticMap(null|array<string|int, mixed>|Traversable $map) : void
A null value will clear the static map.
Parameters
- $map : null|array<string|int, mixed>|Traversable
Tags
getClassName()
Return full class name for a named helper
public
getClassName(string $name) : string|false
Parameters
- $name : string
Return values
string|falsegetIterator()
Defined by IteratorAggregate
public
getIterator() : ArrayIterator
Returns an instance of ArrayIterator, containing a map of all plugins
Attributes
Return values
ArrayIteratorgetRegisteredPlugins()
Get a list of all registered plugins
public
getRegisteredPlugins() : array<string|int, mixed>|Traversable
Return values
array<string|int, mixed>|TraversableisLoaded()
Whether or not a plugin by a specific name has been registered
public
isLoaded(string $name) : bool
Parameters
- $name : string
Return values
boolload()
Load a helper via the name provided
public
load(string $name) : string|false
Parameters
- $name : string
Return values
string|falseregisterPlugin()
Register a class to a given short name
public
registerPlugin(string $shortName, string $className) : PluginClassLoader
Parameters
- $shortName : string
- $className : string
Return values
PluginClassLoaderregisterPlugins()
Register many plugins at once
public
registerPlugins(string|array<string|int, mixed>|Traversable $map) : PluginClassLoader
If $map is a string, assumes that the map is the class name of a Traversable object (likely a ShortNameLocator); it will then instantiate this class and use it to register plugins.
If $map is an array or Traversable object, it will iterate it to register plugin names/classes.
For all other arguments, or if the string $map is not a class or not a Traversable class, an exception will be raised.
Parameters
- $map : string|array<string|int, mixed>|Traversable
Tags
Return values
PluginClassLoaderunregisterPlugin()
Unregister a short name lookup
public
unregisterPlugin(mixed $shortName) : PluginClassLoader
Parameters
- $shortName : mixed