Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[

Zend Framework: Zend_Acl dynamic loading Component Proposal

Proposed Component Name Zend_Acl dynamic loading
Developer Notes http://framework.zend.com/wiki/display/ZFDEV/Zend_Acl dynamic loading
Proposers Aldemar Bernal
Revision 1.0 - 17 November 2007: Proporsal created.
1.1 - 21 January 2008: UCs Created. (wiki revision: 30)

Table of Contents

1. Overview

Zend_Acl dynamic loading isn't meant to be a replacement of the current good implementation of Zend_Acl, it is just an update proporsal based on get better performance in the component in medium/large ACL implementations.

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

  • This update will boost performance in medium/large Acl Implementations.
  • This update will allow the component to load only the needed Roles/Resources.

4. Dependencies on Other Framework Components

  • Zend_Acl
  • Zend_Role
  • Zend_Resource
  • Zend_Acl_Exception
  • Zend_Config

5. Theory of Operation

This update doesn't make any change of current Zend_Acl implementations, it includes only a new method called registerLoader in the Zend_Acl component and a new abstract class called Zend_Acl_Loader_Abstract. The main goal of this new feature is to be able to load dynamically Roles and Resources using an instance of the abstract class. Here an example is given to make clearer the new functionality and its use:

My/AclLoader.php:

At bootstrap:

So, as you could see in the example above, the Loader class will allow to avoid the problem of loading all ACL at once in bootstrap, and will help to only load the data needed, the results are better response times and less memory usage.

6. Milestones / Tasks

  • Milestone 1: [DONE] Create ZF Wiki info.
  • Milestone 2: Working prototype and some examples [DONE] (not yet uploaded).
  • Milestone 3: Working prototype checked into the incubator supporting use cases.
  • Milestone 4: Unit tests exist, work, and are checked into SVN.
  • Milestone 5: Initial documentation exists.

7. Class Index

  • Zend_Acl
  • Zend_Acl_Loader_Abstract

8. Use Cases

9. Class Skeletons

]]></ac:plain-text-body></ac:macro>

Labels:
None
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.