Skip to content
docsv0.13.1

FilePluginRegistry

JSON-file-backed registry: the config-driven activation source. A missing file is an empty registry; corrupt JSON is a loud error (never a silent empty). Every mutation persists immediately.

FilePluginRegistry::__construct()

public function __construct(string $filePath):

Parameters

Parameters of __construct()
NameTypeDescription
$filePathstring

FilePluginRegistry::enabledNames()

public function enabledNames(): array

Names of all enabled plugins; never throws — a broken store reads as [].

FilePluginRegistry::find()

public function find(string $name): ?Milpa\Plugin\Contracts\PluginRecord

Find one plugin's record by name, or null when not registered.

Parameters

Parameters of find()
NameTypeDescription
$namestring

FilePluginRegistry::installed()

public function installed(): array

All installed plugins.

FilePluginRegistry::installedAndEnabled()

public function installedAndEnabled(): array

All plugins that are both installed and enabled.

FilePluginRegistry::register()

public function register(Milpa\Plugin\Contracts\PluginRecord $record): void

Register a new plugin; throws if the name is already registered.

Parameters

Parameters of register()
NameTypeDescription
$recordMilpa\Plugin\Contracts\PluginRecord

FilePluginRegistry::save()

public function save(Milpa\Plugin\Contracts\PluginRecord $record): void

Overwrite an existing plugin's record; throws if the plugin is not registered.

Parameters

Parameters of save()
NameTypeDescription
$recordMilpa\Plugin\Contracts\PluginRecord

FilePluginRegistry::setEnabled()

public function setEnabled(string $name, bool $enabled): void

Flip a plugin's enabled flag; throws if the plugin is not registered.

Parameters

Parameters of setEnabled()
NameTypeDescription
$namestring
$enabledbool

FilePluginRegistry::unregister()

public function unregister(string $name): void

Remove a plugin from the registry; unknown name is a no-op.

Parameters

Parameters of unregister()
NameTypeDescription
$namestring

FilePluginRegistry::invalidateActivationCache()

public function invalidateActivationCache(): void

Invalidate materialized activation caches; the file IS the source of truth.