connectionForReadPreference method
Implementation
Connection? connectionForReadPreference(ReadPreference readPreference) {
final manager = _connectionManager;
switch (readPreference.mode) {
case ReadPreferenceMode.primary:
return _masterConnectionVerifiedAnyState;
case ReadPreferenceMode.primaryPreferred:
return manager?.getMasterConnectionIfAvailable() ??
manager?.getSecondaryConnection();
case ReadPreferenceMode.secondary:
return manager?.getSecondaryConnection();
case ReadPreferenceMode.secondaryPreferred:
case ReadPreferenceMode.nearest:
return manager?.getSecondaryConnection() ??
manager?.getMasterConnectionIfAvailable();
}
}