Shanty_Mongo::getWriteConnection PHP Method

getWriteConnection() public static method

Get a write connection
public static getWriteConnection ( string $connectionGroupName = 'default' ) : Shanty_Mongo_Connection
$connectionGroupName string The connection group name
return Shanty_Mongo_Connection
    public static function getWriteConnection($connectionGroupName = 'default')
    {
        $connectionGroup = static::getConnectionGroup($connectionGroupName);
        if ($connectionGroupName == 'default' && count($connectionGroup->getMasters()) === 0) {
            // Add a connection to localhost if no connections currently exist for the default connection group
            $connectionGroup->addMaster(new Shanty_Mongo_Connection('127.0.0.1'));
        }
        if (!($connection = $connectionGroup->getWriteConnection($connectionGroupName))) {
            require_once 'Shanty/Mongo/Exception.php';
            throw new Shanty_Mongo_Exception("No write connection available for the '{$connectionGroupName}' connection group");
        }
        return $connection;
    }

Usage Example

Esempio n. 1
0
 /**
  * @depends testAddSlave
  */
 public function testGetReadConnection()
 {
     $connection = Shanty_Mongo::getReadConnection();
     $this->assertNotNull($connection);
     $this->assertEquals($connection, Shanty_Mongo::getWriteConnection());
     $connectionInfo = $connection->getConnectionInfo();
     $this->assertEquals('127.0.0.1', $connectionInfo['connectionString']);
     Shanty_Mongo::removeConnectionGroups();
     $connection = $this->getMock('Shanty_Mongo_Connection');
     Shanty_Mongo::addSlave($connection);
     $this->assertEquals($connection, Shanty_Mongo::getReadConnection());
     Shanty_Mongo::removeConnectionGroups();
     $connection = $this->getMock('Shanty_Mongo_Connection');
     Shanty_Mongo::addSlave($connection, 1, 'users');
     $this->assertEquals($connection, Shanty_Mongo::getReadConnection('users'));
 }
All Usage Examples Of Shanty_Mongo::getWriteConnection