ocramius/ocra-service-manager

该软件包已被弃用,不再维护。没有建议的替代软件包。

ZF2 服务管理器扩展,允许服务代理和依赖关系图生成

2.1.2 2015-06-30 15:45 UTC

This package is auto-updated.

Last update: 2022-02-01 12:22:31 UTC


README

OcraServiceManager 是一个 Zend Framework 2 模块,它装饰了 Zend\ServiceManager\ServiceManager 以允许跟踪服务之间的依赖关系。

它与 ZendDeveloperTools 集成,以在调试依赖关系之间发生的事情时提供帮助,允许您生成如下所示的依赖关系图

Example Dependency Graph generated by OcraServiceManager

它经过 严格测试 并支持代理任何可能的对象类型。

如果您不知道代理是什么,您可以阅读我的关于 服务代理以及为什么我们需要它们 的文章。

状态

| 测试 | 发布 | 下载 | 依赖 | | ----- | -------- | ------- | ------------- | --------- | ------------ | |构建状态 Scrutinizer 质量得分 代码覆盖率|最新稳定版本 最新不稳定版本|总下载量|依赖状态|

安装

安装 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 测试您的补丁。

只有满足以下条件,才会接受任何拉取请求:

  • 新引入代码的代码覆盖率 >= 90%(请在使用集成测试时使用 @coversNothing
  • 编码标准符合 PSR-2
  • 通常努力尊重 对象练习法

已知限制

  • 安装该模块本身不会允许跟踪应用程序中的第一个服务管理事件。如果您需要实现这一功能,您将需要覆盖 Zend\Mvc\Application::init() 的实现。
  • 如果您已启用授权模块,请注意,OcraServiceManager 还注册了一个新的控制器 'OcraServiceManager\Controller\YumlController' 以及一个新的路由 'ocra_service_manager_yuml'。为了看到依赖关系图,您需要在开发模式下启用对这两个的访问。