Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Developer.php
Go to the documentation of this file.
1 <?php
9 
14 
16 {
20  private $interceptableValidator;
21 
27  public function __construct(
28  RelationsInterface $relations = null,
29  DefinitionInterface $definitions = null,
30  InterceptableValidator $interceptableValidator = null
31  ) {
32  $this->interceptableValidator = $interceptableValidator ?: new InterceptableValidator();
33  parent::__construct($relations, $definitions);
34  }
35 
40 
47  public function setInterceptionConfig(\Magento\Framework\Interception\ConfigInterface $interceptionConfig)
48  {
49  $this->interceptionConfig = $interceptionConfig;
50  }
51 
58  public function getInstanceType($instanceName)
59  {
60  $type = parent::getInstanceType($instanceName);
61  if ($this->interceptionConfig && $this->interceptionConfig->hasPlugins($instanceName)
62  && $this->interceptableValidator->validate($instanceName)
63  ) {
64  return $type . '\\Interceptor';
65  }
66  return $type;
67  }
68 
75  public function getOriginalInstanceType($instanceName)
76  {
77  return parent::getInstanceType($instanceName);
78  }
79 }
setInterceptionConfig(\Magento\Framework\Interception\ConfigInterface $interceptionConfig)
Definition: Developer.php:47
__construct(RelationsInterface $relations=null, DefinitionInterface $definitions=null, InterceptableValidator $interceptableValidator=null)
Definition: Developer.php:27
$type
Definition: item.phtml:13