public function getSchemaTables(Schema $schema, Config $config)
{
if ($this->tableSchemas !== null) {
return $this->tableSchemas;
}
/** @var $fieldManager FieldManager */
$fieldManager = $config->getFields();
$contentTypes = $this->getNormalisedContentTypes($config);
$tables = [];
foreach ($this->tables->keys() as $name) {
$contentType = $contentTypes[$name];
/** @var ContentType $table */
$table = $this->tables[$name];
$tables[$name] = $table->buildTable($schema, $name, $this->charset, $this->collate);
if (isset($contentType['fields']) && is_array($contentType['fields'])) {
$this->addContentTypeTableColumns($this->tables[$name], $tables[$name], $contentType['fields'], $fieldManager);
}
}
return $this->tableSchemas = $tables;
}