protected function _getRow()
    {
        if (!isset($this->_row)) {
            $model = $this->getOwnModel();
            if (!$model) return null;
            $dbId = $this->getData()->dbId;
            $sharedDataClass = self::getFlag($this->getData()->componentClass, 'sharedDataClass');
            if ($sharedDataClass) {
                $component = $this->getData();
                while ($component) {
                    if (is_instance_of($component->componentClass, $sharedDataClass))
                        $dbId = $component->dbId;
                    $component = $component->parent;
                }
            }

            $this->_row = $model->getRow($dbId);
            if (!$this->_row) {
                $this->_row = $model->createRow();
                $this->_row->component_id = $dbId;
            }
        }
        return $this->_row;
    }