Elgg  Version 2.2
 All Classes Namespaces Files Functions Variables Pages
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...
 
 __destruct ()
 Save the cache on object destruction. 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 11 of file AutoloadManager.php.

Constructor & Destructor Documentation

Elgg\AutoloadManager::__construct ( \Elgg\ClassLoader  $loader)

Constructor.

Parameters
\Elgg\ClassLoader$loaderClass loader object

Definition at line 42 of file AutoloadManager.php.

Elgg\AutoloadManager::__destruct ( )

Save the cache on object destruction.

Returns
void

Definition at line 202 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

Definition at line 56 of file AutoloadManager.php.

Elgg\AutoloadManager::deleteCache ( )

Delete the cache file.

Returns

Definition at line 171 of file AutoloadManager.php.

Elgg\AutoloadManager::getLoader ( )

Get the class loader.

Returns

Definition at line 183 of file AutoloadManager.php.

Elgg\AutoloadManager::getSpec ( )
protected

Some method that does something.

Definition at line 153 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 132 of file AutoloadManager.php.

Elgg\AutoloadManager::saveCache ( )

If necessary, save necessary state details.

Returns

Definition at line 115 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 76 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

Definition at line 105 of file AutoloadManager.php.

Elgg\AutoloadManager::setStorage ( \ElggCache  $storage)

Set the cache storage object.

Parameters
\ElggCache$storageCache object
Returns
void

Definition at line 193 of file AutoloadManager.php.

Member Data Documentation

Elgg\AutoloadManager::$altered = false
protected

Definition at line 30 of file AutoloadManager.php.

Elgg\AutoloadManager::$loader
protected

Definition at line 20 of file AutoloadManager.php.

Elgg\AutoloadManager::$scannedDirs = array()
protected

Definition at line 25 of file AutoloadManager.php.

Elgg\AutoloadManager::$storage = null
protected

Definition at line 35 of file AutoloadManager.php.

const Elgg\AutoloadManager::FILENAME = 'autoload_data.php'

Definition at line 13 of file AutoloadManager.php.

const Elgg\AutoloadManager::KEY_CLASSES = 'classes'

Definition at line 14 of file AutoloadManager.php.

const Elgg\AutoloadManager::KEY_SCANNED_DIRS = 'scannedDirs'

Definition at line 15 of file AutoloadManager.php.


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