Elgg  Version 1.9
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
Elgg_AutoloadManager Class Reference

Public Member Functions

 __construct (Elgg_ClassLoader $loader)
 Constructor. More...
 
 addClasses ($dir)
 Add classes found in this directory to the class map and allow classes in subdirectories to be found by PSR-0 rules. More...
 
 setClassPath ($class, $path)
 Register the location of a class on the class map. More...
 
 saveCache ()
 If necessary, save necessary state details. More...
 
 loadCache ()
 Set the state of the manager from the cache. More...
 
 deleteCache ()
 Delete the cache file. More...
 
 getLoader ()
 Get the class loader. More...
 
 setStorage (ElggCache $storage)
 Set the cache storage object. More...
 

Public Attributes

const FILENAME = 'autoload_data.php'
 
const KEY_CLASSES = 'classes'
 
const KEY_SCANNED_DIRS = 'scannedDirs'
 

Protected Member Functions

 scanClassesDir ($dir)
 Scan (non-recursively) a /classes directory for PHP files to map directly to classes. More...
 
 getSpec ()
 Some method that does something. More...
 

Protected Attributes

 $loader
 
 $scannedDirs = array()
 
 $altered = false
 
 $storage = null
 

Detailed Description

Definition at line 10 of file AutoloadManager.php.

Constructor & Destructor Documentation

Elgg_AutoloadManager::__construct ( Elgg_ClassLoader  $loader)

Constructor.

Parameters
Elgg_ClassLoader$loaderClass loader object

Definition at line 41 of file AutoloadManager.php.

Member Function Documentation

Elgg_AutoloadManager::addClasses (   $dir)

Add classes found in this directory to the class map and allow classes in subdirectories to be found by PSR-0 rules.

We keep track of which dirs were scanned on previous requests so we don't need to rescan unless the cache is emptied.

Parameters
string$dirDirectory of classes
Returns
Elgg_AutoloadManager

Definition at line 55 of file AutoloadManager.php.

Elgg_AutoloadManager::deleteCache ( )

Delete the cache file.

Returns
Elgg_AutoloadManager

Definition at line 170 of file AutoloadManager.php.

Elgg_AutoloadManager::getLoader ( )

Get the class loader.

Returns
Elgg_ClassLoader

Definition at line 182 of file AutoloadManager.php.

Elgg_AutoloadManager::getSpec ( )
protected

Some method that does something.

Returns
bool|array

Definition at line 152 of file AutoloadManager.php.

Elgg_AutoloadManager::loadCache ( )

Set the state of the manager from the cache.

Returns
bool was the cache loaded?

Definition at line 131 of file AutoloadManager.php.

Elgg_AutoloadManager::saveCache ( )

If necessary, save necessary state details.

Returns
Elgg_AutoloadManager

Definition at line 114 of file AutoloadManager.php.

Elgg_AutoloadManager::scanClassesDir (   $dir)
protected

Scan (non-recursively) a /classes directory for PHP files to map directly to classes.

For BC with Elgg 1.8's autoloader we map these files directly, but besides this the autoloader is PSR-0 compatible.

Parameters
string$dirDirectory of classes
Returns
array

Definition at line 75 of file AutoloadManager.php.

Elgg_AutoloadManager::setClassPath (   $class,
  $path 
)

Register the location of a class on the class map.

Parameters
string$classClass name
string$pathPath of class file
Returns
Elgg_AutoloadManager

Definition at line 104 of file AutoloadManager.php.

Elgg_AutoloadManager::setStorage ( ElggCache  $storage)

Set the cache storage object.

Parameters
ElggCache$storageCache object
Returns
void

Definition at line 192 of file AutoloadManager.php.

Member Data Documentation

Elgg_AutoloadManager::$altered = false
protected

Definition at line 29 of file AutoloadManager.php.

Elgg_AutoloadManager::$loader
protected

Definition at line 19 of file AutoloadManager.php.

Elgg_AutoloadManager::$scannedDirs = array()
protected

Definition at line 24 of file AutoloadManager.php.

Elgg_AutoloadManager::$storage = null
protected

Definition at line 34 of file AutoloadManager.php.

const Elgg_AutoloadManager::FILENAME = 'autoload_data.php'

Definition at line 12 of file AutoloadManager.php.

const Elgg_AutoloadManager::KEY_CLASSES = 'classes'

Definition at line 13 of file AutoloadManager.php.

const Elgg_AutoloadManager::KEY_SCANNED_DIRS = 'scannedDirs'

Definition at line 14 of file AutoloadManager.php.


The documentation for this class was generated from the following file: