Added init command, improved plugin api

This commit is contained in:
2021-12-08 02:36:46 +01:00
parent 0c9fd2e892
commit 5af63f771a
4 changed files with 71 additions and 1 deletions

View File

@ -1,6 +1,33 @@
<?php
use Spark\SparkApplication;
abstract class SparkPlug
{
abstract public function load();
public function getPlugin(string $name)
{
return SparkApplication::$instance->getPluginManager()->getPlugin($name);
}
function get_resource(string $name) {
return SparkApplication::$instance->getResourceManager()->getNamedResource($name);
}
function read_config($file=null) {
if (!$file) return;
$abs = get_environment()->getConfigDirectory() . "/" . $file;
if (!file_exists($abs)) {
//fprintf(STDERR, "warning: Can't read config file %s\n", $abs);
return [];
}
return (array)json_decode(file_get_contents($abs), true);
}
function getProjectDirectory()
{
return SparkApplication::$instance->getEnvironment()->getProjectDirectory();
}
}