public static function getSlaveConnection($name)
    {
        if (!isset(self::$connectionMap[$name]['slave'])) {

            $slaveconfigs = isset(self::$configuration['datasources'][$name]['slaves']) ? self::$configuration['datasources'][$name]['slaves'] : null;

            if (empty($slaveconfigs)) {
                // no slaves configured for this datasource
                // fallback to the master connection
                self::$connectionMap[$name]['slave'] = self::getMasterConnection($name);
            } else {
                // Initialize a new slave
                if (isset($slaveconfigs['connection']['dsn'])) {
                    // only one slave connection configured
                    $conparams = $slaveconfigs['connection'];
                } else {
                    // more than one sleve connection configured
                    // pickup a random one
                    $randkey = array_rand($slaveconfigs['connection']);
                    $conparams = $slaveconfigs['connection'][$randkey];
                    if (empty($conparams)) {
                        throw new PropelException('No connection information in your runtime configuration file for SLAVE [' . $randkey . '] to datasource [' . $name . ']');
                    }
                }

                // initialize slave connection
                $con = Propel::initConnection($conparams, $name);
                self::$connectionMap[$name]['slave'] = $con;
            }
        } // if datasource slave not set

        return self::$connectionMap[$name]['slave'];
    }
public static function getSlaveConnection($name)
    {
        if (!isset(self::$connectionMap[$name]['slave'])) {

            $slaveconfigs = isset(self::$configuration['datasources'][$name]['slaves']) ? self::$configuration['datasources'][$name]['slaves'] : null;

            if (empty($slaveconfigs)) {
                // no slaves configured for this datasource
                // fallback to the master connection
                self::$connectionMap[$name]['slave'] = self::getMasterConnection($name);
            } else {
                // Initialize a new slave
                if (isset($slaveconfigs['connection']['dsn'])) {
                    // only one slave connection configured
                    $conparams = $slaveconfigs['connection'];
                } else {
                    // more than one sleve connection configured
                    // pickup a random one
                    $randkey = array_rand($slaveconfigs['connection']);
                    $conparams = $slaveconfigs['connection'][$randkey];
                    if (empty($conparams)) {
                        throw new PropelException('No connection information in your runtime configuration file for SLAVE [' . $randkey . '] to datasource [' . $name . ']');
                    }
                }

                // initialize slave connection
                $con = Propel::initConnection($conparams, $name);
                self::$connectionMap[$name]['slave'] = $con;
            }
        } // if datasource slave not set

        return self::$connectionMap[$name]['slave'];
    }
public static function getSlaveConnection ( $ name ) { if ( ! isset ( self :: $ connectionMap [ $ name ] [ 'slave' ] ) ) { $ slaveconfigs = isset ( self :: $ configuration [ 'datasources' ] [ $ name ] [ 'slaves' ] ) ? self :: $ configuration [ 'datasources' ] [ $ name ] [ 'slaves' ] : null ; if ( empty ( $ slaveconfigs ) ) { // no slaves configured for this datasource // fallback to the master connection self :: $ connectionMap [ $ name ] [ 'slave' ] = self :: getMasterConnection ( $ name ) ; } else { // Initialize a new slave if ( isset ( $ slaveconfigs [ 'connection' ] [ 'dsn' ] ) ) { // only one slave connection configured $ conparams = $ slaveconfigs [ 'connection' ] ; } else { // more than one sleve connection configured // pickup a random one $ randkey = array_rand ( $ slaveconfigs [ 'connection' ] ) ; $ conparams = $ slaveconfigs [ 'connection' ] [ $ randkey ] ; if ( empty ( $ conparams ) ) { throw new PropelException ( 'No connection information in your runtime configuration file for SLAVE [' . $ randkey . '] to datasource [' . $ name . ']' ) ; } } // initialize slave connection $ con = Propel :: initConnection ( $ conparams , $ name ) ; self :: $ connectionMap [ $ name ] [ 'slave' ] = $ con ; } } // if datasource slave not set return self :: $ connectionMap [ $ name ] [ 'slave' ] ; }
Gets an already-opened read PDO connection or opens a new one for passed-in db name.

@param string $name The datasource name that is used to look up the DSN
from the runtime configuation file. Empty name not allowed.

@return PDO A database connection

@throws PropelException - if connection cannot be configured or initialized.
Gets an already - opened read PDO connection or opens a new one for passed - in db name .