DataSift\Storyplayer\Injectables\StoryplayerConfigSupport::initStoryplayerConfigSupport PHP Method

initStoryplayerConfigSupport() public method

public initStoryplayerConfigSupport ( DataSift\Storyplayer\Injectables $injectables, $configFilename )
$injectables DataSift\Storyplayer\Injectables
    public function initStoryplayerConfigSupport(Injectables $injectables, $configFilename)
    {
        // shorthand
        $output = $injectables->output;
        // we start with an empty object
        $config = new StoryplayerConfig();
        try {
            // try to load our main config file
            $config->loadConfigFromFile($configFilename);
        } catch (E4xx_ConfigFileNotFound $e) {
            // there is no default config file
            //
            // it isn't fatal, but we do want to tell people about it
            $output->logCliWarning("storyplayer config file '{$configFilename}' not found or unreadable");
        } catch (E4xx_ConfigFileContainsInvalidJson $e) {
            // that is fatal
            $output->logCliError("storyplayer config file '{$configFilename}' is not valid JSON");
            exit(1);
        } catch (E4xx_StoryplayerConfigInvalid $e) {
            $output->logCliError($e->getMessage());
        } catch (Exception $e) {
            $output->logCliErrorWithException("unexpected error: " . $e->getMessage(), $e);
        }
        // special case - deprecated details in the config file
        if ($config->hasData('appSettings')) {
            $output->logCliWarning("'appSettings' in storyplayer config file is deprecated");
            $output->logCliWarning("please move to your system-under-test config file(s)");
        }
        // all done
        $this->storyplayerConfig = $config->getConfig();
    }
StoryplayerConfigSupport