public function execute(Request $request)
 {
     $key = $request->getKey();
     $definitionsMap = $request->getDefinitionsMap();
     $definition = $definitionsMap[$key];
     return $definition->getConcrete();
 }
 public function execute(Request $request)
 {
     $key = $request->getKey();
     $definitionsMap = $request->getDefinitionsMap();
     $definition = $definitionsMap[$key];
     $value = $definition->getConcrete();
     return $request->getContainer()->get($value);
 }
 public function build(Request $request)
 {
     $key = $request->getKey();
     $definitionsMap = $request->getDefinitionsMap();
     $definition = $definitionsMap->get($key);
     $builder = $this->getBuilder($definition->getType());
     return $builder->execute($request);
 }
 protected function handle(Request $request)
 {
     $key = $request->getKey();
     $definitions = $request->getDefinitionsMap();
     return $definitions->has($key);
 }