layoutPool = $layoutPool; $this->type = $type; parent::__construct($context, $components, $data); } /** * Get component name * * @return string */ public function getComponentName() { return static::NAME; } /** * Register component and build layout structure * * @inheritdoc */ public function prepare() { $this->layoutTypeObject = $this->layoutPool->create($this->type); $this->structure = $this->layoutTypeObject->build($this); parent::prepare(); } /** * @return array */ public function getStructure() { return $this->structure; } }