ocramius / ocra-service-manager
ZF2 服务管理器扩展,允许服务代理和依赖关系图生成
Requires
Requires (Dev)
- phpunit/phpunit: ~4.0
- squizlabs/php_codesniffer: 2.0.*@ALPHA
- zendframework/zend-developer-tools: 0.*
- zendframework/zendframework: ~2.2
Suggests
- zendframework/zend-developer-tools: Allows displaying service dependencies
README
OcraServiceManager 是一个 Zend Framework 2 模块,它装饰了 Zend\ServiceManager\ServiceManager
以允许跟踪服务之间的依赖关系。
它与 ZendDeveloperTools 集成,以在调试依赖关系之间发生的事情时提供帮助,允许您生成如下所示的依赖关系图
它经过 严格测试 并支持代理任何可能的对象类型。
如果您不知道代理是什么,您可以阅读我的关于 服务代理以及为什么我们需要它们 的文章。
状态
| 测试 | 发布 | 下载 | 依赖 | | ----- | -------- | ------- | ------------- | --------- | ------------ | | | |||
安装
安装 ocramius/ocra-service-manager
的推荐方法是使用 composer
php composer.phar require ocramius/ocra-service-manager
然后您可以通过将 OcraServiceManager
添加到 modules
键来在您的 config/application.config.php
中启用此模块
// ... 'modules' => array( // add OcraServiceManager and ZDT... 'ZendDeveloperTools', 'OcraServiceManager', // ... and then your stuff 'MyOwnModule', ),
请注意,您需要启用服务管理器日志和 ZendDeveloperTools 工具栏才能真正看到一些东西在工作。
配置
以下配置键默认提供,但您可以按需更改它们。您可以将文件 ocra-service-manager.local.php
放入您的 config/autoload
目录中,以启用或禁用服务管理实例的日志记录。
return array( 'ocra_service_manager' => array( // Turn this on to disable dependencies view in Zend Developer Tools 'logged_service_manager' => true, ), );
请注意,日志默认是启用的。
测试和贡献
请参阅 .travis.yml
的内容,了解如何针对 OcraServiceManager 测试您的补丁。
只有满足以下条件,才会接受任何拉取请求:
已知限制
- 安装该模块本身不会允许跟踪应用程序中的第一个服务管理事件。如果您需要实现这一功能,您将需要覆盖
Zend\Mvc\Application::init()
的实现。 - 如果您已启用授权模块,请注意,
OcraServiceManager
还注册了一个新的控制器'OcraServiceManager\Controller\YumlController'
以及一个新的路由'ocra_service_manager_yuml'
。为了看到依赖关系图,您需要在开发模式下启用对这两个的访问。