/** * @param SqliteDbFile $sqliteDbFile * @param ConfigLocation $configLocation * @param ConfigWriter $configWriter * @return EventStoreConfig */ public static function initializeWithSqliteDb(SqliteDbFile $sqliteDbFile, ConfigLocation $configLocation, ConfigWriter $configWriter) { $config = ['proophessor' => ['event_store' => ['adapter' => ['type' => 'Prooph\\EventStore\\Adapter\\Doctrine\\DoctrineEventStoreAdapter', 'options' => ['connection' => ['driver' => 'pdo_sqlite', 'path' => $sqliteDbFile->toString()], 'serializer_adapter' => 'json']]]]]; $instance = new self($config, $configLocation); $configWriter->writeNewConfigToDirectory($config, $configLocation->toString() . DIRECTORY_SEPARATOR . $instance->configFileName()); $instance->recordThat(EventStoreWasInitialized::withSqliteDb($sqliteDbFile, $configLocation, $instance->configFileName())); return $instance; }
private function saveConnections($checkFile = false) { $path = $this->configLocation->toString() . DIRECTORY_SEPARATOR . self::FILE_NAME; $config = ['prooph.link.sqlconnector' => ['connections' => $this->connections->toArray()]]; if ($checkFile && !file_exists($path)) { $this->configWriter->writeNewConfigToDirectory($config, $path); } else { $this->configWriter->replaceConfigInDirectory($config, $path); } }
/** * Write config to file with the help of a config writer * * @param ConfigWriter $configWriter */ private function writeConfig(ConfigWriter $configWriter) { $configWriter->replaceConfigInDirectory($this->toArray(), $this->configLocation->toString() . DIRECTORY_SEPARATOR . self::$configFileName); }