Skip to content
This repository has been archived by the owner on Jan 8, 2020. It is now read-only.

Ship a StandaloneExtensionManager for Zend\Feed\Reader #7254

Merged
merged 4 commits into from
Feb 26, 2015

Conversation

weierophinney
Copy link
Member

In 2.2 or 2.3, we modified Zend\Feed to reduce the number of dependencies, and introduced a separated interface for the extension manager to allow using a non-ServiceManager variant (which allowed reducing dependencies).

This patch completes that work by introducing a StandaloneExtensionManager that provides the base capabilities necessary to serve the shipped feed and entry extensions. Zend\Feed\Reader\Reader::getExtensionManager() has been modified to lazy-load this class when no other extension manager has been set.

This implementation does NOT support registering custom extensions, as the ExtensionManagerInterface does not specify such capabilities. If users want to allow or support custom extensions, they would need to create their own implementation or extend the current implementation.

This patch replaces #7179 and will resolve #6419.

Essentially mimics the AbstractPluginManager, but does so as a
standalone implementation of ExtensionManagerInterface.
Modified getExtensionManager to lazyload a StandaloneExtensionManager
instead of ExtensionManager. This required an update to a test that was
testing integration of registerExtension with the EM instance itself.
@@ -0,0 +1,70 @@
<?php
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

missing license here...

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.

@ezimuel ezimuel merged commit 11eb8e4 into zendframework:develop Feb 26, 2015
@weierophinney weierophinney deleted the feature/6419 branch February 26, 2015 14:51
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants