Exemplo n.º 1
0
 /**
  * @param CoreInterface $core
  */
 protected function register(CoreInterface $core)
 {
     $loop = $core->make('Surume\\Loop\\LoopInterface');
     $context = $core->make('Surume\\Core\\CoreInputContextInterface');
     $modelFactory = new ChannelModelFactory($context->alias(), $loop);
     $factory = new ChannelFactory($context->alias(), $modelFactory, $loop);
     $core->instance('Surume\\Channel\\ChannelModelFactoryInterface', $modelFactory);
     $core->factory('Surume\\Channel\\ChannelModelInterface', function () use($modelFactory) {
         return $modelFactory->create('Surume\\Channel\\Model\\Null\\NullModel');
     });
     $core->instance('Surume\\Channel\\ChannelFactoryInterface', $factory);
     $core->factory('Surume\\Channel\\ChannelBaseInterface', [$factory, 'create']);
     $core->factory('Surume\\Channel\\ChannelCompositeInterface', [$factory, 'create']);
 }
Exemplo n.º 2
0
 /**
  * @param CoreInterface $core
  */
 protected function register(CoreInterface $core)
 {
     $runtime = $core->make('Surume\\Runtime\\RuntimeInterface');
     $factory = new SolverFactory($runtime);
     $config = [];
     $core->instance('Surume\\Supervisor\\SolverFactoryInterface', $factory);
     $core->factory('Surume\\Supervisor\\SupervisorInterface', function (SolverFactoryInterface $passedFactory = null, $passedConfig = [], $passedRules = []) use($factory, $config) {
         return new Supervisor($passedFactory !== null ? $passedFactory : $factory, array_merge($config, $passedConfig), $passedRules);
     });
 }