Skip to content
docsv0.13.1

PluginSchemaManagerInterface

Creates/drops the database schema for a plugin's entity classes. Takes EXPLICIT class names — never a path with a guessed namespace. The implementation resolves dependency order (foreign keys) itself and fails loudly on real errors; creating schema for classes whose tables already exist is a no-op for those classes, and dropping schema for classes whose tables are absent is likewise a no-op (idempotent both ways). Real errors — an unknown class, a failing connection — always throw.

PluginSchemaManagerInterface::createSchemaFor()

abstract public function createSchemaFor(array $entityClasses): void

Create the database schema for a plugin's entity classes.

Parameters

Parameters of createSchemaFor()
NameTypeDescription
$entityClasseslist<class-string>

PluginSchemaManagerInterface::dropSchemaFor()

abstract public function dropSchemaFor(array $entityClasses): void

Drop the database schema for a plugin's entity classes.

Parameters

Parameters of dropSchemaFor()
NameTypeDescription
$entityClasseslist<class-string>