getParamsFromHello method
Implementation
void getParamsFromHello(HelloResult result) {
minWireVersion = result.minWireVersion;
maxWireVersion = result.maxWireVersion;
if (maxWireVersion >= 1) {
aggregationCursor = true;
authCommands = true;
}
if (maxWireVersion >= 2) {
writeCommands = true;
}
if (maxWireVersion >= 3) {
listCollections = true;
listIndexes = true;
}
if (maxWireVersion >= 6) {
supportsOpMsg = true;
}
if (filled(result.msg)) {
isShardedCluster = true;
} else if (filled(result.setName)) {
replicaSetName = result.setName;
replicaSetHosts = <String>[...?result.hosts];
} else {
isStandalone = true;
}
if (maxWireVersion >= 17) {
fcv = '6.0';
} else if (maxWireVersion >= 13) {
fcv = '5.0';
} else if (maxWireVersion >= 9) {
fcv = '4.4';
} else if (maxWireVersion >= 8) {
fcv = '4.2';
} else if (maxWireVersion > 6) {
// approximated
fcv = '4.0';
} else if (maxWireVersion > 5) {
fcv = '3.6';
} else if (maxWireVersion > 4) {
fcv = '3.4';
} else {
fcv = '3.2';
}
}