Alcaeus\MongoDbAdapter\Helper\ReadPreference::getReadPreference PHP Method

getReadPreference() public method

public getReadPreference ( ) : array
return array
    public function getReadPreference()
    {
        if ($this->readPreference === null) {
            $this->readPreference = new \MongoDB\Driver\ReadPreference(\MongoDB\Driver\ReadPreference::RP_PRIMARY);
        }
        $mode = $this->readPreference->getMode();
        switch ($mode) {
            case \MongoDB\Driver\ReadPreference::RP_PRIMARY_PREFERRED:
                $type = \MongoClient::RP_PRIMARY_PREFERRED;
                break;
            case \MongoDB\Driver\ReadPreference::RP_SECONDARY:
                $type = \MongoClient::RP_SECONDARY;
                break;
            case \MongoDB\Driver\ReadPreference::RP_SECONDARY_PREFERRED:
                $type = \MongoClient::RP_SECONDARY_PREFERRED;
                break;
            case \MongoDB\Driver\ReadPreference::RP_NEAREST:
                $type = \MongoClient::RP_NEAREST;
                break;
            default:
                $type = \MongoClient::RP_PRIMARY;
        }
        $readPreference = ['type' => $type];
        if ($this->readPreference->getTagSets() !== null && $this->readPreference->getTagSets() !== []) {
            $readPreference['tagsets'] = $this->readPreference->getTagSets();
        }
        return $readPreference;
    }