diff --git a/composer.json b/composer.json index 8ab3022..76ed836 100644 --- a/composer.json +++ b/composer.json @@ -28,7 +28,8 @@ "zendframework/zend-servicemanager": "^2.7.7 || ^3.1.1" }, "suggest": { - "zendframework/zend-config": "Allows loading configuration from XML, INI, YAML, and JSON files" + "zendframework/zend-config": "Allows loading configuration from XML, INI, YAML, and JSON files", + "zendframework/zend-config-aggregator-modulemanager": "Allows loading configuration from zend-mvc modules without ConfigProvider" }, "autoload": { "psr-4": { diff --git a/composer.lock b/composer.lock index 519acdf..0b4f3db 100644 --- a/composer.lock +++ b/composer.lock @@ -2130,16 +2130,16 @@ }, { "name": "zendframework/zend-servicemanager", - "version": "3.3.0", + "version": "3.3.2", "source": { "type": "git", "url": "https://github.com/zendframework/zend-servicemanager.git", - "reference": "c3036efb81f71bfa36cc9962ee5d4474f36581d0" + "reference": "9f35a104b8d4d3b32da5f4a3b6efc0dd62e5af42" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zendframework/zend-servicemanager/zipball/c3036efb81f71bfa36cc9962ee5d4474f36581d0", - "reference": "c3036efb81f71bfa36cc9962ee5d4474f36581d0", + "url": "https://api.github.com/repos/zendframework/zend-servicemanager/zipball/9f35a104b8d4d3b32da5f4a3b6efc0dd62e5af42", + "reference": "9f35a104b8d4d3b32da5f4a3b6efc0dd62e5af42", "shasum": "" }, "require": { @@ -2153,10 +2153,10 @@ "psr/container-implementation": "^1.0" }, "require-dev": { - "mikey179/vfsstream": "^1.6", + "mikey179/vfsstream": "^1.6.5", "ocramius/proxy-manager": "^1.0 || ^2.0", - "phpbench/phpbench": "^0.10.0", - "phpunit/phpunit": "^5.7 || ^6.0.6", + "phpbench/phpbench": "^0.13.0", + "phpunit/phpunit": "^5.7.25 || ^6.4.4", "zendframework/zend-coding-standard": "~1.0.0" }, "suggest": { @@ -2171,7 +2171,7 @@ "extra": { "branch-alias": { "dev-master": "3.3-dev", - "dev-develop": "3.4-dev" + "dev-develop": "4.0-dev" } }, "autoload": { @@ -2183,13 +2183,18 @@ "license": [ "BSD-3-Clause" ], - "homepage": "https://github.com/zendframework/zend-servicemanager", + "description": "Factory-Driven Dependency Injection Container", "keywords": [ + "PSR-11", + "ZendFramework", + "dependency-injection", + "di", + "dic", "service-manager", "servicemanager", "zf" ], - "time": "2017-03-01T22:08:02+00:00" + "time": "2018-01-29T16:48:37+00:00" } ], "aliases": [], diff --git a/docs/book/config-providers.md b/docs/book/config-providers.md index a809b29..dba28af 100644 --- a/docs/book/config-providers.md +++ b/docs/book/config-providers.md @@ -162,3 +162,29 @@ type based on file extension. Some config readers (in particular, YAML) may need additional dependencies; please refer to [the zend-config manual](https://docs.zendframework.com/zend-config/reader/) for more details. + + +### ZendModuleProvider + +To provide configurations from old Modules which were created for `zendframework/zend-mvc` applications, you can use the `ZendModuleProvider` which is provided by the [zendframework/zend-config-aggregator-modulemanager](https://github.com/zendframework/zend-config-aggregator-modulemanager) extension. +This provider would parse the module class for the `Module::getConfig` method aswell as for the `Module::getServiceConfig` (declared by `ServiceProviderInterface`). + +```bash +$ composer require zendframework/zend-config-aggregator-modulemanager +``` + +Once installed, you may use as many `ZendModuleProvider` instances as you need: + +```php +use Zend\ConfigAggregator\ConfigAggregator; +use Zend\ConfigAggregatorModuleManager\ZendModuleProvider; +use ACME; + +$aggregator = new ConfigAggregator([ + new ZendModuleProvider(new ACME\Module()), +]); +``` + +`ZendModuleProvider` accepts any object which represents the `zend-mvc`-Module. For more details, please refer +to [the zend-config-aggregator-modulemanager manual](https://docs.zendframework.com/zend-config-aggregator-modulemanager/) +for more details.