/** * @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); } }
/** * Uses Prooph\Processing\Environment to initialize with its defaults */ public static function initializeWithDefaultsIn(ConfigLocation $configLocation, ConfigWriter $configWriter) { $env = Environment::setUp(); $instance = new self(['processing' => array_merge($env->getConfig()->toArray(), ["connectors" => [], "js_ticker" => ['enabled' => false, 'interval' => 3]])], $configLocation); $configFilePath = $configLocation->toString() . DIRECTORY_SEPARATOR . self::$configFileName; if (file_exists($configFilePath)) { throw new \RuntimeException("Processing config already exists: " . $configFilePath); } $configWriter->writeNewConfigToDirectory($instance->toArray(), $configFilePath); $instance->recordThat(ProcessingConfigFileWasCreated::in($configLocation, self::$configFileName)); return $instance; }