initializeFullTca($result); $result = $this->initializeTcaSchemata($result); return $this->initializeProcessedTca($result); } private function initializeFullTca(array $result): array { if (!empty($result['fullTca'] ?? null)) { return $result; } $result['fullTca'] = $GLOBALS['TCA']; return $result; } private function initializeTcaSchemata(array $result): array { if (!empty($result['tcaSchemata'] ?? null)) { return $result; } $result['tcaSchemata'] = $this->tcaSchemaFactory->all(); return $result; } private function initializeProcessedTca(array $result): array { if (empty($result['processedTca'])) { if ( !isset($result['fullTca'][$result['tableName']]) || !is_array($result['fullTca'][$result['tableName']]) ) { throw new \UnexpectedValueException( 'TCA for table ' . $result['tableName'] . ' not found', 1437914223 ); } $result['processedTca'] = $result['fullTca'][$result['tableName']]; } if (!is_array($result['processedTca']['columns'])) { throw new \UnexpectedValueException( 'No columns definition in TCA table ' . $result['tableName'], 1438594406 ); } return $result; } }