public function __construct(RuntimeContainerInterface $runtime, ChannelInterface $channel, SystemInterface $system, FilesystemInterface $fs)
{
$this->runtime = $runtime;
$this->channel = $channel;
$this->system = $system;
$this->fs = $fs;
$core = $runtime->getCore();
$this->scriptRoot = $core->getDataPath() . '/autorun';
$this->fsPath = $core->getDataDir() . '/storage/project/project.json';
$this->projectRoot = 'Main';
$this->projectName = 'Main';
$this->data = $this->getEmptyStorage();
try {
$this->data = $this->selectFromStorage();
} catch (Error $ex) {
throw new InstantiationException('ProjectManager could not be initialized.', $ex);
} catch (Exception $ex) {
throw new InstantiationException('ProjectManager could not be initialized.', $ex);
}
}