Skip to content
Corex

WritableTableDataSource

Corex\Config\Data\WritableTableDataSource · class · Config layer

The managed-table source for a table that declared it may be written to (spec 074). Writability has to be a type difference rather than a flag, because the services ask instanceof WritableDataSource / instanceof MigrationAwareDataSource. A single class carrying a boolean would answer yes for every managed table — including the audit tables — which is the failure this design exists to make impossible. The registry builds this subclass only when the declaration asks for it, and {@see TableDataSource::capabilities()} derives its flags from both the declaration and the class, so the two cannot disagree.

__construct(ManagedTable $table, TableDataReader $reader, TableDataWriter $writer, TableMigrationRunner $migrations)

Section titled “__construct(ManagedTable $table, TableDataReader $reader, TableDataWriter $writer, TableMigrationRunner $migrations)”