Skip to content

Commit 236657b

Browse files
committed
PHPLIB-261: Omit default read and write concern from commands
1 parent 6e09154 commit 236657b

29 files changed

+445
-0
lines changed

src/Operation/Aggregate.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,14 @@ public function __construct($databaseName, $collectionName, array $pipeline, arr
182182
throw new InvalidArgumentException('"typeMap" option should not be used if "useCursor" is false');
183183
}
184184

185+
if (isset($options['readConcern']) && $options['readConcern']->isDefault()) {
186+
unset($options['readConcern']);
187+
}
188+
189+
if (isset($options['writeConcern']) && $options['writeConcern']->isDefault()) {
190+
unset($options['writeConcern']);
191+
}
192+
185193
$this->databaseName = (string) $databaseName;
186194
$this->collectionName = (string) $collectionName;
187195
$this->pipeline = $pipeline;

src/Operation/BulkWrite.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,10 @@ public function __construct($databaseName, $collectionName, array $operations, a
266266
throw InvalidArgumentException::invalidType('"writeConcern" option', $options['writeConcern'], 'MongoDB\Driver\WriteConcern');
267267
}
268268

269+
if (isset($options['writeConcern']) && $options['writeConcern']->isDefault()) {
270+
unset($options['writeConcern']);
271+
}
272+
269273
$this->databaseName = (string) $databaseName;
270274
$this->collectionName = (string) $collectionName;
271275
$this->operations = $operations;

src/Operation/Count.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,10 @@ public function __construct($databaseName, $collectionName, $filter = [], array
117117
throw InvalidArgumentException::invalidType('"skip" option', $options['skip'], 'integer');
118118
}
119119

120+
if (isset($options['readConcern']) && $options['readConcern']->isDefault()) {
121+
unset($options['readConcern']);
122+
}
123+
120124
$this->databaseName = (string) $databaseName;
121125
$this->collectionName = (string) $collectionName;
122126
$this->filter = $filter;

src/Operation/CreateCollection.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,10 @@ public function __construct($databaseName, $collectionName, array $options = [])
157157
throw InvalidArgumentException::invalidType('"writeConcern" option', $options['writeConcern'], 'MongoDB\Driver\WriteConcern');
158158
}
159159

160+
if (isset($options['writeConcern']) && $options['writeConcern']->isDefault()) {
161+
unset($options['writeConcern']);
162+
}
163+
160164
$this->databaseName = (string) $databaseName;
161165
$this->collectionName = (string) $collectionName;
162166
$this->options = $options;

src/Operation/CreateIndexes.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,10 @@ public function __construct($databaseName, $collectionName, array $indexes, arra
9696
throw InvalidArgumentException::invalidType('"writeConcern" option', $options['writeConcern'], 'MongoDB\Driver\WriteConcern');
9797
}
9898

99+
if (isset($options['writeConcern']) && $options['writeConcern']->isDefault()) {
100+
unset($options['writeConcern']);
101+
}
102+
99103
$this->databaseName = (string) $databaseName;
100104
$this->collectionName = (string) $collectionName;
101105
$this->options = $options;

src/Operation/Delete.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,10 @@ public function __construct($databaseName, $collectionName, $filter, $limit, arr
8383
throw InvalidArgumentException::invalidType('"writeConcern" option', $options['writeConcern'], 'MongoDB\Driver\WriteConcern');
8484
}
8585

86+
if (isset($options['writeConcern']) && $options['writeConcern']->isDefault()) {
87+
unset($options['writeConcern']);
88+
}
89+
8690
$this->databaseName = (string) $databaseName;
8791
$this->collectionName = (string) $collectionName;
8892
$this->filter = $filter;

src/Operation/Distinct.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,10 @@ public function __construct($databaseName, $collectionName, $fieldName, $filter
9393
throw InvalidArgumentException::invalidType('"readPreference" option', $options['readPreference'], 'MongoDB\Driver\ReadPreference');
9494
}
9595

96+
if (isset($options['readConcern']) && $options['readConcern']->isDefault()) {
97+
unset($options['readConcern']);
98+
}
99+
96100
$this->databaseName = (string) $databaseName;
97101
$this->collectionName = (string) $collectionName;
98102
$this->fieldName = (string) $fieldName;

src/Operation/DropCollection.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,10 @@ public function __construct($databaseName, $collectionName, array $options = [])
6969
throw InvalidArgumentException::invalidType('"writeConcern" option', $options['writeConcern'], 'MongoDB\Driver\WriteConcern');
7070
}
7171

72+
if (isset($options['writeConcern']) && $options['writeConcern']->isDefault()) {
73+
unset($options['writeConcern']);
74+
}
75+
7276
$this->databaseName = (string) $databaseName;
7377
$this->collectionName = (string) $collectionName;
7478
$this->options = $options;

src/Operation/DropDatabase.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,10 @@ public function __construct($databaseName, array $options = [])
6666
throw InvalidArgumentException::invalidType('"writeConcern" option', $options['writeConcern'], 'MongoDB\Driver\WriteConcern');
6767
}
6868

69+
if (isset($options['writeConcern']) && $options['writeConcern']->isDefault()) {
70+
unset($options['writeConcern']);
71+
}
72+
6973
$this->databaseName = (string) $databaseName;
7074
$this->options = $options;
7175
}

src/Operation/DropIndexes.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,10 @@ public function __construct($databaseName, $collectionName, $indexName, array $o
7575
throw InvalidArgumentException::invalidType('"writeConcern" option', $options['writeConcern'], 'MongoDB\Driver\WriteConcern');
7676
}
7777

78+
if (isset($options['writeConcern']) && $options['writeConcern']->isDefault()) {
79+
unset($options['writeConcern']);
80+
}
81+
7882
$this->databaseName = (string) $databaseName;
7983
$this->collectionName = (string) $collectionName;
8084
$this->indexName = $indexName;

0 commit comments

Comments
 (0)