/**
* Called when an adapter configuration is first accessed, this method sets the default
* configuration for session handling. While each configuration can use its own session class
* and options, this method initializes them to the default dependencies written into the class.
* For the session key name, the default value is set to the name of the configuration.
*
* @param string $name The name of the adapter configuration being accessed.
* @param array $config The user-specified configuration.
* @return array Returns an array that merges the user-specified configuration with the
* generated default values.
*/
protected static function _initConfig($name, $config)
{
$defaults = array('session' => array('key' => $name, 'class' => static::$_classes['session'], 'options' => array()));
$config = parent::_initConfig($name, $config) + $defaults;
$config['session'] += $defaults['session'];
return $config;
}