lithium\core\Libraries::$_paths
Contains a cascading list of search path templates, indexed by base object type.
Used by Libraries::locate()
to perform service location. This allows new types of
objects (i.e. models, helpers, cache adapters and data sources) to be automatically
'discovered' when you register a new vendor library or plugin (using Libraries::add()
).
Because paths are checked in the order in which they appear, path templates should be
specified from most-specific to least-specific. See the locate()
method for usage examples.
Source
protected static $_paths = [
'adapter' => [
'{:library}\extensions\adapter\{:namespace}\{:class}\{:name}',
'{:library}\{:namespace}\{:class}\adapter\{:name}'
],
'command' => [
'{:library}\extensions\command\{:namespace}\{:class}\{:name}',
'{:library}\console\command\{:namespace}\{:class}\{:name}'
],
'controllers' => [
'{:library}\controllers\{:namespace}\{:class}\{:name}Controller'
],
'data' => [
'{:library}\extensions\data\{:namespace}\{:class}\{:name}',
'{:library}\data\{:namespace}\{:class}\adapter\{:name}',
'{:library}\data\{:namespace}\{:class}\{:name}',
'{:library}\data\{:class}\adapter\{:name}'
],
'helper' => [
'{:library}\extensions\helper\{:name}',
'{:library}\template\helper\{:name}'
],
'libraries' => [
'{:app}/libraries/{:name}',
'{:root}/{:name}'
],
'models' => [
'{:library}\models\{:name}'
],
'strategy' => [
'{:library}\extensions\strategy\{:namespace}\{:class}\{:name}',
'{:library}\extensions\strategy\{:class}\{:name}',
'{:library}\{:namespace}\{:class}\strategy\{:name}'
],
'socket' => [
'{:library}\extensions\net\socket\{:name}',
'{:library}\extensions\socket\{:name}',
'{:library}\net\socket\{:name}'
],
'test' => [
'{:library}\extensions\test\{:namespace}\{:class}\{:name}',
'{:library}\test\{:namespace}\{:class}\{:name}'
],
'tests' => [
'{:library}\tests\{:namespace}\{:class}\{:name}Test'
]
];